open-nomad/ui/app/models/evaluation.js

30 lines
887 B
JavaScript

import { bool, equal } from '@ember/object/computed';
import Model from 'ember-data/model';
import attr from 'ember-data/attr';
import { belongsTo } from 'ember-data/relationships';
import { fragmentArray } from 'ember-data-model-fragments/attributes';
import shortUUIDProperty from '../utils/properties/short-uuid';
export default Model.extend({
shortId: shortUUIDProperty('id'),
priority: attr('number'),
type: attr('string'),
triggeredBy: attr('string'),
status: attr('string'),
statusDescription: attr('string'),
failedTGAllocs: fragmentArray('placement-failure', { defaultValue: () => [] }),
hasPlacementFailures: bool('failedTGAllocs.length'),
isBlocked: equal('status', 'blocked'),
job: belongsTo('job'),
modifyIndex: attr('number'),
modifyTime: attr('date'),
createIndex: attr('number'),
createTime: attr('date'),
waitUntil: attr('date'),
});