open-nomad/ui/app/models/storage-node.js
2023-04-10 15:36:59 +00:00

31 lines
824 B
JavaScript

/**
* Copyright (c) HashiCorp, Inc.
* SPDX-License-Identifier: MPL-2.0
*/
import { attr, belongsTo } from '@ember-data/model';
import Fragment from 'ember-data-model-fragments/fragment';
import { fragmentOwner } from 'ember-data-model-fragments/attributes';
export default class StorageNode extends Fragment {
@fragmentOwner() plugin;
@belongsTo('node') node;
@attr('string') allocID;
@attr('string') provider;
@attr('string') version;
@attr('boolean') healthy;
@attr('string') healthDescription;
@attr('date') updateTime;
@attr('boolean') requiresControllerPlugin;
@attr('boolean') requiresTopologies;
@attr() nodeInfo;
// Fragments can't have relationships, so provider a manual getter instead.
async getAllocation() {
return this.store.findRecord('allocation', this.allocID);
}
}