* empty commit
* Add missing copyright headers
* chore: 🤖 update copywrite config file with correct year
* Add missing copyright headers
* empty commit (gh action merge checks are stuck)
279 lines
5.2 KiB
JavaScript
279 lines
5.2 KiB
JavaScript
/**
|
|
* Copyright IBM Corp. 2021, 2026
|
|
* SPDX-License-Identifier: BUSL-1.1
|
|
*/
|
|
|
|
import BaseModel from '../../models/base';
|
|
import { attr } from '@ember-data/model';
|
|
|
|
/**
|
|
* HostCatalog manages Hosts and HostSets
|
|
*/
|
|
export default class GeneratedHostCatalogModel 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('boolean', {
|
|
description: 'Whether the catalog is disabled',
|
|
})
|
|
disabled;
|
|
|
|
@attr('number', {
|
|
description: 'Current version number of this resource.',
|
|
})
|
|
version;
|
|
|
|
@attr({
|
|
description: 'Plugin information for this resource.',
|
|
readOnly: true,
|
|
})
|
|
plugin;
|
|
|
|
// AWS, Azure & GCP
|
|
|
|
@attr('boolean', {
|
|
for: {
|
|
type: 'plugin',
|
|
name: ['aws', 'azure', 'gcp'],
|
|
},
|
|
isNestedAttribute: true,
|
|
description: '',
|
|
})
|
|
disable_credential_rotation;
|
|
|
|
// AWS and GCP specific
|
|
|
|
@attr('string', {
|
|
for: {
|
|
type: 'plugin',
|
|
name: ['aws', 'azure', 'gcp'],
|
|
},
|
|
description:
|
|
'An expression used to filter the workers that have network access to a service that is hosting the external object store.',
|
|
})
|
|
worker_filter;
|
|
|
|
// AWS specific
|
|
|
|
@attr('string', {
|
|
for: {
|
|
type: 'plugin',
|
|
name: 'aws',
|
|
},
|
|
isNestedAttribute: true,
|
|
description: '',
|
|
})
|
|
region;
|
|
|
|
// AWS static credentials
|
|
@attr('string', {
|
|
for: {
|
|
type: 'plugin',
|
|
name: 'aws',
|
|
credentialType: 'static-credential',
|
|
},
|
|
isNestedSecret: true,
|
|
description: '',
|
|
})
|
|
access_key_id;
|
|
|
|
@attr('string', {
|
|
for: {
|
|
type: 'plugin',
|
|
name: 'aws',
|
|
credentialType: 'static-credential',
|
|
},
|
|
isNestedSecret: true,
|
|
description: '',
|
|
})
|
|
secret_access_key;
|
|
|
|
// AWS dynamic credentials
|
|
@attr('string', {
|
|
for: {
|
|
type: 'plugin',
|
|
name: 'aws',
|
|
credentialType: 'dynamic-credential',
|
|
},
|
|
isNestedAttribute: true,
|
|
description: 'The role ARN to use.',
|
|
})
|
|
role_arn;
|
|
|
|
@attr('string', {
|
|
for: {
|
|
type: 'plugin',
|
|
name: 'aws',
|
|
credentialType: 'dynamic-credential',
|
|
},
|
|
isNestedAttribute: true,
|
|
description: 'The role external ID to use.',
|
|
})
|
|
role_external_id;
|
|
|
|
@attr('string', {
|
|
for: {
|
|
type: 'plugin',
|
|
name: 'aws',
|
|
credentialType: 'dynamic-credential',
|
|
},
|
|
isNestedAttribute: true,
|
|
description: 'The role session to use.',
|
|
})
|
|
role_session_name;
|
|
|
|
@attr('object-as-array', {
|
|
for: {
|
|
type: 'plugin',
|
|
name: 'aws',
|
|
credentialType: 'dynamic-credential',
|
|
},
|
|
isNestedAttribute: true,
|
|
description: 'The role tags to use.',
|
|
})
|
|
role_tags;
|
|
|
|
// Azure specific
|
|
|
|
@attr('string', {
|
|
for: {
|
|
type: 'plugin',
|
|
name: 'azure',
|
|
},
|
|
isNestedAttribute: true,
|
|
description: '',
|
|
})
|
|
tenant_id;
|
|
|
|
@attr('string', {
|
|
for: {
|
|
type: 'plugin',
|
|
name: 'azure',
|
|
},
|
|
isNestedAttribute: true,
|
|
description: '',
|
|
})
|
|
client_id;
|
|
|
|
@attr('string', {
|
|
for: {
|
|
type: 'plugin',
|
|
name: 'azure',
|
|
},
|
|
isNestedAttribute: true,
|
|
description: '',
|
|
})
|
|
subscription_id;
|
|
|
|
@attr('string', {
|
|
for: {
|
|
type: 'plugin',
|
|
name: 'azure',
|
|
},
|
|
isNestedSecret: true,
|
|
description: '',
|
|
})
|
|
secret_id;
|
|
|
|
@attr('string', {
|
|
for: {
|
|
type: 'plugin',
|
|
name: 'azure',
|
|
},
|
|
isNestedSecret: true,
|
|
description: '',
|
|
})
|
|
secret_value;
|
|
|
|
// GCP specific
|
|
@attr('string', {
|
|
for: {
|
|
type: 'plugin',
|
|
name: 'gcp',
|
|
},
|
|
isNestedAttribute: true,
|
|
description: 'The project ID associated with the service account.',
|
|
})
|
|
project_id;
|
|
|
|
@attr('string', {
|
|
for: {
|
|
type: 'plugin',
|
|
name: 'gcp',
|
|
},
|
|
isNestedAttribute: true,
|
|
description: 'The deployment area within a region.',
|
|
})
|
|
zone;
|
|
|
|
@attr('string', {
|
|
for: {
|
|
type: 'plugin',
|
|
name: 'gcp',
|
|
},
|
|
isNestedAttribute: true,
|
|
description:
|
|
'The email address associated with the service account. The email address used to uniquely identify the service account. It is required for authentication and authorization.',
|
|
})
|
|
client_email;
|
|
|
|
@attr('string', {
|
|
for: {
|
|
type: 'plugin',
|
|
name: 'gcp',
|
|
},
|
|
isNestedAttribute: true,
|
|
description:
|
|
'The unique identifier for the service account that will be impersonated.',
|
|
})
|
|
target_service_account_id;
|
|
|
|
@attr('string', {
|
|
for: {
|
|
type: 'plugin',
|
|
name: 'gcp',
|
|
},
|
|
description:
|
|
'The ID of the private key used to sign the JWT and authentication.',
|
|
isNestedSecret: true,
|
|
})
|
|
private_key_id;
|
|
|
|
@attr('string', {
|
|
for: {
|
|
type: 'plugin',
|
|
name: 'gcp',
|
|
},
|
|
description:
|
|
'The private key used to sign the JWT and obtain a OAuth 2.0 access token.',
|
|
isNestedSecret: true,
|
|
})
|
|
private_key;
|
|
}
|