2018-05-23 17:39:43 +00:00
|
|
|
import { gt, alias } from '@ember/object/computed';
|
2017-09-19 14:47:10 +00:00
|
|
|
import Fragment from 'ember-data-model-fragments/fragment';
|
|
|
|
import attr from 'ember-data/attr';
|
|
|
|
import { fragmentOwner } from 'ember-data-model-fragments/attributes';
|
|
|
|
|
|
|
|
export default Fragment.extend({
|
|
|
|
deployment: fragmentOwner(),
|
|
|
|
|
|
|
|
name: attr('string'),
|
|
|
|
|
|
|
|
autoRevert: attr('boolean'),
|
|
|
|
promoted: attr('boolean'),
|
2017-12-15 21:39:18 +00:00
|
|
|
requiresPromotion: gt('desiredCanaries', 0),
|
2017-09-19 14:47:10 +00:00
|
|
|
|
2018-05-23 17:39:43 +00:00
|
|
|
// The list of canary allocation IDs
|
|
|
|
// hasMany is not supported in fragments
|
|
|
|
placedCanaryAllocations: attr({ defaultValue: () => [] }),
|
|
|
|
|
|
|
|
placedCanaries: alias('placedCanaryAllocations.length'),
|
2017-09-19 14:47:10 +00:00
|
|
|
desiredCanaries: attr('number'),
|
|
|
|
desiredTotal: attr('number'),
|
|
|
|
placedAllocs: attr('number'),
|
|
|
|
healthyAllocs: attr('number'),
|
|
|
|
unhealthyAllocs: attr('number'),
|
2018-06-07 00:35:18 +00:00
|
|
|
|
|
|
|
requireProgressBy: attr('date'),
|
2017-09-19 14:47:10 +00:00
|
|
|
});
|