feat: 🎸 add initial modeling for host sets
This commit is contained in:
5 files changed
+78
-1
No files matched your search
@@ -0,0 +1,42 @@
|
||||
import BaseModel from '../../models/base';
|
||||
import { attr } from '@ember-data/model';
|
||||
|
||||
/**
|
||||
* HostSet is a collection of Hosts created and managed by a HostCatalog
|
||||
*/
|
||||
export default class GeneratedHostSetModel extends BaseModel {
|
||||
|
||||
// =attributes
|
||||
|
||||
@attr('string', {
|
||||
description: 'The type of the resource, to help differentiate schemas'
|
||||
}) type;
|
||||
|
||||
@attr('string', {
|
||||
description: 'Optional name for identification purposes'
|
||||
}) name;
|
||||
|
||||
@attr('string', {
|
||||
description: 'Optional user-set description for identification purposes'
|
||||
}) description;
|
||||
|
||||
@attr('date', {
|
||||
description: 'The time this resource was created\nOutput only.',
|
||||
readOnly: true
|
||||
}) created_time;
|
||||
|
||||
@attr('date', {
|
||||
description: 'The time this resource was last updated\nOutput only.',
|
||||
readOnly: true
|
||||
}) updated_time;
|
||||
|
||||
@attr('number', {
|
||||
description: 'Current version number of this resource.',
|
||||
})
|
||||
version;
|
||||
|
||||
@attr('number', {
|
||||
description: 'The total count of hosts in this host set\nOutput only.'
|
||||
}) size;
|
||||
|
||||
}
|
||||
@@ -1,3 +1,11 @@
|
||||
import GeneratedHostCatalogModel from '../generated/models/host-catalog';
|
||||
import { hasMany } from '@ember-data/model';
|
||||
|
||||
export default class HostCatalogModel extends GeneratedHostCatalogModel { }
|
||||
export default class HostCatalogModel extends GeneratedHostCatalogModel {
|
||||
|
||||
/**
|
||||
* @type {HostSetModel[]}
|
||||
*/
|
||||
@hasMany('host-set') hostSets;
|
||||
|
||||
}
|
||||
@@ -0,0 +1,13 @@
|
||||
import GeneratedHostSetModel from '../generated/models/host-set';
|
||||
import { belongsTo } from '@ember-data/model';
|
||||
|
||||
export default class HostSetModel extends GeneratedHostSetModel {
|
||||
|
||||
// =relationships
|
||||
|
||||
/**
|
||||
* @type {HostCatalogModel}
|
||||
*/
|
||||
@belongsTo('host-catalog') hostCatalog;
|
||||
|
||||
}
|
||||
@@ -0,0 +1 @@
|
||||
export { default } from 'api/models/host-set';
|
||||
@@ -0,0 +1,13 @@
|
||||
import { module, test } from 'qunit';
|
||||
import { setupTest } from 'ember-qunit';
|
||||
|
||||
module('Unit | Model | host set', function(hooks) {
|
||||
setupTest(hooks);
|
||||
|
||||
// Replace this with your real tests.
|
||||
test('it exists', function(assert) {
|
||||
let store = this.owner.lookup('service:store');
|
||||
let model = store.createRecord('host-set', {});
|
||||
assert.ok(model);
|
||||
});
|
||||
});
|
||||
Reference in new issue
Block a user