github.com/manicqin/nomad@v0.9.5/ui/mirage/factories/deployment.js (about)

     1  import { Factory, trait } from 'ember-cli-mirage';
     2  import faker from 'nomad-ui/mirage/faker';
     3  import { provide } from '../utils';
     4  
     5  const UUIDS = provide(100, faker.random.uuid.bind(faker.random));
     6  const DEPLOYMENT_STATUSES = ['running', 'successful', 'paused', 'failed', 'cancelled'];
     7  
     8  export default Factory.extend({
     9    id: i => (i / 100 >= 1 ? `${UUIDS[i]}-${i}` : UUIDS[i]),
    10  
    11    jobId: null,
    12    versionNumber: null,
    13  
    14    status: () => faker.helpers.randomize(DEPLOYMENT_STATUSES),
    15    statusDescription: () => faker.lorem.sentence(),
    16  
    17    notActive: trait({
    18      status: faker.helpers.randomize(DEPLOYMENT_STATUSES.without('running')),
    19    }),
    20  
    21    active: trait({
    22      status: 'running',
    23    }),
    24  
    25    afterCreate(deployment, server) {
    26      const job = server.db.jobs.find(deployment.jobId);
    27      const groups = job.taskGroupIds.map(id =>
    28        server.create('deployment-task-group-summary', {
    29          deployment,
    30          name: server.db.taskGroups.find(id).name,
    31          desiredCanaries: 1,
    32          promoted: false,
    33        })
    34      );
    35  
    36      deployment.update({
    37        deploymentTaskGroupSummaryIds: groups.mapBy('id'),
    38      });
    39    },
    40  });