@cdktf/provider-aws
Version:
Prebuilt aws Provider for Terraform CDK (cdktf)
1,318 lines • 202 kB
JavaScript
"use strict";
var _a, _b, _c, _d, _e, _f, _g, _h;
Object.defineProperty(exports, "__esModule", { value: true });
exports.OpsworksInstance = exports.OpsworksInstanceTimeoutsOutputReference = exports.opsworksInstanceTimeoutsToHclTerraform = exports.opsworksInstanceTimeoutsToTerraform = exports.OpsworksInstanceRootBlockDeviceList = exports.OpsworksInstanceRootBlockDeviceOutputReference = exports.opsworksInstanceRootBlockDeviceToHclTerraform = exports.opsworksInstanceRootBlockDeviceToTerraform = exports.OpsworksInstanceEphemeralBlockDeviceList = exports.OpsworksInstanceEphemeralBlockDeviceOutputReference = exports.opsworksInstanceEphemeralBlockDeviceToHclTerraform = exports.opsworksInstanceEphemeralBlockDeviceToTerraform = exports.OpsworksInstanceEbsBlockDeviceList = exports.OpsworksInstanceEbsBlockDeviceOutputReference = exports.opsworksInstanceEbsBlockDeviceToHclTerraform = exports.opsworksInstanceEbsBlockDeviceToTerraform = void 0;
const JSII_RTTI_SYMBOL_1 = Symbol.for("jsii.rtti");
const cdktf = require("cdktf");
function opsworksInstanceEbsBlockDeviceToTerraform(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 {
delete_on_termination: cdktf.booleanToTerraform(struct.deleteOnTermination),
device_name: cdktf.stringToTerraform(struct.deviceName),
iops: cdktf.numberToTerraform(struct.iops),
snapshot_id: cdktf.stringToTerraform(struct.snapshotId),
volume_size: cdktf.numberToTerraform(struct.volumeSize),
volume_type: cdktf.stringToTerraform(struct.volumeType),
};
}
exports.opsworksInstanceEbsBlockDeviceToTerraform = opsworksInstanceEbsBlockDeviceToTerraform;
function opsworksInstanceEbsBlockDeviceToHclTerraform(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 = {
delete_on_termination: {
value: cdktf.booleanToHclTerraform(struct.deleteOnTermination),
isBlock: false,
type: "simple",
storageClassType: "boolean",
},
device_name: {
value: cdktf.stringToHclTerraform(struct.deviceName),
isBlock: false,
type: "simple",
storageClassType: "string",
},
iops: {
value: cdktf.numberToHclTerraform(struct.iops),
isBlock: false,
type: "simple",
storageClassType: "number",
},
snapshot_id: {
value: cdktf.stringToHclTerraform(struct.snapshotId),
isBlock: false,
type: "simple",
storageClassType: "string",
},
volume_size: {
value: cdktf.numberToHclTerraform(struct.volumeSize),
isBlock: false,
type: "simple",
storageClassType: "number",
},
volume_type: {
value: cdktf.stringToHclTerraform(struct.volumeType),
isBlock: false,
type: "simple",
storageClassType: "string",
},
};
// remove undefined attributes
return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
}
exports.opsworksInstanceEbsBlockDeviceToHclTerraform = opsworksInstanceEbsBlockDeviceToHclTerraform;
class OpsworksInstanceEbsBlockDeviceOutputReference 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._deleteOnTermination !== undefined) {
hasAnyValues = true;
internalValueResult.deleteOnTermination = this._deleteOnTermination;
}
if (this._deviceName !== undefined) {
hasAnyValues = true;
internalValueResult.deviceName = this._deviceName;
}
if (this._iops !== undefined) {
hasAnyValues = true;
internalValueResult.iops = this._iops;
}
if (this._snapshotId !== undefined) {
hasAnyValues = true;
internalValueResult.snapshotId = this._snapshotId;
}
if (this._volumeSize !== undefined) {
hasAnyValues = true;
internalValueResult.volumeSize = this._volumeSize;
}
if (this._volumeType !== undefined) {
hasAnyValues = true;
internalValueResult.volumeType = this._volumeType;
}
return hasAnyValues ? internalValueResult : undefined;
}
set internalValue(value) {
if (value === undefined) {
this.isEmptyObject = false;
this.resolvableValue = undefined;
this._deleteOnTermination = undefined;
this._deviceName = undefined;
this._iops = undefined;
this._snapshotId = undefined;
this._volumeSize = undefined;
this._volumeType = 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._deleteOnTermination = value.deleteOnTermination;
this._deviceName = value.deviceName;
this._iops = value.iops;
this._snapshotId = value.snapshotId;
this._volumeSize = value.volumeSize;
this._volumeType = value.volumeType;
}
}
get deleteOnTermination() {
return this.getBooleanAttribute('delete_on_termination');
}
set deleteOnTermination(value) {
this._deleteOnTermination = value;
}
resetDeleteOnTermination() {
this._deleteOnTermination = undefined;
}
// Temporarily expose input value. Use with caution.
get deleteOnTerminationInput() {
return this._deleteOnTermination;
}
get deviceName() {
return this.getStringAttribute('device_name');
}
set deviceName(value) {
this._deviceName = value;
}
// Temporarily expose input value. Use with caution.
get deviceNameInput() {
return this._deviceName;
}
get iops() {
return this.getNumberAttribute('iops');
}
set iops(value) {
this._iops = value;
}
resetIops() {
this._iops = undefined;
}
// Temporarily expose input value. Use with caution.
get iopsInput() {
return this._iops;
}
get snapshotId() {
return this.getStringAttribute('snapshot_id');
}
set snapshotId(value) {
this._snapshotId = value;
}
resetSnapshotId() {
this._snapshotId = undefined;
}
// Temporarily expose input value. Use with caution.
get snapshotIdInput() {
return this._snapshotId;
}
get volumeSize() {
return this.getNumberAttribute('volume_size');
}
set volumeSize(value) {
this._volumeSize = value;
}
resetVolumeSize() {
this._volumeSize = undefined;
}
// Temporarily expose input value. Use with caution.
get volumeSizeInput() {
return this._volumeSize;
}
get volumeType() {
return this.getStringAttribute('volume_type');
}
set volumeType(value) {
this._volumeType = value;
}
resetVolumeType() {
this._volumeType = undefined;
}
// Temporarily expose input value. Use with caution.
get volumeTypeInput() {
return this._volumeType;
}
}
exports.OpsworksInstanceEbsBlockDeviceOutputReference = OpsworksInstanceEbsBlockDeviceOutputReference;
_a = JSII_RTTI_SYMBOL_1;
OpsworksInstanceEbsBlockDeviceOutputReference[_a] = { fqn: "@cdktf/provider-aws.opsworksInstance.OpsworksInstanceEbsBlockDeviceOutputReference", version: "19.50.0" };
class OpsworksInstanceEbsBlockDeviceList 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 OpsworksInstanceEbsBlockDeviceOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet);
}
}
exports.OpsworksInstanceEbsBlockDeviceList = OpsworksInstanceEbsBlockDeviceList;
_b = JSII_RTTI_SYMBOL_1;
OpsworksInstanceEbsBlockDeviceList[_b] = { fqn: "@cdktf/provider-aws.opsworksInstance.OpsworksInstanceEbsBlockDeviceList", version: "19.50.0" };
function opsworksInstanceEphemeralBlockDeviceToTerraform(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 {
device_name: cdktf.stringToTerraform(struct.deviceName),
virtual_name: cdktf.stringToTerraform(struct.virtualName),
};
}
exports.opsworksInstanceEphemeralBlockDeviceToTerraform = opsworksInstanceEphemeralBlockDeviceToTerraform;
function opsworksInstanceEphemeralBlockDeviceToHclTerraform(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 = {
device_name: {
value: cdktf.stringToHclTerraform(struct.deviceName),
isBlock: false,
type: "simple",
storageClassType: "string",
},
virtual_name: {
value: cdktf.stringToHclTerraform(struct.virtualName),
isBlock: false,
type: "simple",
storageClassType: "string",
},
};
// remove undefined attributes
return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
}
exports.opsworksInstanceEphemeralBlockDeviceToHclTerraform = opsworksInstanceEphemeralBlockDeviceToHclTerraform;
class OpsworksInstanceEphemeralBlockDeviceOutputReference 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._deviceName !== undefined) {
hasAnyValues = true;
internalValueResult.deviceName = this._deviceName;
}
if (this._virtualName !== undefined) {
hasAnyValues = true;
internalValueResult.virtualName = this._virtualName;
}
return hasAnyValues ? internalValueResult : undefined;
}
set internalValue(value) {
if (value === undefined) {
this.isEmptyObject = false;
this.resolvableValue = undefined;
this._deviceName = undefined;
this._virtualName = 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._deviceName = value.deviceName;
this._virtualName = value.virtualName;
}
}
get deviceName() {
return this.getStringAttribute('device_name');
}
set deviceName(value) {
this._deviceName = value;
}
// Temporarily expose input value. Use with caution.
get deviceNameInput() {
return this._deviceName;
}
get virtualName() {
return this.getStringAttribute('virtual_name');
}
set virtualName(value) {
this._virtualName = value;
}
// Temporarily expose input value. Use with caution.
get virtualNameInput() {
return this._virtualName;
}
}
exports.OpsworksInstanceEphemeralBlockDeviceOutputReference = OpsworksInstanceEphemeralBlockDeviceOutputReference;
_c = JSII_RTTI_SYMBOL_1;
OpsworksInstanceEphemeralBlockDeviceOutputReference[_c] = { fqn: "@cdktf/provider-aws.opsworksInstance.OpsworksInstanceEphemeralBlockDeviceOutputReference", version: "19.50.0" };
class OpsworksInstanceEphemeralBlockDeviceList 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 OpsworksInstanceEphemeralBlockDeviceOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet);
}
}
exports.OpsworksInstanceEphemeralBlockDeviceList = OpsworksInstanceEphemeralBlockDeviceList;
_d = JSII_RTTI_SYMBOL_1;
OpsworksInstanceEphemeralBlockDeviceList[_d] = { fqn: "@cdktf/provider-aws.opsworksInstance.OpsworksInstanceEphemeralBlockDeviceList", version: "19.50.0" };
function opsworksInstanceRootBlockDeviceToTerraform(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 {
delete_on_termination: cdktf.booleanToTerraform(struct.deleteOnTermination),
iops: cdktf.numberToTerraform(struct.iops),
volume_size: cdktf.numberToTerraform(struct.volumeSize),
volume_type: cdktf.stringToTerraform(struct.volumeType),
};
}
exports.opsworksInstanceRootBlockDeviceToTerraform = opsworksInstanceRootBlockDeviceToTerraform;
function opsworksInstanceRootBlockDeviceToHclTerraform(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 = {
delete_on_termination: {
value: cdktf.booleanToHclTerraform(struct.deleteOnTermination),
isBlock: false,
type: "simple",
storageClassType: "boolean",
},
iops: {
value: cdktf.numberToHclTerraform(struct.iops),
isBlock: false,
type: "simple",
storageClassType: "number",
},
volume_size: {
value: cdktf.numberToHclTerraform(struct.volumeSize),
isBlock: false,
type: "simple",
storageClassType: "number",
},
volume_type: {
value: cdktf.stringToHclTerraform(struct.volumeType),
isBlock: false,
type: "simple",
storageClassType: "string",
},
};
// remove undefined attributes
return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
}
exports.opsworksInstanceRootBlockDeviceToHclTerraform = opsworksInstanceRootBlockDeviceToHclTerraform;
class OpsworksInstanceRootBlockDeviceOutputReference 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._deleteOnTermination !== undefined) {
hasAnyValues = true;
internalValueResult.deleteOnTermination = this._deleteOnTermination;
}
if (this._iops !== undefined) {
hasAnyValues = true;
internalValueResult.iops = this._iops;
}
if (this._volumeSize !== undefined) {
hasAnyValues = true;
internalValueResult.volumeSize = this._volumeSize;
}
if (this._volumeType !== undefined) {
hasAnyValues = true;
internalValueResult.volumeType = this._volumeType;
}
return hasAnyValues ? internalValueResult : undefined;
}
set internalValue(value) {
if (value === undefined) {
this.isEmptyObject = false;
this.resolvableValue = undefined;
this._deleteOnTermination = undefined;
this._iops = undefined;
this._volumeSize = undefined;
this._volumeType = 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._deleteOnTermination = value.deleteOnTermination;
this._iops = value.iops;
this._volumeSize = value.volumeSize;
this._volumeType = value.volumeType;
}
}
get deleteOnTermination() {
return this.getBooleanAttribute('delete_on_termination');
}
set deleteOnTermination(value) {
this._deleteOnTermination = value;
}
resetDeleteOnTermination() {
this._deleteOnTermination = undefined;
}
// Temporarily expose input value. Use with caution.
get deleteOnTerminationInput() {
return this._deleteOnTermination;
}
get iops() {
return this.getNumberAttribute('iops');
}
set iops(value) {
this._iops = value;
}
resetIops() {
this._iops = undefined;
}
// Temporarily expose input value. Use with caution.
get iopsInput() {
return this._iops;
}
get volumeSize() {
return this.getNumberAttribute('volume_size');
}
set volumeSize(value) {
this._volumeSize = value;
}
resetVolumeSize() {
this._volumeSize = undefined;
}
// Temporarily expose input value. Use with caution.
get volumeSizeInput() {
return this._volumeSize;
}
get volumeType() {
return this.getStringAttribute('volume_type');
}
set volumeType(value) {
this._volumeType = value;
}
resetVolumeType() {
this._volumeType = undefined;
}
// Temporarily expose input value. Use with caution.
get volumeTypeInput() {
return this._volumeType;
}
}
exports.OpsworksInstanceRootBlockDeviceOutputReference = OpsworksInstanceRootBlockDeviceOutputReference;
_e = JSII_RTTI_SYMBOL_1;
OpsworksInstanceRootBlockDeviceOutputReference[_e] = { fqn: "@cdktf/provider-aws.opsworksInstance.OpsworksInstanceRootBlockDeviceOutputReference", version: "19.50.0" };
class OpsworksInstanceRootBlockDeviceList 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 OpsworksInstanceRootBlockDeviceOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet);
}
}
exports.OpsworksInstanceRootBlockDeviceList = OpsworksInstanceRootBlockDeviceList;
_f = JSII_RTTI_SYMBOL_1;
OpsworksInstanceRootBlockDeviceList[_f] = { fqn: "@cdktf/provider-aws.opsworksInstance.OpsworksInstanceRootBlockDeviceList", version: "19.50.0" };
function opsworksInstanceTimeoutsToTerraform(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 {
create: cdktf.stringToTerraform(struct.create),
delete: cdktf.stringToTerraform(struct.delete),
update: cdktf.stringToTerraform(struct.update),
};
}
exports.opsworksInstanceTimeoutsToTerraform = opsworksInstanceTimeoutsToTerraform;
function opsworksInstanceTimeoutsToHclTerraform(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 = {
create: {
value: cdktf.stringToHclTerraform(struct.create),
isBlock: false,
type: "simple",
storageClassType: "string",
},
delete: {
value: cdktf.stringToHclTerraform(struct.delete),
isBlock: false,
type: "simple",
storageClassType: "string",
},
update: {
value: cdktf.stringToHclTerraform(struct.update),
isBlock: false,
type: "simple",
storageClassType: "string",
},
};
// remove undefined attributes
return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
}
exports.opsworksInstanceTimeoutsToHclTerraform = opsworksInstanceTimeoutsToHclTerraform;
class OpsworksInstanceTimeoutsOutputReference extends cdktf.ComplexObject {
/**
* @param terraformResource The parent resource
* @param terraformAttribute The attribute on the parent resource this class is referencing
*/
constructor(terraformResource, terraformAttribute) {
super(terraformResource, terraformAttribute, false);
this.isEmptyObject = false;
}
get internalValue() {
if (this.resolvableValue) {
return this.resolvableValue;
}
let hasAnyValues = this.isEmptyObject;
const internalValueResult = {};
if (this._create !== undefined) {
hasAnyValues = true;
internalValueResult.create = this._create;
}
if (this._delete !== undefined) {
hasAnyValues = true;
internalValueResult.delete = this._delete;
}
if (this._update !== undefined) {
hasAnyValues = true;
internalValueResult.update = this._update;
}
return hasAnyValues ? internalValueResult : undefined;
}
set internalValue(value) {
if (value === undefined) {
this.isEmptyObject = false;
this.resolvableValue = undefined;
this._create = undefined;
this._delete = undefined;
this._update = 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._create = value.create;
this._delete = value.delete;
this._update = value.update;
}
}
get create() {
return this.getStringAttribute('create');
}
set create(value) {
this._create = value;
}
resetCreate() {
this._create = undefined;
}
// Temporarily expose input value. Use with caution.
get createInput() {
return this._create;
}
get delete() {
return this.getStringAttribute('delete');
}
set delete(value) {
this._delete = value;
}
resetDelete() {
this._delete = undefined;
}
// Temporarily expose input value. Use with caution.
get deleteInput() {
return this._delete;
}
get update() {
return this.getStringAttribute('update');
}
set update(value) {
this._update = value;
}
resetUpdate() {
this._update = undefined;
}
// Temporarily expose input value. Use with caution.
get updateInput() {
return this._update;
}
}
exports.OpsworksInstanceTimeoutsOutputReference = OpsworksInstanceTimeoutsOutputReference;
_g = JSII_RTTI_SYMBOL_1;
OpsworksInstanceTimeoutsOutputReference[_g] = { fqn: "@cdktf/provider-aws.opsworksInstance.OpsworksInstanceTimeoutsOutputReference", version: "19.50.0" };
/**
* Represents a {@link https://registry.terraform.io/providers/hashicorp/aws/5.84.0/docs/resources/opsworks_instance aws_opsworks_instance}
*/
class OpsworksInstance extends cdktf.TerraformResource {
// ==============
// STATIC Methods
// ==============
/**
* Generates CDKTF code for importing a OpsworksInstance 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 OpsworksInstance to import
* @param importFromId The id of the existing OpsworksInstance that should be imported. Refer to the {@link https://registry.terraform.io/providers/hashicorp/aws/5.84.0/docs/resources/opsworks_instance#import import section} in the documentation of this resource for the id to use
* @param provider? Optional instance of the provider where the OpsworksInstance to import is found
*/
static generateConfigForImport(scope, importToId, importFromId, provider) {
return new cdktf.ImportableResource(scope, importToId, { terraformResourceType: "aws_opsworks_instance", importId: importFromId, provider });
}
// ===========
// INITIALIZER
// ===========
/**
* Create a new {@link https://registry.terraform.io/providers/hashicorp/aws/5.84.0/docs/resources/opsworks_instance aws_opsworks_instance} 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 OpsworksInstanceConfig
*/
constructor(scope, id, config) {
super(scope, id, {
terraformResourceType: 'aws_opsworks_instance',
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
});
// ebs_block_device - computed: false, optional: true, required: false
this._ebsBlockDevice = new OpsworksInstanceEbsBlockDeviceList(this, "ebs_block_device", true);
// ephemeral_block_device - computed: false, optional: true, required: false
this._ephemeralBlockDevice = new OpsworksInstanceEphemeralBlockDeviceList(this, "ephemeral_block_device", true);
// root_block_device - computed: false, optional: true, required: false
this._rootBlockDevice = new OpsworksInstanceRootBlockDeviceList(this, "root_block_device", true);
// timeouts - computed: false, optional: true, required: false
this._timeouts = new OpsworksInstanceTimeoutsOutputReference(this, "timeouts");
this._agentVersion = config.agentVersion;
this._amiId = config.amiId;
this._architecture = config.architecture;
this._autoScalingType = config.autoScalingType;
this._availabilityZone = config.availabilityZone;
this._createdAt = config.createdAt;
this._deleteEbs = config.deleteEbs;
this._deleteEip = config.deleteEip;
this._ebsOptimized = config.ebsOptimized;
this._ecsClusterArn = config.ecsClusterArn;
this._elasticIp = config.elasticIp;
this._hostname = config.hostname;
this._id = config.id;
this._infrastructureClass = config.infrastructureClass;
this._installUpdatesOnBoot = config.installUpdatesOnBoot;
this._instanceProfileArn = config.instanceProfileArn;
this._instanceType = config.instanceType;
this._layerIds = config.layerIds;
this._os = config.os;
this._rootDeviceType = config.rootDeviceType;
this._securityGroupIds = config.securityGroupIds;
this._sshKeyName = config.sshKeyName;
this._stackId = config.stackId;
this._state = config.state;
this._status = config.status;
this._subnetId = config.subnetId;
this._tenancy = config.tenancy;
this._virtualizationType = config.virtualizationType;
this._ebsBlockDevice.internalValue = config.ebsBlockDevice;
this._ephemeralBlockDevice.internalValue = config.ephemeralBlockDevice;
this._rootBlockDevice.internalValue = config.rootBlockDevice;
this._timeouts.internalValue = config.timeouts;
}
get agentVersion() {
return this.getStringAttribute('agent_version');
}
set agentVersion(value) {
this._agentVersion = value;
}
resetAgentVersion() {
this._agentVersion = undefined;
}
// Temporarily expose input value. Use with caution.
get agentVersionInput() {
return this._agentVersion;
}
get amiId() {
return this.getStringAttribute('ami_id');
}
set amiId(value) {
this._amiId = value;
}
resetAmiId() {
this._amiId = undefined;
}
// Temporarily expose input value. Use with caution.
get amiIdInput() {
return this._amiId;
}
get architecture() {
return this.getStringAttribute('architecture');
}
set architecture(value) {
this._architecture = value;
}
resetArchitecture() {
this._architecture = undefined;
}
// Temporarily expose input value. Use with caution.
get architectureInput() {
return this._architecture;
}
get autoScalingType() {
return this.getStringAttribute('auto_scaling_type');
}
set autoScalingType(value) {
this._autoScalingType = value;
}
resetAutoScalingType() {
this._autoScalingType = undefined;
}
// Temporarily expose input value. Use with caution.
get autoScalingTypeInput() {
return this._autoScalingType;
}
get availabilityZone() {
return this.getStringAttribute('availability_zone');
}
set availabilityZone(value) {
this._availabilityZone = value;
}
resetAvailabilityZone() {
this._availabilityZone = undefined;
}
// Temporarily expose input value. Use with caution.
get availabilityZoneInput() {
return this._availabilityZone;
}
get createdAt() {
return this.getStringAttribute('created_at');
}
set createdAt(value) {
this._createdAt = value;
}
resetCreatedAt() {
this._createdAt = undefined;
}
// Temporarily expose input value. Use with caution.
get createdAtInput() {
return this._createdAt;
}
get deleteEbs() {
return this.getBooleanAttribute('delete_ebs');
}
set deleteEbs(value) {
this._deleteEbs = value;
}
resetDeleteEbs() {
this._deleteEbs = undefined;
}
// Temporarily expose input value. Use with caution.
get deleteEbsInput() {
return this._deleteEbs;
}
get deleteEip() {
return this.getBooleanAttribute('delete_eip');
}
set deleteEip(value) {
this._deleteEip = value;
}
resetDeleteEip() {
this._deleteEip = undefined;
}
// Temporarily expose input value. Use with caution.
get deleteEipInput() {
return this._deleteEip;
}
get ebsOptimized() {
return this.getBooleanAttribute('ebs_optimized');
}
set ebsOptimized(value) {
this._ebsOptimized = value;
}
resetEbsOptimized() {
this._ebsOptimized = undefined;
}
// Temporarily expose input value. Use with caution.
get ebsOptimizedInput() {
return this._ebsOptimized;
}
// ec2_instance_id - computed: true, optional: false, required: false
get ec2InstanceId() {
return this.getStringAttribute('ec2_instance_id');
}
get ecsClusterArn() {
return this.getStringAttribute('ecs_cluster_arn');
}
set ecsClusterArn(value) {
this._ecsClusterArn = value;
}
resetEcsClusterArn() {
this._ecsClusterArn = undefined;
}
// Temporarily expose input value. Use with caution.
get ecsClusterArnInput() {
return this._ecsClusterArn;
}
get elasticIp() {
return this.getStringAttribute('elastic_ip');
}
set elasticIp(value) {
this._elasticIp = value;
}
resetElasticIp() {
this._elasticIp = undefined;
}
// Temporarily expose input value. Use with caution.
get elasticIpInput() {
return this._elasticIp;
}
get hostname() {
return this.getStringAttribute('hostname');
}
set hostname(value) {
this._hostname = value;
}
resetHostname() {
this._hostname = undefined;
}
// Temporarily expose input value. Use with caution.
get hostnameInput() {
return this._hostname;
}
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 infrastructureClass() {
return this.getStringAttribute('infrastructure_class');
}
set infrastructureClass(value) {
this._infrastructureClass = value;
}
resetInfrastructureClass() {
this._infrastructureClass = undefined;
}
// Temporarily expose input value. Use with caution.
get infrastructureClassInput() {
return this._infrastructureClass;
}
get installUpdatesOnBoot() {
return this.getBooleanAttribute('install_updates_on_boot');
}
set installUpdatesOnBoot(value) {
this._installUpdatesOnBoot = value;
}
resetInstallUpdatesOnBoot() {
this._installUpdatesOnBoot = undefined;
}
// Temporarily expose input value. Use with caution.
get installUpdatesOnBootInput() {
return this._installUpdatesOnBoot;
}
get instanceProfileArn() {
return this.getStringAttribute('instance_profile_arn');
}
set instanceProfileArn(value) {
this._instanceProfileArn = value;
}
resetInstanceProfileArn() {
this._instanceProfileArn = undefined;
}
// Temporarily expose input value. Use with caution.
get instanceProfileArnInput() {
return this._instanceProfileArn;
}
get instanceType() {
return this.getStringAttribute('instance_type');
}
set instanceType(value) {
this._instanceType = value;
}
resetInstanceType() {
this._instanceType = undefined;
}
// Temporarily expose input value. Use with caution.
get instanceTypeInput() {
return this._instanceType;
}
// last_service_error_id - computed: true, optional: false, required: false
get lastServiceErrorId() {
return this.getStringAttribute('last_service_error_id');
}
get layerIds() {
return this.getListAttribute('layer_ids');
}
set layerIds(value) {
this._layerIds = value;
}
// Temporarily expose input value. Use with caution.
get layerIdsInput() {
return this._layerIds;
}
get os() {
return this.getStringAttribute('os');
}
set os(value) {
this._os = value;
}
resetOs() {
this._os = undefined;
}
// Temporarily expose input value. Use with caution.
get osInput() {
return this._os;
}
// platform - computed: true, optional: false, required: false
get platform() {
return this.getStringAttribute('platform');
}
// private_dns - computed: true, optional: false, required: false
get privateDns() {
return this.getStringAttribute('private_dns');
}
// private_ip - computed: true, optional: false, required: false
get privateIp() {
return this.getStringAttribute('private_ip');
}
// public_dns - computed: true, optional: false, required: false
get publicDns() {
return this.getStringAttribute('public_dns');
}
// public_ip - computed: true, optional: false, required: false
get publicIp() {
return this.getStringAttribute('public_ip');
}
// registered_by - computed: true, optional: false, required: false
get registeredBy() {
return this.getStringAttribute('registered_by');
}
// reported_agent_version - computed: true, optional: false, required: false
get reportedAgentVersion() {
return this.getStringAttribute('reported_agent_version');
}
// reported_os_family - computed: true, optional: false, required: false
get reportedOsFamily() {
return this.getStringAttribute('reported_os_family');
}
// reported_os_name - computed: true, optional: false, required: false
get reportedOsName() {
return this.getStringAttribute('reported_os_name');
}
// reported_os_version - computed: true, optional: false, required: false
get reportedOsVersion() {
return this.getStringAttribute('reported_os_version');
}
get rootDeviceType() {
return this.getStringAttribute('root_device_type');
}
set rootDeviceType(value) {
this._rootDeviceType = value;
}
resetRootDeviceType() {
this._rootDeviceType = undefined;
}
// Temporarily expose input value. Use with caution.
get rootDeviceTypeInput() {
return this._rootDeviceType;
}
// root_device_volume_id - computed: true, optional: false, required: false
get rootDeviceVolumeId() {
return this.getStringAttribute('root_device_volume_id');
}
get securityGroupIds() {
return this.getListAttribute('security_group_ids');
}
set securityGroupIds(value) {
this._securityGroupIds = value;
}
resetSecurityGroupIds() {
this._securityGroupIds = undefined;
}
// Temporarily expose input value. Use with caution.
get securityGroupIdsInput() {
return this._securityGroupIds;
}
// ssh_host_dsa_key_fingerprint - computed: true, optional: false, required: false
get sshHostDsaKeyFingerprint() {
return this.getStringAttribute('ssh_host_dsa_key_fingerprint');
}
// ssh_host_rsa_key_fingerprint - computed: true, optional: false, required: false
get sshHostRsaKeyFingerprint() {
return this.getStringAttribute('ssh_host_rsa_key_fingerprint');
}
get sshKeyName() {
return this.getStringAttribute('ssh_key_name');
}
set sshKeyName(value) {
this._sshKeyName = value;
}
resetSshKeyName() {
this._sshKeyName = undefined;
}
// Temporarily expose input value. Use with caution.
get sshKeyNameInput() {
return this._sshKeyName;
}
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 state() {
return this.getStringAttribute('state');
}
set state(value) {
this._state = value;
}
resetState() {
this._state = undefined;
}
// Temporarily expose input value. Use with caution.
get stateInput() {
return this._state;
}
get status() {
return this.getStringAttribute('status');
}
set status(value) {
this._status = value;
}
resetStatus() {
this._status = undefined;
}
// Temporarily expose input value. Use with caution.
get statusInput() {
return this._status;
}
get subnetId() {
return this.getStringAttribute('subnet_id');
}
set subnetId(value) {
this._subnetId = value;
}
resetSubnetId() {
this._subnetId = undefined;
}
// Temporarily expose input value. Use with caution.
get subnetIdInput() {
return this._subnetId;
}
get tenancy() {
return this.getStringAttribute('tenancy');
}
set tenancy(value) {
this._tenancy = value;
}
resetTenancy() {
this._tenancy = undefined;
}
// Temporarily expose input value. Use with caution.
get tenancyInput() {
return this._tenancy;
}
get virtualizationType() {
return this.getStringAttribute('virtualization_type');
}
set virtualizationType(value) {
this._virtualizationType = value;
}
resetVirtualizationType() {
this._virtualizationType = undefined;
}
// Temporarily expose input value. Use with caution.
get virtualizationTypeInput() {
return this._virtualizationType;
}
get ebsBlockDevice() {
return this._ebsBlockDevice;
}
putEbsBlockDevice(value) {
this._ebsBlockDevice.internalValue = value;
}
resetEbsBlockDevice() {
this._ebsBlockDevice.internalValue = undefined;
}
// Temporarily expose input value. Use with caution.
get ebsBlockDeviceInput() {
return this._ebsBlockDevice.internalValue;
}
get ephemeralBlockDevice() {
return this._ephemeralBlockDevice;
}
putEphemeralBlockDevice(value) {
this._ephemeralBlockDevice.internalValue = value;
}
resetEphemeralBlockDevice() {
this._ephemeralBlockDevice.internalValue = undefined;
}
// Temporarily expose input value. Use with caution.
get ephemeralBlockDeviceInput() {
return this._ephemeralBlockDevice.internalValue;
}
get rootBlockDevice() {
return this._rootBlockDevice;
}
putRootBlockDevice(value) {
this._rootBlockDevice.internalValue = value;
}
resetRootBlockDevice() {
this._rootBlockDevice.internalValue = undefined;
}
// Temporarily expose input value. Use with caution.
get rootBlockDeviceInput() {
return this._rootBlockDevice.internalValue;
}
get timeouts() {
return this._timeouts;
}
putTimeouts(value) {
this._timeouts.internalValue = value;
}
resetTimeouts() {
this._timeouts.internalValue = undefined;
}
// Temporarily expose input value. Use with caution.
get timeoutsInput() {
return this._timeouts.internalValue;
}
// =========
// SYNTHESIS
// =========
synthesizeAttributes() {
return {
agent_version: cdktf.stringToTerraform(this._agentVersion),
ami_id: cdktf.stringToTerraform(this._amiId),
architecture: cdktf.stringToTerraform(this._architecture),
auto_scaling_type: cdktf.stringToTerraform(this._autoScalingType),
availability_zone: cdktf.stringToTerraform(this._availabilityZone),
created_at: cdktf.stringToTerraform(this._createdAt),
delete_ebs: cdktf.booleanToTerraform(this._deleteEbs),
delete_eip: cdktf.booleanToTerraform(this._deleteEip),
ebs_optimized: cdktf.booleanToTerraform(this._ebsOptimized),
ecs_cluster_arn: cdktf.stringToTerraform(this._ecsClusterArn),
elastic_ip: cdktf.stringToTerraform(this._elasticIp),
hostname: cdktf.stringToTerraform(this._hostname),
id: cdktf.stringToTerraform(this._id),
infrastructure_class: cdktf.stringToTerraform(this._infrastructureClass),
install_updates_on_boot: cdktf.booleanToTerraform(this._installUpdatesOnBoot),
instance_profile_arn: cdktf.stringToTerraform(this._instanceProfileArn),
instance_type: cdktf.stringToTerraform(this._instanceType),
layer_ids: cdktf.listMapper(cdktf.stringToTerraform, false)(this._layerIds),
os: cdktf.stringToTerraform(this._os),
root_device_type: cdktf.stringToTerraform(this._rootDeviceType),
security_group_ids: cdktf.listMapper(cdktf.stringToTerraform, false)(this._securityGroupIds),
ssh_key_name: cdktf.stringToTerraform(this._sshKeyName),
stack_id: cdktf.stringToTerraform(this._stackId),
state: cdktf.stringToTerraform(this._state),
status: cdktf.stringToTerraform(this._status),
subnet_id: cdktf.stringToTerraform(this._subnetId),
tenancy: cdktf.stringToTerraform(this._tenancy),
virtualization_type: cdktf.stringToTerraform(this._virtualizationType),
ebs_block_device: cdktf.listMapper(opsworksInstanceEbsBlockDeviceToTerraform, true)(this._ebsBlockDevice.internalValue),
ephemeral_block_device: cdktf.listMapper(opsworksInstanceEphemeralBlockDeviceToTerraform, true)(this._ephemeralBlockDevice.internalValue),
root_block_device: cdktf.listMapper(opsworksInstanceRootBlockDeviceToTerraform, true)(this._rootBlockDevice.internalValue),
timeouts: opsworksInstanceTimeoutsToTerraform(this._timeouts.internalValue),
};
}
synthesizeHclAttributes() {
const attrs = {
agent_version: {
value: cdktf.stringToHclTerraform(this._agentVersion),
isBlock: false,
type: "simple",
storageClassType: "string",
},
ami_id: {
value: cdktf.stringToHclTerraform(this._amiId),
isBlock: false,
type: "simple",
storageClassType: "string",
},
architecture: {
value: cdktf.stringToHclTerraform(this._architecture),
isBlock: false,
type: "simple",
storageClassType: "string",
},
auto_scaling_type: {
value: cdktf.stringToHclTerraform(this._autoScalingType),
isBlock: false,
type: "simple",
storageClassType: "string",
},
availability_zone: {
value: cdktf.stringToHclTerraform(this._availabilityZone),
isBlock: false,
type: "simp