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 }