github.com/hernad/nomad@v1.6.112/ui/app/serializers/task-group.js (about)

     1  /**
     2   * Copyright (c) HashiCorp, Inc.
     3   * SPDX-License-Identifier: MPL-2.0
     4   */
     5  
     6  import { copy } from 'ember-copy';
     7  import ApplicationSerializer from './application';
     8  import classic from 'ember-classic-decorator';
     9  
    10  @classic
    11  export default class TaskGroup extends ApplicationSerializer {
    12    arrayNullOverrides = ['Services'];
    13    mapToArray = ['Volumes'];
    14  
    15    normalize(typeHash, hash) {
    16      if (hash.Services) {
    17        hash.Services.forEach((service) => {
    18          service.GroupName = hash.Name;
    19        });
    20      }
    21      // Provide EphemeralDisk to each task
    22      hash.Tasks.forEach((task) => {
    23        task.EphemeralDisk = copy(hash.EphemeralDisk);
    24      });
    25  
    26      hash.ReservedEphemeralDisk = hash.EphemeralDisk.SizeMB;
    27  
    28      return super.normalize(typeHash, hash);
    29    }
    30  }