@cdktf/provider-azurerm
Version:
Prebuilt azurerm Provider for Terraform CDK (cdktf)
1,045 lines • 612 kB
JavaScript
"use strict";
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t, _u, _v, _w, _x, _y, _z, _0, _1, _2, _3, _4, _5, _6, _7;
Object.defineProperty(exports, "__esModule", { value: true });
exports.VirtualMachineScaleSetOsProfileWindowsConfigWinrmList = exports.VirtualMachineScaleSetOsProfileWindowsConfigWinrmOutputReference = exports.virtualMachineScaleSetOsProfileWindowsConfigWinrmToHclTerraform = exports.virtualMachineScaleSetOsProfileWindowsConfigWinrmToTerraform = exports.VirtualMachineScaleSetOsProfileWindowsConfigAdditionalUnattendConfigList = exports.VirtualMachineScaleSetOsProfileWindowsConfigAdditionalUnattendConfigOutputReference = exports.virtualMachineScaleSetOsProfileWindowsConfigAdditionalUnattendConfigToHclTerraform = exports.virtualMachineScaleSetOsProfileWindowsConfigAdditionalUnattendConfigToTerraform = exports.VirtualMachineScaleSetOsProfileSecretsList = exports.VirtualMachineScaleSetOsProfileSecretsOutputReference = exports.virtualMachineScaleSetOsProfileSecretsToHclTerraform = exports.virtualMachineScaleSetOsProfileSecretsToTerraform = exports.VirtualMachineScaleSetOsProfileSecretsVaultCertificatesList = exports.VirtualMachineScaleSetOsProfileSecretsVaultCertificatesOutputReference = exports.virtualMachineScaleSetOsProfileSecretsVaultCertificatesToHclTerraform = exports.virtualMachineScaleSetOsProfileSecretsVaultCertificatesToTerraform = exports.VirtualMachineScaleSetOsProfileLinuxConfigOutputReference = exports.virtualMachineScaleSetOsProfileLinuxConfigToHclTerraform = exports.virtualMachineScaleSetOsProfileLinuxConfigToTerraform = exports.VirtualMachineScaleSetOsProfileLinuxConfigSshKeysList = exports.VirtualMachineScaleSetOsProfileLinuxConfigSshKeysOutputReference = exports.virtualMachineScaleSetOsProfileLinuxConfigSshKeysToHclTerraform = exports.virtualMachineScaleSetOsProfileLinuxConfigSshKeysToTerraform = exports.VirtualMachineScaleSetOsProfileOutputReference = exports.virtualMachineScaleSetOsProfileToHclTerraform = exports.virtualMachineScaleSetOsProfileToTerraform = exports.VirtualMachineScaleSetNetworkProfileList = exports.VirtualMachineScaleSetNetworkProfileOutputReference = exports.virtualMachineScaleSetNetworkProfileToHclTerraform = exports.virtualMachineScaleSetNetworkProfileToTerraform = exports.VirtualMachineScaleSetNetworkProfileIpConfigurationList = exports.VirtualMachineScaleSetNetworkProfileIpConfigurationOutputReference = exports.virtualMachineScaleSetNetworkProfileIpConfigurationToHclTerraform = exports.virtualMachineScaleSetNetworkProfileIpConfigurationToTerraform = exports.VirtualMachineScaleSetNetworkProfileIpConfigurationPublicIpAddressConfigurationOutputReference = exports.virtualMachineScaleSetNetworkProfileIpConfigurationPublicIpAddressConfigurationToHclTerraform = exports.virtualMachineScaleSetNetworkProfileIpConfigurationPublicIpAddressConfigurationToTerraform = exports.VirtualMachineScaleSetNetworkProfileDnsSettingsOutputReference = exports.virtualMachineScaleSetNetworkProfileDnsSettingsToHclTerraform = exports.virtualMachineScaleSetNetworkProfileDnsSettingsToTerraform = exports.VirtualMachineScaleSetIdentityOutputReference = exports.virtualMachineScaleSetIdentityToHclTerraform = exports.virtualMachineScaleSetIdentityToTerraform = exports.VirtualMachineScaleSetExtensionList = exports.VirtualMachineScaleSetExtensionOutputReference = exports.virtualMachineScaleSetExtensionToHclTerraform = exports.virtualMachineScaleSetExtensionToTerraform = exports.VirtualMachineScaleSetBootDiagnosticsOutputReference = exports.virtualMachineScaleSetBootDiagnosticsToHclTerraform = exports.virtualMachineScaleSetBootDiagnosticsToTerraform = void 0;
exports.VirtualMachineScaleSet = exports.VirtualMachineScaleSetTimeoutsOutputReference = exports.virtualMachineScaleSetTimeoutsToHclTerraform = exports.virtualMachineScaleSetTimeoutsToTerraform = exports.VirtualMachineScaleSetStorageProfileOsDiskOutputReference = exports.virtualMachineScaleSetStorageProfileOsDiskToHclTerraform = exports.virtualMachineScaleSetStorageProfileOsDiskToTerraform = exports.VirtualMachineScaleSetStorageProfileImageReferenceOutputReference = exports.virtualMachineScaleSetStorageProfileImageReferenceToHclTerraform = exports.virtualMachineScaleSetStorageProfileImageReferenceToTerraform = exports.VirtualMachineScaleSetStorageProfileDataDiskList = exports.VirtualMachineScaleSetStorageProfileDataDiskOutputReference = exports.virtualMachineScaleSetStorageProfileDataDiskToHclTerraform = exports.virtualMachineScaleSetStorageProfileDataDiskToTerraform = exports.VirtualMachineScaleSetSkuOutputReference = exports.virtualMachineScaleSetSkuToHclTerraform = exports.virtualMachineScaleSetSkuToTerraform = exports.VirtualMachineScaleSetRollingUpgradePolicyOutputReference = exports.virtualMachineScaleSetRollingUpgradePolicyToHclTerraform = exports.virtualMachineScaleSetRollingUpgradePolicyToTerraform = exports.VirtualMachineScaleSetPlanOutputReference = exports.virtualMachineScaleSetPlanToHclTerraform = exports.virtualMachineScaleSetPlanToTerraform = exports.VirtualMachineScaleSetOsProfileWindowsConfigOutputReference = exports.virtualMachineScaleSetOsProfileWindowsConfigToHclTerraform = exports.virtualMachineScaleSetOsProfileWindowsConfigToTerraform = void 0;
const JSII_RTTI_SYMBOL_1 = Symbol.for("jsii.rtti");
const cdktf = require("cdktf");
function virtualMachineScaleSetBootDiagnosticsToTerraform(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 {
enabled: cdktf.booleanToTerraform(struct.enabled),
storage_uri: cdktf.stringToTerraform(struct.storageUri),
};
}
exports.virtualMachineScaleSetBootDiagnosticsToTerraform = virtualMachineScaleSetBootDiagnosticsToTerraform;
function virtualMachineScaleSetBootDiagnosticsToHclTerraform(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 = {
enabled: {
value: cdktf.booleanToHclTerraform(struct.enabled),
isBlock: false,
type: "simple",
storageClassType: "boolean",
},
storage_uri: {
value: cdktf.stringToHclTerraform(struct.storageUri),
isBlock: false,
type: "simple",
storageClassType: "string",
},
};
// remove undefined attributes
return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
}
exports.virtualMachineScaleSetBootDiagnosticsToHclTerraform = virtualMachineScaleSetBootDiagnosticsToHclTerraform;
class VirtualMachineScaleSetBootDiagnosticsOutputReference 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, 0);
this.isEmptyObject = false;
}
get internalValue() {
let hasAnyValues = this.isEmptyObject;
const internalValueResult = {};
if (this._enabled !== undefined) {
hasAnyValues = true;
internalValueResult.enabled = this._enabled;
}
if (this._storageUri !== undefined) {
hasAnyValues = true;
internalValueResult.storageUri = this._storageUri;
}
return hasAnyValues ? internalValueResult : undefined;
}
set internalValue(value) {
if (value === undefined) {
this.isEmptyObject = false;
this._enabled = undefined;
this._storageUri = undefined;
}
else {
this.isEmptyObject = Object.keys(value).length === 0;
this._enabled = value.enabled;
this._storageUri = value.storageUri;
}
}
get enabled() {
return this.getBooleanAttribute('enabled');
}
set enabled(value) {
this._enabled = value;
}
resetEnabled() {
this._enabled = undefined;
}
// Temporarily expose input value. Use with caution.
get enabledInput() {
return this._enabled;
}
get storageUri() {
return this.getStringAttribute('storage_uri');
}
set storageUri(value) {
this._storageUri = value;
}
// Temporarily expose input value. Use with caution.
get storageUriInput() {
return this._storageUri;
}
}
exports.VirtualMachineScaleSetBootDiagnosticsOutputReference = VirtualMachineScaleSetBootDiagnosticsOutputReference;
_a = JSII_RTTI_SYMBOL_1;
VirtualMachineScaleSetBootDiagnosticsOutputReference[_a] = { fqn: "@cdktf/provider-azurerm.virtualMachineScaleSet.VirtualMachineScaleSetBootDiagnosticsOutputReference", version: "12.27.0" };
function virtualMachineScaleSetExtensionToTerraform(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 {
auto_upgrade_minor_version: cdktf.booleanToTerraform(struct.autoUpgradeMinorVersion),
name: cdktf.stringToTerraform(struct.name),
protected_settings: cdktf.stringToTerraform(struct.protectedSettings),
provision_after_extensions: cdktf.listMapper(cdktf.stringToTerraform, false)(struct.provisionAfterExtensions),
publisher: cdktf.stringToTerraform(struct.publisher),
settings: cdktf.stringToTerraform(struct.settings),
type: cdktf.stringToTerraform(struct.type),
type_handler_version: cdktf.stringToTerraform(struct.typeHandlerVersion),
};
}
exports.virtualMachineScaleSetExtensionToTerraform = virtualMachineScaleSetExtensionToTerraform;
function virtualMachineScaleSetExtensionToHclTerraform(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 = {
auto_upgrade_minor_version: {
value: cdktf.booleanToHclTerraform(struct.autoUpgradeMinorVersion),
isBlock: false,
type: "simple",
storageClassType: "boolean",
},
name: {
value: cdktf.stringToHclTerraform(struct.name),
isBlock: false,
type: "simple",
storageClassType: "string",
},
protected_settings: {
value: cdktf.stringToHclTerraform(struct.protectedSettings),
isBlock: false,
type: "simple",
storageClassType: "string",
},
provision_after_extensions: {
value: cdktf.listMapperHcl(cdktf.stringToHclTerraform, false)(struct.provisionAfterExtensions),
isBlock: false,
type: "set",
storageClassType: "stringList",
},
publisher: {
value: cdktf.stringToHclTerraform(struct.publisher),
isBlock: false,
type: "simple",
storageClassType: "string",
},
settings: {
value: cdktf.stringToHclTerraform(struct.settings),
isBlock: false,
type: "simple",
storageClassType: "string",
},
type: {
value: cdktf.stringToHclTerraform(struct.type),
isBlock: false,
type: "simple",
storageClassType: "string",
},
type_handler_version: {
value: cdktf.stringToHclTerraform(struct.typeHandlerVersion),
isBlock: false,
type: "simple",
storageClassType: "string",
},
};
// remove undefined attributes
return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
}
exports.virtualMachineScaleSetExtensionToHclTerraform = virtualMachineScaleSetExtensionToHclTerraform;
class VirtualMachineScaleSetExtensionOutputReference 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._autoUpgradeMinorVersion !== undefined) {
hasAnyValues = true;
internalValueResult.autoUpgradeMinorVersion = this._autoUpgradeMinorVersion;
}
if (this._name !== undefined) {
hasAnyValues = true;
internalValueResult.name = this._name;
}
if (this._protectedSettings !== undefined) {
hasAnyValues = true;
internalValueResult.protectedSettings = this._protectedSettings;
}
if (this._provisionAfterExtensions !== undefined) {
hasAnyValues = true;
internalValueResult.provisionAfterExtensions = this._provisionAfterExtensions;
}
if (this._publisher !== undefined) {
hasAnyValues = true;
internalValueResult.publisher = this._publisher;
}
if (this._settings !== undefined) {
hasAnyValues = true;
internalValueResult.settings = this._settings;
}
if (this._type !== undefined) {
hasAnyValues = true;
internalValueResult.type = this._type;
}
if (this._typeHandlerVersion !== undefined) {
hasAnyValues = true;
internalValueResult.typeHandlerVersion = this._typeHandlerVersion;
}
return hasAnyValues ? internalValueResult : undefined;
}
set internalValue(value) {
if (value === undefined) {
this.isEmptyObject = false;
this.resolvableValue = undefined;
this._autoUpgradeMinorVersion = undefined;
this._name = undefined;
this._protectedSettings = undefined;
this._provisionAfterExtensions = undefined;
this._publisher = undefined;
this._settings = undefined;
this._type = undefined;
this._typeHandlerVersion = 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._autoUpgradeMinorVersion = value.autoUpgradeMinorVersion;
this._name = value.name;
this._protectedSettings = value.protectedSettings;
this._provisionAfterExtensions = value.provisionAfterExtensions;
this._publisher = value.publisher;
this._settings = value.settings;
this._type = value.type;
this._typeHandlerVersion = value.typeHandlerVersion;
}
}
get autoUpgradeMinorVersion() {
return this.getBooleanAttribute('auto_upgrade_minor_version');
}
set autoUpgradeMinorVersion(value) {
this._autoUpgradeMinorVersion = value;
}
resetAutoUpgradeMinorVersion() {
this._autoUpgradeMinorVersion = undefined;
}
// Temporarily expose input value. Use with caution.
get autoUpgradeMinorVersionInput() {
return this._autoUpgradeMinorVersion;
}
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 protectedSettings() {
return this.getStringAttribute('protected_settings');
}
set protectedSettings(value) {
this._protectedSettings = value;
}
resetProtectedSettings() {
this._protectedSettings = undefined;
}
// Temporarily expose input value. Use with caution.
get protectedSettingsInput() {
return this._protectedSettings;
}
get provisionAfterExtensions() {
return cdktf.Fn.tolist(this.getListAttribute('provision_after_extensions'));
}
set provisionAfterExtensions(value) {
this._provisionAfterExtensions = value;
}
resetProvisionAfterExtensions() {
this._provisionAfterExtensions = undefined;
}
// Temporarily expose input value. Use with caution.
get provisionAfterExtensionsInput() {
return this._provisionAfterExtensions;
}
get publisher() {
return this.getStringAttribute('publisher');
}
set publisher(value) {
this._publisher = value;
}
// Temporarily expose input value. Use with caution.
get publisherInput() {
return this._publisher;
}
get settings() {
return this.getStringAttribute('settings');
}
set settings(value) {
this._settings = value;
}
resetSettings() {
this._settings = undefined;
}
// Temporarily expose input value. Use with caution.
get settingsInput() {
return this._settings;
}
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 typeHandlerVersion() {
return this.getStringAttribute('type_handler_version');
}
set typeHandlerVersion(value) {
this._typeHandlerVersion = value;
}
// Temporarily expose input value. Use with caution.
get typeHandlerVersionInput() {
return this._typeHandlerVersion;
}
}
exports.VirtualMachineScaleSetExtensionOutputReference = VirtualMachineScaleSetExtensionOutputReference;
_b = JSII_RTTI_SYMBOL_1;
VirtualMachineScaleSetExtensionOutputReference[_b] = { fqn: "@cdktf/provider-azurerm.virtualMachineScaleSet.VirtualMachineScaleSetExtensionOutputReference", version: "12.27.0" };
class VirtualMachineScaleSetExtensionList 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 VirtualMachineScaleSetExtensionOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet);
}
}
exports.VirtualMachineScaleSetExtensionList = VirtualMachineScaleSetExtensionList;
_c = JSII_RTTI_SYMBOL_1;
VirtualMachineScaleSetExtensionList[_c] = { fqn: "@cdktf/provider-azurerm.virtualMachineScaleSet.VirtualMachineScaleSetExtensionList", version: "12.27.0" };
function virtualMachineScaleSetIdentityToTerraform(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 {
identity_ids: cdktf.listMapper(cdktf.stringToTerraform, false)(struct.identityIds),
type: cdktf.stringToTerraform(struct.type),
};
}
exports.virtualMachineScaleSetIdentityToTerraform = virtualMachineScaleSetIdentityToTerraform;
function virtualMachineScaleSetIdentityToHclTerraform(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 = {
identity_ids: {
value: cdktf.listMapperHcl(cdktf.stringToHclTerraform, false)(struct.identityIds),
isBlock: false,
type: "set",
storageClassType: "stringList",
},
type: {
value: cdktf.stringToHclTerraform(struct.type),
isBlock: false,
type: "simple",
storageClassType: "string",
},
};
// remove undefined attributes
return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
}
exports.virtualMachineScaleSetIdentityToHclTerraform = virtualMachineScaleSetIdentityToHclTerraform;
class VirtualMachineScaleSetIdentityOutputReference 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, 0);
this.isEmptyObject = false;
}
get internalValue() {
let hasAnyValues = this.isEmptyObject;
const internalValueResult = {};
if (this._identityIds !== undefined) {
hasAnyValues = true;
internalValueResult.identityIds = this._identityIds;
}
if (this._type !== undefined) {
hasAnyValues = true;
internalValueResult.type = this._type;
}
return hasAnyValues ? internalValueResult : undefined;
}
set internalValue(value) {
if (value === undefined) {
this.isEmptyObject = false;
this._identityIds = undefined;
this._type = undefined;
}
else {
this.isEmptyObject = Object.keys(value).length === 0;
this._identityIds = value.identityIds;
this._type = value.type;
}
}
get identityIds() {
return cdktf.Fn.tolist(this.getListAttribute('identity_ids'));
}
set identityIds(value) {
this._identityIds = value;
}
resetIdentityIds() {
this._identityIds = undefined;
}
// Temporarily expose input value. Use with caution.
get identityIdsInput() {
return this._identityIds;
}
// principal_id - computed: true, optional: false, required: false
get principalId() {
return this.getStringAttribute('principal_id');
}
// tenant_id - computed: true, optional: false, required: false
get tenantId() {
return this.getStringAttribute('tenant_id');
}
get type() {
return this.getStringAttribute('type');
}
set type(value) {
this._type = value;
}
// Temporarily expose input value. Use with caution.
get typeInput() {
return this._type;
}
}
exports.VirtualMachineScaleSetIdentityOutputReference = VirtualMachineScaleSetIdentityOutputReference;
_d = JSII_RTTI_SYMBOL_1;
VirtualMachineScaleSetIdentityOutputReference[_d] = { fqn: "@cdktf/provider-azurerm.virtualMachineScaleSet.VirtualMachineScaleSetIdentityOutputReference", version: "12.27.0" };
function virtualMachineScaleSetNetworkProfileDnsSettingsToTerraform(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 {
dns_servers: cdktf.listMapper(cdktf.stringToTerraform, false)(struct.dnsServers),
};
}
exports.virtualMachineScaleSetNetworkProfileDnsSettingsToTerraform = virtualMachineScaleSetNetworkProfileDnsSettingsToTerraform;
function virtualMachineScaleSetNetworkProfileDnsSettingsToHclTerraform(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 = {
dns_servers: {
value: cdktf.listMapperHcl(cdktf.stringToHclTerraform, false)(struct.dnsServers),
isBlock: false,
type: "list",
storageClassType: "stringList",
},
};
// remove undefined attributes
return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
}
exports.virtualMachineScaleSetNetworkProfileDnsSettingsToHclTerraform = virtualMachineScaleSetNetworkProfileDnsSettingsToHclTerraform;
class VirtualMachineScaleSetNetworkProfileDnsSettingsOutputReference 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, 0);
this.isEmptyObject = false;
}
get internalValue() {
let hasAnyValues = this.isEmptyObject;
const internalValueResult = {};
if (this._dnsServers !== undefined) {
hasAnyValues = true;
internalValueResult.dnsServers = this._dnsServers;
}
return hasAnyValues ? internalValueResult : undefined;
}
set internalValue(value) {
if (value === undefined) {
this.isEmptyObject = false;
this._dnsServers = undefined;
}
else {
this.isEmptyObject = Object.keys(value).length === 0;
this._dnsServers = value.dnsServers;
}
}
get dnsServers() {
return this.getListAttribute('dns_servers');
}
set dnsServers(value) {
this._dnsServers = value;
}
// Temporarily expose input value. Use with caution.
get dnsServersInput() {
return this._dnsServers;
}
}
exports.VirtualMachineScaleSetNetworkProfileDnsSettingsOutputReference = VirtualMachineScaleSetNetworkProfileDnsSettingsOutputReference;
_e = JSII_RTTI_SYMBOL_1;
VirtualMachineScaleSetNetworkProfileDnsSettingsOutputReference[_e] = { fqn: "@cdktf/provider-azurerm.virtualMachineScaleSet.VirtualMachineScaleSetNetworkProfileDnsSettingsOutputReference", version: "12.27.0" };
function virtualMachineScaleSetNetworkProfileIpConfigurationPublicIpAddressConfigurationToTerraform(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 {
domain_name_label: cdktf.stringToTerraform(struct.domainNameLabel),
idle_timeout: cdktf.numberToTerraform(struct.idleTimeout),
name: cdktf.stringToTerraform(struct.name),
};
}
exports.virtualMachineScaleSetNetworkProfileIpConfigurationPublicIpAddressConfigurationToTerraform = virtualMachineScaleSetNetworkProfileIpConfigurationPublicIpAddressConfigurationToTerraform;
function virtualMachineScaleSetNetworkProfileIpConfigurationPublicIpAddressConfigurationToHclTerraform(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 = {
domain_name_label: {
value: cdktf.stringToHclTerraform(struct.domainNameLabel),
isBlock: false,
type: "simple",
storageClassType: "string",
},
idle_timeout: {
value: cdktf.numberToHclTerraform(struct.idleTimeout),
isBlock: false,
type: "simple",
storageClassType: "number",
},
name: {
value: cdktf.stringToHclTerraform(struct.name),
isBlock: false,
type: "simple",
storageClassType: "string",
},
};
// remove undefined attributes
return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
}
exports.virtualMachineScaleSetNetworkProfileIpConfigurationPublicIpAddressConfigurationToHclTerraform = virtualMachineScaleSetNetworkProfileIpConfigurationPublicIpAddressConfigurationToHclTerraform;
class VirtualMachineScaleSetNetworkProfileIpConfigurationPublicIpAddressConfigurationOutputReference 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, 0);
this.isEmptyObject = false;
}
get internalValue() {
let hasAnyValues = this.isEmptyObject;
const internalValueResult = {};
if (this._domainNameLabel !== undefined) {
hasAnyValues = true;
internalValueResult.domainNameLabel = this._domainNameLabel;
}
if (this._idleTimeout !== undefined) {
hasAnyValues = true;
internalValueResult.idleTimeout = this._idleTimeout;
}
if (this._name !== undefined) {
hasAnyValues = true;
internalValueResult.name = this._name;
}
return hasAnyValues ? internalValueResult : undefined;
}
set internalValue(value) {
if (value === undefined) {
this.isEmptyObject = false;
this._domainNameLabel = undefined;
this._idleTimeout = undefined;
this._name = undefined;
}
else {
this.isEmptyObject = Object.keys(value).length === 0;
this._domainNameLabel = value.domainNameLabel;
this._idleTimeout = value.idleTimeout;
this._name = value.name;
}
}
get domainNameLabel() {
return this.getStringAttribute('domain_name_label');
}
set domainNameLabel(value) {
this._domainNameLabel = value;
}
// Temporarily expose input value. Use with caution.
get domainNameLabelInput() {
return this._domainNameLabel;
}
get idleTimeout() {
return this.getNumberAttribute('idle_timeout');
}
set idleTimeout(value) {
this._idleTimeout = value;
}
// Temporarily expose input value. Use with caution.
get idleTimeoutInput() {
return this._idleTimeout;
}
get name() {
return this.getStringAttribute('name');
}
set name(value) {
this._name = value;
}
// Temporarily expose input value. Use with caution.
get nameInput() {
return this._name;
}
}
exports.VirtualMachineScaleSetNetworkProfileIpConfigurationPublicIpAddressConfigurationOutputReference = VirtualMachineScaleSetNetworkProfileIpConfigurationPublicIpAddressConfigurationOutputReference;
_f = JSII_RTTI_SYMBOL_1;
VirtualMachineScaleSetNetworkProfileIpConfigurationPublicIpAddressConfigurationOutputReference[_f] = { fqn: "@cdktf/provider-azurerm.virtualMachineScaleSet.VirtualMachineScaleSetNetworkProfileIpConfigurationPublicIpAddressConfigurationOutputReference", version: "12.27.0" };
function virtualMachineScaleSetNetworkProfileIpConfigurationToTerraform(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 {
application_gateway_backend_address_pool_ids: cdktf.listMapper(cdktf.stringToTerraform, false)(struct.applicationGatewayBackendAddressPoolIds),
application_security_group_ids: cdktf.listMapper(cdktf.stringToTerraform, false)(struct.applicationSecurityGroupIds),
load_balancer_backend_address_pool_ids: cdktf.listMapper(cdktf.stringToTerraform, false)(struct.loadBalancerBackendAddressPoolIds),
load_balancer_inbound_nat_rules_ids: cdktf.listMapper(cdktf.stringToTerraform, false)(struct.loadBalancerInboundNatRulesIds),
name: cdktf.stringToTerraform(struct.name),
primary: cdktf.booleanToTerraform(struct.primary),
subnet_id: cdktf.stringToTerraform(struct.subnetId),
public_ip_address_configuration: virtualMachineScaleSetNetworkProfileIpConfigurationPublicIpAddressConfigurationToTerraform(struct.publicIpAddressConfiguration),
};
}
exports.virtualMachineScaleSetNetworkProfileIpConfigurationToTerraform = virtualMachineScaleSetNetworkProfileIpConfigurationToTerraform;
function virtualMachineScaleSetNetworkProfileIpConfigurationToHclTerraform(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 = {
application_gateway_backend_address_pool_ids: {
value: cdktf.listMapperHcl(cdktf.stringToHclTerraform, false)(struct.applicationGatewayBackendAddressPoolIds),
isBlock: false,
type: "set",
storageClassType: "stringList",
},
application_security_group_ids: {
value: cdktf.listMapperHcl(cdktf.stringToHclTerraform, false)(struct.applicationSecurityGroupIds),
isBlock: false,
type: "set",
storageClassType: "stringList",
},
load_balancer_backend_address_pool_ids: {
value: cdktf.listMapperHcl(cdktf.stringToHclTerraform, false)(struct.loadBalancerBackendAddressPoolIds),
isBlock: false,
type: "set",
storageClassType: "stringList",
},
load_balancer_inbound_nat_rules_ids: {
value: cdktf.listMapperHcl(cdktf.stringToHclTerraform, false)(struct.loadBalancerInboundNatRulesIds),
isBlock: false,
type: "set",
storageClassType: "stringList",
},
name: {
value: cdktf.stringToHclTerraform(struct.name),
isBlock: false,
type: "simple",
storageClassType: "string",
},
primary: {
value: cdktf.booleanToHclTerraform(struct.primary),
isBlock: false,
type: "simple",
storageClassType: "boolean",
},
subnet_id: {
value: cdktf.stringToHclTerraform(struct.subnetId),
isBlock: false,
type: "simple",
storageClassType: "string",
},
public_ip_address_configuration: {
value: virtualMachineScaleSetNetworkProfileIpConfigurationPublicIpAddressConfigurationToHclTerraform(struct.publicIpAddressConfiguration),
isBlock: true,
type: "list",
storageClassType: "VirtualMachineScaleSetNetworkProfileIpConfigurationPublicIpAddressConfigurationList",
},
};
// remove undefined attributes
return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
}
exports.virtualMachineScaleSetNetworkProfileIpConfigurationToHclTerraform = virtualMachineScaleSetNetworkProfileIpConfigurationToHclTerraform;
class VirtualMachineScaleSetNetworkProfileIpConfigurationOutputReference 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;
// public_ip_address_configuration - computed: false, optional: true, required: false
this._publicIpAddressConfiguration = new VirtualMachineScaleSetNetworkProfileIpConfigurationPublicIpAddressConfigurationOutputReference(this, "public_ip_address_configuration");
}
get internalValue() {
if (this.resolvableValue) {
return this.resolvableValue;
}
let hasAnyValues = this.isEmptyObject;
const internalValueResult = {};
if (this._applicationGatewayBackendAddressPoolIds !== undefined) {
hasAnyValues = true;
internalValueResult.applicationGatewayBackendAddressPoolIds = this._applicationGatewayBackendAddressPoolIds;
}
if (this._applicationSecurityGroupIds !== undefined) {
hasAnyValues = true;
internalValueResult.applicationSecurityGroupIds = this._applicationSecurityGroupIds;
}
if (this._loadBalancerBackendAddressPoolIds !== undefined) {
hasAnyValues = true;
internalValueResult.loadBalancerBackendAddressPoolIds = this._loadBalancerBackendAddressPoolIds;
}
if (this._loadBalancerInboundNatRulesIds !== undefined) {
hasAnyValues = true;
internalValueResult.loadBalancerInboundNatRulesIds = this._loadBalancerInboundNatRulesIds;
}
if (this._name !== undefined) {
hasAnyValues = true;
internalValueResult.name = this._name;
}
if (this._primary !== undefined) {
hasAnyValues = true;
internalValueResult.primary = this._primary;
}
if (this._subnetId !== undefined) {
hasAnyValues = true;
internalValueResult.subnetId = this._subnetId;
}
if (this._publicIpAddressConfiguration?.internalValue !== undefined) {
hasAnyValues = true;
internalValueResult.publicIpAddressConfiguration = this._publicIpAddressConfiguration?.internalValue;
}
return hasAnyValues ? internalValueResult : undefined;
}
set internalValue(value) {
if (value === undefined) {
this.isEmptyObject = false;
this.resolvableValue = undefined;
this._applicationGatewayBackendAddressPoolIds = undefined;
this._applicationSecurityGroupIds = undefined;
this._loadBalancerBackendAddressPoolIds = undefined;
this._loadBalancerInboundNatRulesIds = undefined;
this._name = undefined;
this._primary = undefined;
this._subnetId = undefined;
this._publicIpAddressConfiguration.internalValue = 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._applicationGatewayBackendAddressPoolIds = value.applicationGatewayBackendAddressPoolIds;
this._applicationSecurityGroupIds = value.applicationSecurityGroupIds;
this._loadBalancerBackendAddressPoolIds = value.loadBalancerBackendAddressPoolIds;
this._loadBalancerInboundNatRulesIds = value.loadBalancerInboundNatRulesIds;
this._name = value.name;
this._primary = value.primary;
this._subnetId = value.subnetId;
this._publicIpAddressConfiguration.internalValue = value.publicIpAddressConfiguration;
}
}
get applicationGatewayBackendAddressPoolIds() {
return cdktf.Fn.tolist(this.getListAttribute('application_gateway_backend_address_pool_ids'));
}
set applicationGatewayBackendAddressPoolIds(value) {
this._applicationGatewayBackendAddressPoolIds = value;
}
resetApplicationGatewayBackendAddressPoolIds() {
this._applicationGatewayBackendAddressPoolIds = undefined;
}
// Temporarily expose input value. Use with caution.
get applicationGatewayBackendAddressPoolIdsInput() {
return this._applicationGatewayBackendAddressPoolIds;
}
get applicationSecurityGroupIds() {
return cdktf.Fn.tolist(this.getListAttribute('application_security_group_ids'));
}
set applicationSecurityGroupIds(value) {
this._applicationSecurityGroupIds = value;
}
resetApplicationSecurityGroupIds() {
this._applicationSecurityGroupIds = undefined;
}
// Temporarily expose input value. Use with caution.
get applicationSecurityGroupIdsInput() {
return this._applicationSecurityGroupIds;
}
get loadBalancerBackendAddressPoolIds() {
return cdktf.Fn.tolist(this.getListAttribute('load_balancer_backend_address_pool_ids'));
}
set loadBalancerBackendAddressPoolIds(value) {
this._loadBalancerBackendAddressPoolIds = value;
}
resetLoadBalancerBackendAddressPoolIds() {
this._loadBalancerBackendAddressPoolIds = undefined;
}
// Temporarily expose input value. Use with caution.
get loadBalancerBackendAddressPoolIdsInput() {
return this._loadBalancerBackendAddressPoolIds;
}
get loadBalancerInboundNatRulesIds() {
return cdktf.Fn.tolist(this.getListAttribute('load_balancer_inbound_nat_rules_ids'));
}
set loadBalancerInboundNatRulesIds(value) {
this._loadBalancerInboundNatRulesIds = value;
}
resetLoadBalancerInboundNatRulesIds() {
this._loadBalancerInboundNatRulesIds = undefined;
}
// Temporarily expose input value. Use with caution.
get loadBalancerInboundNatRulesIdsInput() {
return this._loadBalancerInboundNatRulesIds;
}
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 primary() {
return this.getBooleanAttribute('primary');
}
set primary(value) {
this._primary = value;
}
// Temporarily expose input value. Use with caution.
get primaryInput() {
return this._primary;
}
get subnetId() {
return this.getStringAttribute('subnet_id');
}
set subnetId(value) {
this._subnetId = value;
}
// Temporarily expose input value. Use with caution.
get subnetIdInput() {
return this._subnetId;
}
get publicIpAddressConfiguration() {
return this._publicIpAddressConfiguration;
}
putPublicIpAddressConfiguration(value) {
this._publicIpAddressConfiguration.internalValue = value;
}
resetPublicIpAddressConfiguration() {
this._publicIpAddressConfiguration.internalValue = undefined;
}
// Temporarily expose input value. Use with caution.
get publicIpAddressConfigurationInput() {
return this._publicIpAddressConfiguration.internalValue;
}
}
exports.VirtualMachineScaleSetNetworkProfileIpConfigurationOutputReference = VirtualMachineScaleSetNetworkProfileIpConfigurationOutputReference;
_g = JSII_RTTI_SYMBOL_1;
VirtualMachineScaleSetNetworkProfileIpConfigurationOutputReference[_g] = { fqn: "@cdktf/provider-azurerm.virtualMachineScaleSet.VirtualMachineScaleSetNetworkProfileIpConfigurationOutputReference", version: "12.27.0" };
class VirtualMachineScaleSetNetworkProfileIpConfigurationList 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 VirtualMachineScaleSetNetworkProfileIpConfigurationOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet);
}
}
exports.VirtualMachineScaleSetNetworkProfileIpConfigurationList = VirtualMachineScaleSetNetworkProfileIpConfigurationList;
_h = JSII_RTTI_SYMBOL_1;
VirtualMachineScaleSetNetworkProfileIpConfigurationList[_h] = { fqn: "@cdktf/provider-azurerm.virtualMachineScaleSet.VirtualMachineScaleSetNetworkProfileIpConfigurationList", version: "12.27.0" };
function virtualMachineScaleSetNetworkProfileToTerraform(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 {
accelerated_networking: cdktf.booleanToTerraform(struct.acceleratedNetworking),
ip_forwarding: cdktf.booleanToTerraform(struct.ipForwarding),
name: cdktf.stringToTerraform(struct.name),
network_security_group_id: cdktf.stringToTerraform(struct.networkSecurityGroupId),
primary: cdktf.booleanToTerraform(struct.primary),
dns_settings: virtualMachineScaleSetNetworkProfileDnsSettingsToTerraform(struct.dnsSettings),
ip_configuration: cdktf.listMapper(virtualMachineScaleSetNetworkProfileIpConfigurationToTerraform, true)(struct.ipConfiguration),
};
}
exports.virtualMachineScaleSetNetworkProfileToTerraform = virtualMachineScaleSetNetworkProfileToTerraform;
function virtualMachineScaleSetNetworkProfileToHclTerraform(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 = {
accelerated_networking: {
value: cdktf.booleanToHclTerraform(struct.acceleratedNetworking),
isBlock: false,
type: "simple",
storageClassType: "boolean",
},
ip_forwarding: {
value: cdktf.booleanToHclTerraform(struct.ipForwarding),
isBlock: false,
type: "simple",
storageClassType: "boolean",
},
name: {
value: cdktf.stringToHclTerraform(struct.name),
isBlock: false,
type: "simple",
storageClassType: "string",
},
network_security_group_id: {
value: cdktf.stringToHclTerraform(struct.networkSecurityGroupId),
isBlock: false,
type: "simple",
storageClassType: "string",
},
primary: {
value: cdktf.booleanToHclTerraform(struct.primary),
isBlock: false,
type: "simple",
storageClassType: "boolean",
},
dns_settings: {
value: virtualMachineScaleSetNetworkProfileDnsSettingsToHclTerraform(struct.dnsSettings),
isBlock: true,
type: "list",
storageClassType: "VirtualMachineScaleSetNetworkProfileDnsSettingsList",
},
ip_configuration: {
value: cdktf.listMapperHcl(virtualMachineScaleSetNetworkProfileIpConfigurationToHclTerraform, true)(struct.ipConfiguration),
isBlock: true,
type: "list",
storageClassType: "VirtualMachineScaleSetNetworkProfileIpConfigurationList",
},
};
// remove undefined attributes
return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
}
exports.virtualMachineScaleSetNetworkProfileToHclTerraform = virtualMachineScaleSetNetworkProfileToHclTerraform;
class VirtualMachineScaleSetNetworkProfileOutputReference extends cdktf.ComplexObject {
/**
* @param terraformResource The parent resource
* @param terraformAttribute The attribute on the parent resource this class is referen