github.com/Ilhicas/nomad@v1.0.4-0.20210304152020-e86851182bc3/ui/app/models/task.js (about)

     1  import { attr } from '@ember-data/model';
     2  import Fragment from 'ember-data-model-fragments/fragment';
     3  import { fragment, fragmentArray, fragmentOwner } from 'ember-data-model-fragments/attributes';
     4  import { computed } from '@ember/object';
     5  
     6  export default class Task extends Fragment {
     7    @fragmentOwner() taskGroup;
     8  
     9    @attr('string') name;
    10    @attr('string') driver;
    11    @attr('string') kind;
    12  
    13    @fragment('lifecycle') lifecycle;
    14  
    15    @computed('lifecycle', 'lifecycle.sidecar')
    16    get lifecycleName() {
    17      if (this.lifecycle) {
    18        const { hook, sidecar } = this.lifecycle;
    19  
    20        if (hook === 'prestart') {
    21          return sidecar ? 'prestart-sidecar' : 'prestart-ephemeral';
    22        } else if (hook === 'poststart') {
    23          return sidecar ? 'poststart-sidecar' : 'poststart-ephemeral';
    24        } else if (hook === 'poststop') {
    25          return 'poststop';
    26        }
    27      }
    28  
    29      return 'main';
    30    }
    31  
    32    @attr('number') reservedMemory;
    33    @attr('number') reservedCPU;
    34    @attr('number') reservedDisk;
    35    @attr('number') reservedEphemeralDisk;
    36  
    37    @fragmentArray('volume-mount', { defaultValue: () => [] }) volumeMounts;
    38  }