Files
threshold-ui/addons/api/addon/generated/models/host-catalog.js
T

278 lines
5.2 KiB
JavaScript
Raw Normal View History

/**
* Copyright (c) HashiCorp, Inc.
* SPDX-License-Identifier: BUSL-1.1
*/
2020-06-04 16:32:16 -04:00
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', {
2020-09-16 14:29:02 -04:00
description: 'The type of the resource, to help differentiate schemas',
})
type;
2020-06-04 16:32:16 -04:00
@attr('string', {
2020-09-16 14:29:02 -04:00
description: 'Optional name for identification purposes',
})
name;
2020-06-04 16:32:16 -04:00
@attr('string', {
2020-09-16 14:29:02 -04:00
description: 'Optional user-set description for identification purposes',
})
description;
2020-06-04 16:32:16 -04:00
@attr('date', {
description: 'The time this resource was created\nOutput only.',
2020-09-16 14:29:02 -04:00
readOnly: true,
})
created_time;
2020-06-04 16:32:16 -04:00
@attr('date', {
description: 'The time this resource was last updated\nOutput only.',
2020-09-16 14:29:02 -04:00
readOnly: true,
})
updated_time;
2020-06-04 16:32:16 -04:00
@attr('boolean', {
2020-09-16 14:29:02 -04:00
description: 'Whether the catalog is disabled',
})
disabled;
2020-06-04 16:32:16 -04:00
2020-08-21 08:55:07 -04:00
@attr('number', {
description: 'Current version number of this resource.',
})
version;
2022-01-11 15:34:11 -08:00
2022-01-12 15:34:12 -08:00
@attr({
2022-01-11 15:34:11 -08:00
description: 'Plugin information for this resource.',
readOnly: true,
})
plugin;
2022-01-20 08:32:13 -08:00
// AWS, Azure & GCP
2022-01-20 16:47:46 -05:00
2022-01-20 08:32:13 -08:00
@attr('boolean', {
for: {
type: 'plugin',
name: ['aws', 'azure', 'gcp'],
},
2022-01-20 08:32:13 -08:00
isNestedAttribute: true,
description: '',
})
disable_credential_rotation;
2025-01-09 14:54:04 -08:00
// AWS and GCP specific
2022-01-20 16:47:46 -05:00
@attr('string', {
for: {
type: 'plugin',
2025-01-09 14:54:04 -08:00
name: ['aws', '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;
2025-01-09 14:54:04 -08:00
// AWS specific
2022-01-20 08:32:13 -08:00
@attr('string', {
for: {
type: 'plugin',
name: 'aws',
},
2022-01-20 08:32:13 -08:00
isNestedAttribute: true,
description: '',
})
region;
2024-10-09 14:49:22 -07:00
// AWS static credentials
2022-01-20 08:32:13 -08:00
@attr('string', {
for: {
type: 'plugin',
name: 'aws',
credentialType: 'static-credential',
},
isNestedSecret: true,
2022-01-20 08:32:13 -08:00
description: '',
})
access_key_id;
@attr('string', {
for: {
type: 'plugin',
name: 'aws',
credentialType: 'static-credential',
},
isNestedSecret: true,
2022-01-20 08:32:13 -08:00
description: '',
})
secret_access_key;
2024-10-09 14:49:22 -07:00
// AWS dynamic credentials
@attr('string', {
for: {
type: 'plugin',
name: 'aws',
credentialType: 'dynamic-credential',
},
2024-10-09 14:49:22 -07:00
isNestedAttribute: true,
description: 'The role ARN to use.',
})
role_arn;
@attr('string', {
for: {
type: 'plugin',
name: 'aws',
credentialType: 'dynamic-credential',
},
2024-10-09 14:49:22 -07:00
isNestedAttribute: true,
description: 'The role external ID to use.',
})
role_external_id;
@attr('string', {
for: {
type: 'plugin',
name: 'aws',
credentialType: 'dynamic-credential',
},
2024-10-09 14:49:22 -07:00
isNestedAttribute: true,
description: 'The role session to use.',
})
role_session_name;
@attr('object-as-array', {
for: {
type: 'plugin',
name: 'aws',
credentialType: 'dynamic-credential',
},
2024-10-09 14:49:22 -07:00
isNestedAttribute: true,
description: 'The role tags to use.',
})
role_tags;
2022-01-20 16:47:46 -05:00
// Azure specific
2022-01-20 08:32:13 -08:00
@attr('string', {
for: {
type: 'plugin',
name: 'azure',
},
2022-01-20 08:32:13 -08:00
isNestedAttribute: true,
description: '',
})
tenant_id;
@attr('string', {
for: {
type: 'plugin',
name: 'azure',
},
2022-01-20 08:32:13 -08:00
isNestedAttribute: true,
description: '',
})
client_id;
@attr('string', {
for: {
type: 'plugin',
name: 'azure',
},
2022-01-20 08:32:13 -08:00
isNestedAttribute: true,
description: '',
})
subscription_id;
@attr('string', {
for: {
type: 'plugin',
name: 'azure',
},
isNestedSecret: true,
2022-01-20 08:32:13 -08:00
description: '',
})
secret_id;
@attr('string', {
for: {
type: 'plugin',
name: 'azure',
},
isNestedSecret: true,
2022-01-20 08:32:13 -08:00
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;
2020-06-04 16:32:16 -04:00
}