UNPKG

@cdktf/provider-aws

Version:

Prebuilt aws Provider for Terraform CDK (cdktf)

993 lines 134 kB
"use strict"; var _a, _b, _c, _d, _e, _f, _g; Object.defineProperty(exports, "__esModule", { value: true }); exports.OpsworksApplication = exports.OpsworksApplicationSslConfigurationList = exports.OpsworksApplicationSslConfigurationOutputReference = exports.opsworksApplicationSslConfigurationToHclTerraform = exports.opsworksApplicationSslConfigurationToTerraform = exports.OpsworksApplicationEnvironmentList = exports.OpsworksApplicationEnvironmentOutputReference = exports.opsworksApplicationEnvironmentToHclTerraform = exports.opsworksApplicationEnvironmentToTerraform = exports.OpsworksApplicationAppSourceList = exports.OpsworksApplicationAppSourceOutputReference = exports.opsworksApplicationAppSourceToHclTerraform = exports.opsworksApplicationAppSourceToTerraform = void 0; const JSII_RTTI_SYMBOL_1 = Symbol.for("jsii.rtti"); const cdktf = require("cdktf"); function opsworksApplicationAppSourceToTerraform(struct) { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { password: cdktf.stringToTerraform(struct.password), revision: cdktf.stringToTerraform(struct.revision), ssh_key: cdktf.stringToTerraform(struct.sshKey), type: cdktf.stringToTerraform(struct.type), url: cdktf.stringToTerraform(struct.url), username: cdktf.stringToTerraform(struct.username), }; } exports.opsworksApplicationAppSourceToTerraform = opsworksApplicationAppSourceToTerraform; function opsworksApplicationAppSourceToHclTerraform(struct) { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } const attrs = { password: { value: cdktf.stringToHclTerraform(struct.password), isBlock: false, type: "simple", storageClassType: "string", }, revision: { value: cdktf.stringToHclTerraform(struct.revision), isBlock: false, type: "simple", storageClassType: "string", }, ssh_key: { value: cdktf.stringToHclTerraform(struct.sshKey), isBlock: false, type: "simple", storageClassType: "string", }, type: { value: cdktf.stringToHclTerraform(struct.type), isBlock: false, type: "simple", storageClassType: "string", }, url: { value: cdktf.stringToHclTerraform(struct.url), isBlock: false, type: "simple", storageClassType: "string", }, username: { value: cdktf.stringToHclTerraform(struct.username), isBlock: false, type: "simple", storageClassType: "string", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } exports.opsworksApplicationAppSourceToHclTerraform = opsworksApplicationAppSourceToHclTerraform; class OpsworksApplicationAppSourceOutputReference extends cdktf.ComplexObject { /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing * @param complexObjectIndex the index of this item in the list * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ constructor(terraformResource, terraformAttribute, complexObjectIndex, complexObjectIsFromSet) { super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); this.isEmptyObject = false; } get internalValue() { if (this.resolvableValue) { return this.resolvableValue; } let hasAnyValues = this.isEmptyObject; const internalValueResult = {}; if (this._password !== undefined) { hasAnyValues = true; internalValueResult.password = this._password; } if (this._revision !== undefined) { hasAnyValues = true; internalValueResult.revision = this._revision; } if (this._sshKey !== undefined) { hasAnyValues = true; internalValueResult.sshKey = this._sshKey; } if (this._type !== undefined) { hasAnyValues = true; internalValueResult.type = this._type; } if (this._url !== undefined) { hasAnyValues = true; internalValueResult.url = this._url; } if (this._username !== undefined) { hasAnyValues = true; internalValueResult.username = this._username; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this.resolvableValue = undefined; this._password = undefined; this._revision = undefined; this._sshKey = undefined; this._type = undefined; this._url = undefined; this._username = undefined; } else if (cdktf.Tokenization.isResolvable(value)) { this.isEmptyObject = false; this.resolvableValue = value; } else { this.isEmptyObject = Object.keys(value).length === 0; this.resolvableValue = undefined; this._password = value.password; this._revision = value.revision; this._sshKey = value.sshKey; this._type = value.type; this._url = value.url; this._username = value.username; } } get password() { return this.getStringAttribute('password'); } set password(value) { this._password = value; } resetPassword() { this._password = undefined; } // Temporarily expose input value. Use with caution. get passwordInput() { return this._password; } get revision() { return this.getStringAttribute('revision'); } set revision(value) { this._revision = value; } resetRevision() { this._revision = undefined; } // Temporarily expose input value. Use with caution. get revisionInput() { return this._revision; } get sshKey() { return this.getStringAttribute('ssh_key'); } set sshKey(value) { this._sshKey = value; } resetSshKey() { this._sshKey = undefined; } // Temporarily expose input value. Use with caution. get sshKeyInput() { return this._sshKey; } get type() { return this.getStringAttribute('type'); } set type(value) { this._type = value; } // Temporarily expose input value. Use with caution. get typeInput() { return this._type; } get url() { return this.getStringAttribute('url'); } set url(value) { this._url = value; } resetUrl() { this._url = undefined; } // Temporarily expose input value. Use with caution. get urlInput() { return this._url; } get username() { return this.getStringAttribute('username'); } set username(value) { this._username = value; } resetUsername() { this._username = undefined; } // Temporarily expose input value. Use with caution. get usernameInput() { return this._username; } } exports.OpsworksApplicationAppSourceOutputReference = OpsworksApplicationAppSourceOutputReference; _a = JSII_RTTI_SYMBOL_1; OpsworksApplicationAppSourceOutputReference[_a] = { fqn: "@cdktf/provider-aws.opsworksApplication.OpsworksApplicationAppSourceOutputReference", version: "19.50.0" }; class OpsworksApplicationAppSourceList extends cdktf.ComplexList { /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ constructor(terraformResource, terraformAttribute, wrapsSet) { super(terraformResource, terraformAttribute, wrapsSet); this.terraformResource = terraformResource; this.terraformAttribute = terraformAttribute; this.wrapsSet = wrapsSet; } /** * @param index the index of the item to return */ get(index) { return new OpsworksApplicationAppSourceOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } exports.OpsworksApplicationAppSourceList = OpsworksApplicationAppSourceList; _b = JSII_RTTI_SYMBOL_1; OpsworksApplicationAppSourceList[_b] = { fqn: "@cdktf/provider-aws.opsworksApplication.OpsworksApplicationAppSourceList", version: "19.50.0" }; function opsworksApplicationEnvironmentToTerraform(struct) { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { key: cdktf.stringToTerraform(struct.key), secure: cdktf.booleanToTerraform(struct.secure), value: cdktf.stringToTerraform(struct.value), }; } exports.opsworksApplicationEnvironmentToTerraform = opsworksApplicationEnvironmentToTerraform; function opsworksApplicationEnvironmentToHclTerraform(struct) { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } const attrs = { key: { value: cdktf.stringToHclTerraform(struct.key), isBlock: false, type: "simple", storageClassType: "string", }, secure: { value: cdktf.booleanToHclTerraform(struct.secure), isBlock: false, type: "simple", storageClassType: "boolean", }, value: { value: cdktf.stringToHclTerraform(struct.value), isBlock: false, type: "simple", storageClassType: "string", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } exports.opsworksApplicationEnvironmentToHclTerraform = opsworksApplicationEnvironmentToHclTerraform; class OpsworksApplicationEnvironmentOutputReference extends cdktf.ComplexObject { /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing * @param complexObjectIndex the index of this item in the list * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ constructor(terraformResource, terraformAttribute, complexObjectIndex, complexObjectIsFromSet) { super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); this.isEmptyObject = false; } get internalValue() { if (this.resolvableValue) { return this.resolvableValue; } let hasAnyValues = this.isEmptyObject; const internalValueResult = {}; if (this._key !== undefined) { hasAnyValues = true; internalValueResult.key = this._key; } if (this._secure !== undefined) { hasAnyValues = true; internalValueResult.secure = this._secure; } if (this._value !== undefined) { hasAnyValues = true; internalValueResult.value = this._value; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this.resolvableValue = undefined; this._key = undefined; this._secure = undefined; this._value = undefined; } else if (cdktf.Tokenization.isResolvable(value)) { this.isEmptyObject = false; this.resolvableValue = value; } else { this.isEmptyObject = Object.keys(value).length === 0; this.resolvableValue = undefined; this._key = value.key; this._secure = value.secure; this._value = value.value; } } get key() { return this.getStringAttribute('key'); } set key(value) { this._key = value; } // Temporarily expose input value. Use with caution. get keyInput() { return this._key; } get secure() { return this.getBooleanAttribute('secure'); } set secure(value) { this._secure = value; } resetSecure() { this._secure = undefined; } // Temporarily expose input value. Use with caution. get secureInput() { return this._secure; } get value() { return this.getStringAttribute('value'); } set value(value) { this._value = value; } // Temporarily expose input value. Use with caution. get valueInput() { return this._value; } } exports.OpsworksApplicationEnvironmentOutputReference = OpsworksApplicationEnvironmentOutputReference; _c = JSII_RTTI_SYMBOL_1; OpsworksApplicationEnvironmentOutputReference[_c] = { fqn: "@cdktf/provider-aws.opsworksApplication.OpsworksApplicationEnvironmentOutputReference", version: "19.50.0" }; class OpsworksApplicationEnvironmentList extends cdktf.ComplexList { /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ constructor(terraformResource, terraformAttribute, wrapsSet) { super(terraformResource, terraformAttribute, wrapsSet); this.terraformResource = terraformResource; this.terraformAttribute = terraformAttribute; this.wrapsSet = wrapsSet; } /** * @param index the index of the item to return */ get(index) { return new OpsworksApplicationEnvironmentOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } exports.OpsworksApplicationEnvironmentList = OpsworksApplicationEnvironmentList; _d = JSII_RTTI_SYMBOL_1; OpsworksApplicationEnvironmentList[_d] = { fqn: "@cdktf/provider-aws.opsworksApplication.OpsworksApplicationEnvironmentList", version: "19.50.0" }; function opsworksApplicationSslConfigurationToTerraform(struct) { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { certificate: cdktf.stringToTerraform(struct.certificate), chain: cdktf.stringToTerraform(struct.chain), private_key: cdktf.stringToTerraform(struct.privateKey), }; } exports.opsworksApplicationSslConfigurationToTerraform = opsworksApplicationSslConfigurationToTerraform; function opsworksApplicationSslConfigurationToHclTerraform(struct) { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } const attrs = { certificate: { value: cdktf.stringToHclTerraform(struct.certificate), isBlock: false, type: "simple", storageClassType: "string", }, chain: { value: cdktf.stringToHclTerraform(struct.chain), isBlock: false, type: "simple", storageClassType: "string", }, private_key: { value: cdktf.stringToHclTerraform(struct.privateKey), isBlock: false, type: "simple", storageClassType: "string", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } exports.opsworksApplicationSslConfigurationToHclTerraform = opsworksApplicationSslConfigurationToHclTerraform; class OpsworksApplicationSslConfigurationOutputReference extends cdktf.ComplexObject { /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing * @param complexObjectIndex the index of this item in the list * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ constructor(terraformResource, terraformAttribute, complexObjectIndex, complexObjectIsFromSet) { super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); this.isEmptyObject = false; } get internalValue() { if (this.resolvableValue) { return this.resolvableValue; } let hasAnyValues = this.isEmptyObject; const internalValueResult = {}; if (this._certificate !== undefined) { hasAnyValues = true; internalValueResult.certificate = this._certificate; } if (this._chain !== undefined) { hasAnyValues = true; internalValueResult.chain = this._chain; } if (this._privateKey !== undefined) { hasAnyValues = true; internalValueResult.privateKey = this._privateKey; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this.resolvableValue = undefined; this._certificate = undefined; this._chain = undefined; this._privateKey = undefined; } else if (cdktf.Tokenization.isResolvable(value)) { this.isEmptyObject = false; this.resolvableValue = value; } else { this.isEmptyObject = Object.keys(value).length === 0; this.resolvableValue = undefined; this._certificate = value.certificate; this._chain = value.chain; this._privateKey = value.privateKey; } } get certificate() { return this.getStringAttribute('certificate'); } set certificate(value) { this._certificate = value; } // Temporarily expose input value. Use with caution. get certificateInput() { return this._certificate; } get chain() { return this.getStringAttribute('chain'); } set chain(value) { this._chain = value; } resetChain() { this._chain = undefined; } // Temporarily expose input value. Use with caution. get chainInput() { return this._chain; } get privateKey() { return this.getStringAttribute('private_key'); } set privateKey(value) { this._privateKey = value; } // Temporarily expose input value. Use with caution. get privateKeyInput() { return this._privateKey; } } exports.OpsworksApplicationSslConfigurationOutputReference = OpsworksApplicationSslConfigurationOutputReference; _e = JSII_RTTI_SYMBOL_1; OpsworksApplicationSslConfigurationOutputReference[_e] = { fqn: "@cdktf/provider-aws.opsworksApplication.OpsworksApplicationSslConfigurationOutputReference", version: "19.50.0" }; class OpsworksApplicationSslConfigurationList extends cdktf.ComplexList { /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ constructor(terraformResource, terraformAttribute, wrapsSet) { super(terraformResource, terraformAttribute, wrapsSet); this.terraformResource = terraformResource; this.terraformAttribute = terraformAttribute; this.wrapsSet = wrapsSet; } /** * @param index the index of the item to return */ get(index) { return new OpsworksApplicationSslConfigurationOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } exports.OpsworksApplicationSslConfigurationList = OpsworksApplicationSslConfigurationList; _f = JSII_RTTI_SYMBOL_1; OpsworksApplicationSslConfigurationList[_f] = { fqn: "@cdktf/provider-aws.opsworksApplication.OpsworksApplicationSslConfigurationList", version: "19.50.0" }; /** * Represents a {@link https://registry.terraform.io/providers/hashicorp/aws/5.84.0/docs/resources/opsworks_application aws_opsworks_application} */ class OpsworksApplication extends cdktf.TerraformResource { // ============== // STATIC Methods // ============== /** * Generates CDKTF code for importing a OpsworksApplication resource upon running "cdktf plan <stack-name>" * @param scope The scope in which to define this construct * @param importToId The construct id used in the generated config for the OpsworksApplication to import * @param importFromId The id of the existing OpsworksApplication that should be imported. Refer to the {@link https://registry.terraform.io/providers/hashicorp/aws/5.84.0/docs/resources/opsworks_application#import import section} in the documentation of this resource for the id to use * @param provider? Optional instance of the provider where the OpsworksApplication to import is found */ static generateConfigForImport(scope, importToId, importFromId, provider) { return new cdktf.ImportableResource(scope, importToId, { terraformResourceType: "aws_opsworks_application", importId: importFromId, provider }); } // =========== // INITIALIZER // =========== /** * Create a new {@link https://registry.terraform.io/providers/hashicorp/aws/5.84.0/docs/resources/opsworks_application aws_opsworks_application} Resource * * @param scope The scope in which to define this construct * @param id The scoped construct ID. Must be unique amongst siblings in the same scope * @param options OpsworksApplicationConfig */ constructor(scope, id, config) { super(scope, id, { terraformResourceType: 'aws_opsworks_application', terraformGeneratorMetadata: { providerName: 'aws', providerVersion: '5.84.0', providerVersionConstraint: '~> 5.0' }, provider: config.provider, dependsOn: config.dependsOn, count: config.count, lifecycle: config.lifecycle, provisioners: config.provisioners, connection: config.connection, forEach: config.forEach }); // app_source - computed: false, optional: true, required: false this._appSource = new OpsworksApplicationAppSourceList(this, "app_source", false); // environment - computed: false, optional: true, required: false this._environment = new OpsworksApplicationEnvironmentList(this, "environment", true); // ssl_configuration - computed: false, optional: true, required: false this._sslConfiguration = new OpsworksApplicationSslConfigurationList(this, "ssl_configuration", false); this._autoBundleOnDeploy = config.autoBundleOnDeploy; this._awsFlowRubySettings = config.awsFlowRubySettings; this._dataSourceArn = config.dataSourceArn; this._dataSourceDatabaseName = config.dataSourceDatabaseName; this._dataSourceType = config.dataSourceType; this._description = config.description; this._documentRoot = config.documentRoot; this._domains = config.domains; this._enableSsl = config.enableSsl; this._id = config.id; this._name = config.name; this._railsEnv = config.railsEnv; this._shortName = config.shortName; this._stackId = config.stackId; this._type = config.type; this._appSource.internalValue = config.appSource; this._environment.internalValue = config.environment; this._sslConfiguration.internalValue = config.sslConfiguration; } get autoBundleOnDeploy() { return this.getStringAttribute('auto_bundle_on_deploy'); } set autoBundleOnDeploy(value) { this._autoBundleOnDeploy = value; } resetAutoBundleOnDeploy() { this._autoBundleOnDeploy = undefined; } // Temporarily expose input value. Use with caution. get autoBundleOnDeployInput() { return this._autoBundleOnDeploy; } get awsFlowRubySettings() { return this.getStringAttribute('aws_flow_ruby_settings'); } set awsFlowRubySettings(value) { this._awsFlowRubySettings = value; } resetAwsFlowRubySettings() { this._awsFlowRubySettings = undefined; } // Temporarily expose input value. Use with caution. get awsFlowRubySettingsInput() { return this._awsFlowRubySettings; } get dataSourceArn() { return this.getStringAttribute('data_source_arn'); } set dataSourceArn(value) { this._dataSourceArn = value; } resetDataSourceArn() { this._dataSourceArn = undefined; } // Temporarily expose input value. Use with caution. get dataSourceArnInput() { return this._dataSourceArn; } get dataSourceDatabaseName() { return this.getStringAttribute('data_source_database_name'); } set dataSourceDatabaseName(value) { this._dataSourceDatabaseName = value; } resetDataSourceDatabaseName() { this._dataSourceDatabaseName = undefined; } // Temporarily expose input value. Use with caution. get dataSourceDatabaseNameInput() { return this._dataSourceDatabaseName; } get dataSourceType() { return this.getStringAttribute('data_source_type'); } set dataSourceType(value) { this._dataSourceType = value; } resetDataSourceType() { this._dataSourceType = undefined; } // Temporarily expose input value. Use with caution. get dataSourceTypeInput() { return this._dataSourceType; } get description() { return this.getStringAttribute('description'); } set description(value) { this._description = value; } resetDescription() { this._description = undefined; } // Temporarily expose input value. Use with caution. get descriptionInput() { return this._description; } get documentRoot() { return this.getStringAttribute('document_root'); } set documentRoot(value) { this._documentRoot = value; } resetDocumentRoot() { this._documentRoot = undefined; } // Temporarily expose input value. Use with caution. get documentRootInput() { return this._documentRoot; } get domains() { return this.getListAttribute('domains'); } set domains(value) { this._domains = value; } resetDomains() { this._domains = undefined; } // Temporarily expose input value. Use with caution. get domainsInput() { return this._domains; } get enableSsl() { return this.getBooleanAttribute('enable_ssl'); } set enableSsl(value) { this._enableSsl = value; } resetEnableSsl() { this._enableSsl = undefined; } // Temporarily expose input value. Use with caution. get enableSslInput() { return this._enableSsl; } get id() { return this.getStringAttribute('id'); } set id(value) { this._id = value; } resetId() { this._id = undefined; } // Temporarily expose input value. Use with caution. get idInput() { return this._id; } get name() { return this.getStringAttribute('name'); } set name(value) { this._name = value; } // Temporarily expose input value. Use with caution. get nameInput() { return this._name; } get railsEnv() { return this.getStringAttribute('rails_env'); } set railsEnv(value) { this._railsEnv = value; } resetRailsEnv() { this._railsEnv = undefined; } // Temporarily expose input value. Use with caution. get railsEnvInput() { return this._railsEnv; } get shortName() { return this.getStringAttribute('short_name'); } set shortName(value) { this._shortName = value; } resetShortName() { this._shortName = undefined; } // Temporarily expose input value. Use with caution. get shortNameInput() { return this._shortName; } get stackId() { return this.getStringAttribute('stack_id'); } set stackId(value) { this._stackId = value; } // Temporarily expose input value. Use with caution. get stackIdInput() { return this._stackId; } get type() { return this.getStringAttribute('type'); } set type(value) { this._type = value; } // Temporarily expose input value. Use with caution. get typeInput() { return this._type; } get appSource() { return this._appSource; } putAppSource(value) { this._appSource.internalValue = value; } resetAppSource() { this._appSource.internalValue = undefined; } // Temporarily expose input value. Use with caution. get appSourceInput() { return this._appSource.internalValue; } get environment() { return this._environment; } putEnvironment(value) { this._environment.internalValue = value; } resetEnvironment() { this._environment.internalValue = undefined; } // Temporarily expose input value. Use with caution. get environmentInput() { return this._environment.internalValue; } get sslConfiguration() { return this._sslConfiguration; } putSslConfiguration(value) { this._sslConfiguration.internalValue = value; } resetSslConfiguration() { this._sslConfiguration.internalValue = undefined; } // Temporarily expose input value. Use with caution. get sslConfigurationInput() { return this._sslConfiguration.internalValue; } // ========= // SYNTHESIS // ========= synthesizeAttributes() { return { auto_bundle_on_deploy: cdktf.stringToTerraform(this._autoBundleOnDeploy), aws_flow_ruby_settings: cdktf.stringToTerraform(this._awsFlowRubySettings), data_source_arn: cdktf.stringToTerraform(this._dataSourceArn), data_source_database_name: cdktf.stringToTerraform(this._dataSourceDatabaseName), data_source_type: cdktf.stringToTerraform(this._dataSourceType), description: cdktf.stringToTerraform(this._description), document_root: cdktf.stringToTerraform(this._documentRoot), domains: cdktf.listMapper(cdktf.stringToTerraform, false)(this._domains), enable_ssl: cdktf.booleanToTerraform(this._enableSsl), id: cdktf.stringToTerraform(this._id), name: cdktf.stringToTerraform(this._name), rails_env: cdktf.stringToTerraform(this._railsEnv), short_name: cdktf.stringToTerraform(this._shortName), stack_id: cdktf.stringToTerraform(this._stackId), type: cdktf.stringToTerraform(this._type), app_source: cdktf.listMapper(opsworksApplicationAppSourceToTerraform, true)(this._appSource.internalValue), environment: cdktf.listMapper(opsworksApplicationEnvironmentToTerraform, true)(this._environment.internalValue), ssl_configuration: cdktf.listMapper(opsworksApplicationSslConfigurationToTerraform, true)(this._sslConfiguration.internalValue), }; } synthesizeHclAttributes() { const attrs = { auto_bundle_on_deploy: { value: cdktf.stringToHclTerraform(this._autoBundleOnDeploy), isBlock: false, type: "simple", storageClassType: "string", }, aws_flow_ruby_settings: { value: cdktf.stringToHclTerraform(this._awsFlowRubySettings), isBlock: false, type: "simple", storageClassType: "string", }, data_source_arn: { value: cdktf.stringToHclTerraform(this._dataSourceArn), isBlock: false, type: "simple", storageClassType: "string", }, data_source_database_name: { value: cdktf.stringToHclTerraform(this._dataSourceDatabaseName), isBlock: false, type: "simple", storageClassType: "string", }, data_source_type: { value: cdktf.stringToHclTerraform(this._dataSourceType), isBlock: false, type: "simple", storageClassType: "string", }, description: { value: cdktf.stringToHclTerraform(this._description), isBlock: false, type: "simple", storageClassType: "string", }, document_root: { value: cdktf.stringToHclTerraform(this._documentRoot), isBlock: false, type: "simple", storageClassType: "string", }, domains: { value: cdktf.listMapperHcl(cdktf.stringToHclTerraform, false)(this._domains), isBlock: false, type: "list", storageClassType: "stringList", }, enable_ssl: { value: cdktf.booleanToHclTerraform(this._enableSsl), isBlock: false, type: "simple", storageClassType: "boolean", }, id: { value: cdktf.stringToHclTerraform(this._id), isBlock: false, type: "simple", storageClassType: "string", }, name: { value: cdktf.stringToHclTerraform(this._name), isBlock: false, type: "simple", storageClassType: "string", }, rails_env: { value: cdktf.stringToHclTerraform(this._railsEnv), isBlock: false, type: "simple", storageClassType: "string", }, short_name: { value: cdktf.stringToHclTerraform(this._shortName), isBlock: false, type: "simple", storageClassType: "string", }, stack_id: { value: cdktf.stringToHclTerraform(this._stackId), isBlock: false, type: "simple", storageClassType: "string", }, type: { value: cdktf.stringToHclTerraform(this._type), isBlock: false, type: "simple", storageClassType: "string", }, app_source: { value: cdktf.listMapperHcl(opsworksApplicationAppSourceToHclTerraform, true)(this._appSource.internalValue), isBlock: true, type: "list", storageClassType: "OpsworksApplicationAppSourceList", }, environment: { value: cdktf.listMapperHcl(opsworksApplicationEnvironmentToHclTerraform, true)(this._environment.internalValue), isBlock: true, type: "set", storageClassType: "OpsworksApplicationEnvironmentList", }, ssl_configuration: { value: cdktf.listMapperHcl(opsworksApplicationSslConfigurationToHclTerraform, true)(this._sslConfiguration.internalValue), isBlock: true, type: "list", storageClassType: "OpsworksApplicationSslConfigurationList", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } } exports.OpsworksApplication = OpsworksApplication; _g = JSII_RTTI_SYMBOL_1; OpsworksApplication[_g] = { fqn: "@cdktf/provider-aws.opsworksApplication.OpsworksApplication", version: "19.50.0" }; // ================= // STATIC PROPERTIES // ================= OpsworksApplication.tfResourceType = "aws_opsworks_application"; //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvb3Bzd29ya3MtYXBwbGljYXRpb24vaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFTQSwrQkFBK0I7QUFrSC9CLFNBQWdCLHVDQUF1QyxDQUFDLE1BQXlEO0lBQy9HLElBQUksQ0FBQyxLQUFLLENBQUMsVUFBVSxDQUFDLE1BQU0sQ0FBQyxJQUFJLEtBQUssQ0FBQyxZQUFZLENBQUMsWUFBWSxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUM7UUFBQyxPQUFPLE1BQU0sQ0FBQztJQUFDLENBQUM7SUFDNUYsSUFBSSxLQUFLLENBQUMsZ0JBQWdCLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQztRQUNuQyxNQUFNLElBQUksS0FBSyxDQUFDLG9IQUFvSCxDQUFDLENBQUM7SUFDeEksQ0FBQztJQUNELE9BQU87UUFDTCxRQUFRLEVBQUUsS0FBSyxDQUFDLGlCQUFpQixDQUFDLE1BQU8sQ0FBQyxRQUFRLENBQUM7UUFDbkQsUUFBUSxFQUFFLEtBQUssQ0FBQyxpQkFBaUIsQ0FBQyxNQUFPLENBQUMsUUFBUSxDQUFDO1FBQ25ELE9BQU8sRUFBRSxLQUFLLENBQUMsaUJBQWlCLENBQUMsTUFBTyxDQUFDLE1BQU0sQ0FBQztRQUNoRCxJQUFJLEVBQUUsS0FBSyxDQUFDLGlCQUFpQixDQUFDLE1BQU8sQ0FBQyxJQUFJLENBQUM7UUFDM0MsR0FBRyxFQUFFLEtBQUssQ0FBQyxpQkFBaUIsQ0FBQyxNQUFPLENBQUMsR0FBRyxDQUFDO1FBQ3pDLFFBQVEsRUFBRSxLQUFLLENBQUMsaUJBQWlCLENBQUMsTUFBTyxDQUFDLFFBQVEsQ0FBQztLQUNwRCxDQUFBO0FBQ0gsQ0FBQztBQWJELDBGQWFDO0FBR0QsU0FBZ0IsMENBQTBDLENBQUMsTUFBeUQ7SUFDbEgsSUFBSSxDQUFDLEtBQUssQ0FBQyxVQUFVLENBQUMsTUFBTSxDQUFDLElBQUksS0FBSyxDQUFDLFlBQVksQ0FBQyxZ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