@cdktf/provider-google
Version:
Prebuilt google Provider for Terraform CDK (cdktf)
1,173 lines • 305 kB
JavaScript
"use strict";
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r;
Object.defineProperty(exports, "__esModule", { value: true });
exports.ContainerAwsNodePool = exports.ContainerAwsNodePoolUpdateSettingsOutputReference = exports.containerAwsNodePoolUpdateSettingsToHclTerraform = exports.containerAwsNodePoolUpdateSettingsToTerraform = exports.ContainerAwsNodePoolUpdateSettingsSurgeSettingsOutputReference = exports.containerAwsNodePoolUpdateSettingsSurgeSettingsToHclTerraform = exports.containerAwsNodePoolUpdateSettingsSurgeSettingsToTerraform = exports.ContainerAwsNodePoolTimeoutsOutputReference = exports.containerAwsNodePoolTimeoutsToHclTerraform = exports.containerAwsNodePoolTimeoutsToTerraform = exports.ContainerAwsNodePoolMaxPodsConstraintOutputReference = exports.containerAwsNodePoolMaxPodsConstraintToHclTerraform = exports.containerAwsNodePoolMaxPodsConstraintToTerraform = exports.ContainerAwsNodePoolManagementOutputReference = exports.containerAwsNodePoolManagementToHclTerraform = exports.containerAwsNodePoolManagementToTerraform = exports.ContainerAwsNodePoolKubeletConfigOutputReference = exports.containerAwsNodePoolKubeletConfigToHclTerraform = exports.containerAwsNodePoolKubeletConfigToTerraform = exports.ContainerAwsNodePoolConfigAOutputReference = exports.containerAwsNodePoolConfigAToHclTerraform = exports.containerAwsNodePoolConfigAToTerraform = exports.ContainerAwsNodePoolConfigTaintsList = exports.ContainerAwsNodePoolConfigTaintsOutputReference = exports.containerAwsNodePoolConfigTaintsToHclTerraform = exports.containerAwsNodePoolConfigTaintsToTerraform = exports.ContainerAwsNodePoolConfigSshConfigOutputReference = exports.containerAwsNodePoolConfigSshConfigToHclTerraform = exports.containerAwsNodePoolConfigSshConfigToTerraform = exports.ContainerAwsNodePoolConfigRootVolumeOutputReference = exports.containerAwsNodePoolConfigRootVolumeToHclTerraform = exports.containerAwsNodePoolConfigRootVolumeToTerraform = exports.ContainerAwsNodePoolConfigProxyConfigOutputReference = exports.containerAwsNodePoolConfigProxyConfigToHclTerraform = exports.containerAwsNodePoolConfigProxyConfigToTerraform = exports.ContainerAwsNodePoolConfigConfigEncryptionOutputReference = exports.containerAwsNodePoolConfigConfigEncryptionToHclTerraform = exports.containerAwsNodePoolConfigConfigEncryptionToTerraform = exports.ContainerAwsNodePoolConfigAutoscalingMetricsCollectionOutputReference = exports.containerAwsNodePoolConfigAutoscalingMetricsCollectionToHclTerraform = exports.containerAwsNodePoolConfigAutoscalingMetricsCollectionToTerraform = exports.ContainerAwsNodePoolAutoscalingOutputReference = exports.containerAwsNodePoolAutoscalingToHclTerraform = exports.containerAwsNodePoolAutoscalingToTerraform = void 0;
const JSII_RTTI_SYMBOL_1 = Symbol.for("jsii.rtti");
const cdktf = require("cdktf");
function containerAwsNodePoolAutoscalingToTerraform(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 {
max_node_count: cdktf.numberToTerraform(struct.maxNodeCount),
min_node_count: cdktf.numberToTerraform(struct.minNodeCount),
};
}
exports.containerAwsNodePoolAutoscalingToTerraform = containerAwsNodePoolAutoscalingToTerraform;
function containerAwsNodePoolAutoscalingToHclTerraform(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 = {
max_node_count: {
value: cdktf.numberToHclTerraform(struct.maxNodeCount),
isBlock: false,
type: "simple",
storageClassType: "number",
},
min_node_count: {
value: cdktf.numberToHclTerraform(struct.minNodeCount),
isBlock: false,
type: "simple",
storageClassType: "number",
},
};
// remove undefined attributes
return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
}
exports.containerAwsNodePoolAutoscalingToHclTerraform = containerAwsNodePoolAutoscalingToHclTerraform;
class ContainerAwsNodePoolAutoscalingOutputReference 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._maxNodeCount !== undefined) {
hasAnyValues = true;
internalValueResult.maxNodeCount = this._maxNodeCount;
}
if (this._minNodeCount !== undefined) {
hasAnyValues = true;
internalValueResult.minNodeCount = this._minNodeCount;
}
return hasAnyValues ? internalValueResult : undefined;
}
set internalValue(value) {
if (value === undefined) {
this.isEmptyObject = false;
this._maxNodeCount = undefined;
this._minNodeCount = undefined;
}
else {
this.isEmptyObject = Object.keys(value).length === 0;
this._maxNodeCount = value.maxNodeCount;
this._minNodeCount = value.minNodeCount;
}
}
get maxNodeCount() {
return this.getNumberAttribute('max_node_count');
}
set maxNodeCount(value) {
this._maxNodeCount = value;
}
// Temporarily expose input value. Use with caution.
get maxNodeCountInput() {
return this._maxNodeCount;
}
get minNodeCount() {
return this.getNumberAttribute('min_node_count');
}
set minNodeCount(value) {
this._minNodeCount = value;
}
// Temporarily expose input value. Use with caution.
get minNodeCountInput() {
return this._minNodeCount;
}
}
exports.ContainerAwsNodePoolAutoscalingOutputReference = ContainerAwsNodePoolAutoscalingOutputReference;
_a = JSII_RTTI_SYMBOL_1;
ContainerAwsNodePoolAutoscalingOutputReference[_a] = { fqn: "@cdktf/provider-google.containerAwsNodePool.ContainerAwsNodePoolAutoscalingOutputReference", version: "14.12.0" };
function containerAwsNodePoolConfigAutoscalingMetricsCollectionToTerraform(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 {
granularity: cdktf.stringToTerraform(struct.granularity),
metrics: cdktf.listMapper(cdktf.stringToTerraform, false)(struct.metrics),
};
}
exports.containerAwsNodePoolConfigAutoscalingMetricsCollectionToTerraform = containerAwsNodePoolConfigAutoscalingMetricsCollectionToTerraform;
function containerAwsNodePoolConfigAutoscalingMetricsCollectionToHclTerraform(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 = {
granularity: {
value: cdktf.stringToHclTerraform(struct.granularity),
isBlock: false,
type: "simple",
storageClassType: "string",
},
metrics: {
value: cdktf.listMapperHcl(cdktf.stringToHclTerraform, false)(struct.metrics),
isBlock: false,
type: "list",
storageClassType: "stringList",
},
};
// remove undefined attributes
return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
}
exports.containerAwsNodePoolConfigAutoscalingMetricsCollectionToHclTerraform = containerAwsNodePoolConfigAutoscalingMetricsCollectionToHclTerraform;
class ContainerAwsNodePoolConfigAutoscalingMetricsCollectionOutputReference 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._granularity !== undefined) {
hasAnyValues = true;
internalValueResult.granularity = this._granularity;
}
if (this._metrics !== undefined) {
hasAnyValues = true;
internalValueResult.metrics = this._metrics;
}
return hasAnyValues ? internalValueResult : undefined;
}
set internalValue(value) {
if (value === undefined) {
this.isEmptyObject = false;
this._granularity = undefined;
this._metrics = undefined;
}
else {
this.isEmptyObject = Object.keys(value).length === 0;
this._granularity = value.granularity;
this._metrics = value.metrics;
}
}
get granularity() {
return this.getStringAttribute('granularity');
}
set granularity(value) {
this._granularity = value;
}
// Temporarily expose input value. Use with caution.
get granularityInput() {
return this._granularity;
}
get metrics() {
return this.getListAttribute('metrics');
}
set metrics(value) {
this._metrics = value;
}
resetMetrics() {
this._metrics = undefined;
}
// Temporarily expose input value. Use with caution.
get metricsInput() {
return this._metrics;
}
}
exports.ContainerAwsNodePoolConfigAutoscalingMetricsCollectionOutputReference = ContainerAwsNodePoolConfigAutoscalingMetricsCollectionOutputReference;
_b = JSII_RTTI_SYMBOL_1;
ContainerAwsNodePoolConfigAutoscalingMetricsCollectionOutputReference[_b] = { fqn: "@cdktf/provider-google.containerAwsNodePool.ContainerAwsNodePoolConfigAutoscalingMetricsCollectionOutputReference", version: "14.12.0" };
function containerAwsNodePoolConfigConfigEncryptionToTerraform(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 {
kms_key_arn: cdktf.stringToTerraform(struct.kmsKeyArn),
};
}
exports.containerAwsNodePoolConfigConfigEncryptionToTerraform = containerAwsNodePoolConfigConfigEncryptionToTerraform;
function containerAwsNodePoolConfigConfigEncryptionToHclTerraform(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 = {
kms_key_arn: {
value: cdktf.stringToHclTerraform(struct.kmsKeyArn),
isBlock: false,
type: "simple",
storageClassType: "string",
},
};
// remove undefined attributes
return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
}
exports.containerAwsNodePoolConfigConfigEncryptionToHclTerraform = containerAwsNodePoolConfigConfigEncryptionToHclTerraform;
class ContainerAwsNodePoolConfigConfigEncryptionOutputReference 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._kmsKeyArn !== undefined) {
hasAnyValues = true;
internalValueResult.kmsKeyArn = this._kmsKeyArn;
}
return hasAnyValues ? internalValueResult : undefined;
}
set internalValue(value) {
if (value === undefined) {
this.isEmptyObject = false;
this._kmsKeyArn = undefined;
}
else {
this.isEmptyObject = Object.keys(value).length === 0;
this._kmsKeyArn = value.kmsKeyArn;
}
}
get kmsKeyArn() {
return this.getStringAttribute('kms_key_arn');
}
set kmsKeyArn(value) {
this._kmsKeyArn = value;
}
// Temporarily expose input value. Use with caution.
get kmsKeyArnInput() {
return this._kmsKeyArn;
}
}
exports.ContainerAwsNodePoolConfigConfigEncryptionOutputReference = ContainerAwsNodePoolConfigConfigEncryptionOutputReference;
_c = JSII_RTTI_SYMBOL_1;
ContainerAwsNodePoolConfigConfigEncryptionOutputReference[_c] = { fqn: "@cdktf/provider-google.containerAwsNodePool.ContainerAwsNodePoolConfigConfigEncryptionOutputReference", version: "14.12.0" };
function containerAwsNodePoolConfigProxyConfigToTerraform(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 {
secret_arn: cdktf.stringToTerraform(struct.secretArn),
secret_version: cdktf.stringToTerraform(struct.secretVersion),
};
}
exports.containerAwsNodePoolConfigProxyConfigToTerraform = containerAwsNodePoolConfigProxyConfigToTerraform;
function containerAwsNodePoolConfigProxyConfigToHclTerraform(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 = {
secret_arn: {
value: cdktf.stringToHclTerraform(struct.secretArn),
isBlock: false,
type: "simple",
storageClassType: "string",
},
secret_version: {
value: cdktf.stringToHclTerraform(struct.secretVersion),
isBlock: false,
type: "simple",
storageClassType: "string",
},
};
// remove undefined attributes
return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
}
exports.containerAwsNodePoolConfigProxyConfigToHclTerraform = containerAwsNodePoolConfigProxyConfigToHclTerraform;
class ContainerAwsNodePoolConfigProxyConfigOutputReference 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._secretArn !== undefined) {
hasAnyValues = true;
internalValueResult.secretArn = this._secretArn;
}
if (this._secretVersion !== undefined) {
hasAnyValues = true;
internalValueResult.secretVersion = this._secretVersion;
}
return hasAnyValues ? internalValueResult : undefined;
}
set internalValue(value) {
if (value === undefined) {
this.isEmptyObject = false;
this._secretArn = undefined;
this._secretVersion = undefined;
}
else {
this.isEmptyObject = Object.keys(value).length === 0;
this._secretArn = value.secretArn;
this._secretVersion = value.secretVersion;
}
}
get secretArn() {
return this.getStringAttribute('secret_arn');
}
set secretArn(value) {
this._secretArn = value;
}
// Temporarily expose input value. Use with caution.
get secretArnInput() {
return this._secretArn;
}
get secretVersion() {
return this.getStringAttribute('secret_version');
}
set secretVersion(value) {
this._secretVersion = value;
}
// Temporarily expose input value. Use with caution.
get secretVersionInput() {
return this._secretVersion;
}
}
exports.ContainerAwsNodePoolConfigProxyConfigOutputReference = ContainerAwsNodePoolConfigProxyConfigOutputReference;
_d = JSII_RTTI_SYMBOL_1;
ContainerAwsNodePoolConfigProxyConfigOutputReference[_d] = { fqn: "@cdktf/provider-google.containerAwsNodePool.ContainerAwsNodePoolConfigProxyConfigOutputReference", version: "14.12.0" };
function containerAwsNodePoolConfigRootVolumeToTerraform(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 {
iops: cdktf.numberToTerraform(struct.iops),
kms_key_arn: cdktf.stringToTerraform(struct.kmsKeyArn),
size_gib: cdktf.numberToTerraform(struct.sizeGib),
throughput: cdktf.numberToTerraform(struct.throughput),
volume_type: cdktf.stringToTerraform(struct.volumeType),
};
}
exports.containerAwsNodePoolConfigRootVolumeToTerraform = containerAwsNodePoolConfigRootVolumeToTerraform;
function containerAwsNodePoolConfigRootVolumeToHclTerraform(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 = {
iops: {
value: cdktf.numberToHclTerraform(struct.iops),
isBlock: false,
type: "simple",
storageClassType: "number",
},
kms_key_arn: {
value: cdktf.stringToHclTerraform(struct.kmsKeyArn),
isBlock: false,
type: "simple",
storageClassType: "string",
},
size_gib: {
value: cdktf.numberToHclTerraform(struct.sizeGib),
isBlock: false,
type: "simple",
storageClassType: "number",
},
throughput: {
value: cdktf.numberToHclTerraform(struct.throughput),
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.containerAwsNodePoolConfigRootVolumeToHclTerraform = containerAwsNodePoolConfigRootVolumeToHclTerraform;
class ContainerAwsNodePoolConfigRootVolumeOutputReference 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._iops !== undefined) {
hasAnyValues = true;
internalValueResult.iops = this._iops;
}
if (this._kmsKeyArn !== undefined) {
hasAnyValues = true;
internalValueResult.kmsKeyArn = this._kmsKeyArn;
}
if (this._sizeGib !== undefined) {
hasAnyValues = true;
internalValueResult.sizeGib = this._sizeGib;
}
if (this._throughput !== undefined) {
hasAnyValues = true;
internalValueResult.throughput = this._throughput;
}
if (this._volumeType !== undefined) {
hasAnyValues = true;
internalValueResult.volumeType = this._volumeType;
}
return hasAnyValues ? internalValueResult : undefined;
}
set internalValue(value) {
if (value === undefined) {
this.isEmptyObject = false;
this._iops = undefined;
this._kmsKeyArn = undefined;
this._sizeGib = undefined;
this._throughput = undefined;
this._volumeType = undefined;
}
else {
this.isEmptyObject = Object.keys(value).length === 0;
this._iops = value.iops;
this._kmsKeyArn = value.kmsKeyArn;
this._sizeGib = value.sizeGib;
this._throughput = value.throughput;
this._volumeType = value.volumeType;
}
}
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 kmsKeyArn() {
return this.getStringAttribute('kms_key_arn');
}
set kmsKeyArn(value) {
this._kmsKeyArn = value;
}
resetKmsKeyArn() {
this._kmsKeyArn = undefined;
}
// Temporarily expose input value. Use with caution.
get kmsKeyArnInput() {
return this._kmsKeyArn;
}
get sizeGib() {
return this.getNumberAttribute('size_gib');
}
set sizeGib(value) {
this._sizeGib = value;
}
resetSizeGib() {
this._sizeGib = undefined;
}
// Temporarily expose input value. Use with caution.
get sizeGibInput() {
return this._sizeGib;
}
get throughput() {
return this.getNumberAttribute('throughput');
}
set throughput(value) {
this._throughput = value;
}
resetThroughput() {
this._throughput = undefined;
}
// Temporarily expose input value. Use with caution.
get throughputInput() {
return this._throughput;
}
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.ContainerAwsNodePoolConfigRootVolumeOutputReference = ContainerAwsNodePoolConfigRootVolumeOutputReference;
_e = JSII_RTTI_SYMBOL_1;
ContainerAwsNodePoolConfigRootVolumeOutputReference[_e] = { fqn: "@cdktf/provider-google.containerAwsNodePool.ContainerAwsNodePoolConfigRootVolumeOutputReference", version: "14.12.0" };
function containerAwsNodePoolConfigSshConfigToTerraform(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 {
ec2_key_pair: cdktf.stringToTerraform(struct.ec2KeyPair),
};
}
exports.containerAwsNodePoolConfigSshConfigToTerraform = containerAwsNodePoolConfigSshConfigToTerraform;
function containerAwsNodePoolConfigSshConfigToHclTerraform(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 = {
ec2_key_pair: {
value: cdktf.stringToHclTerraform(struct.ec2KeyPair),
isBlock: false,
type: "simple",
storageClassType: "string",
},
};
// remove undefined attributes
return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
}
exports.containerAwsNodePoolConfigSshConfigToHclTerraform = containerAwsNodePoolConfigSshConfigToHclTerraform;
class ContainerAwsNodePoolConfigSshConfigOutputReference 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._ec2KeyPair !== undefined) {
hasAnyValues = true;
internalValueResult.ec2KeyPair = this._ec2KeyPair;
}
return hasAnyValues ? internalValueResult : undefined;
}
set internalValue(value) {
if (value === undefined) {
this.isEmptyObject = false;
this._ec2KeyPair = undefined;
}
else {
this.isEmptyObject = Object.keys(value).length === 0;
this._ec2KeyPair = value.ec2KeyPair;
}
}
get ec2KeyPair() {
return this.getStringAttribute('ec2_key_pair');
}
set ec2KeyPair(value) {
this._ec2KeyPair = value;
}
// Temporarily expose input value. Use with caution.
get ec2KeyPairInput() {
return this._ec2KeyPair;
}
}
exports.ContainerAwsNodePoolConfigSshConfigOutputReference = ContainerAwsNodePoolConfigSshConfigOutputReference;
_f = JSII_RTTI_SYMBOL_1;
ContainerAwsNodePoolConfigSshConfigOutputReference[_f] = { fqn: "@cdktf/provider-google.containerAwsNodePool.ContainerAwsNodePoolConfigSshConfigOutputReference", version: "14.12.0" };
function containerAwsNodePoolConfigTaintsToTerraform(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 {
effect: cdktf.stringToTerraform(struct.effect),
key: cdktf.stringToTerraform(struct.key),
value: cdktf.stringToTerraform(struct.value),
};
}
exports.containerAwsNodePoolConfigTaintsToTerraform = containerAwsNodePoolConfigTaintsToTerraform;
function containerAwsNodePoolConfigTaintsToHclTerraform(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 = {
effect: {
value: cdktf.stringToHclTerraform(struct.effect),
isBlock: false,
type: "simple",
storageClassType: "string",
},
key: {
value: cdktf.stringToHclTerraform(struct.key),
isBlock: false,
type: "simple",
storageClassType: "string",
},
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.containerAwsNodePoolConfigTaintsToHclTerraform = containerAwsNodePoolConfigTaintsToHclTerraform;
class ContainerAwsNodePoolConfigTaintsOutputReference 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._effect !== undefined) {
hasAnyValues = true;
internalValueResult.effect = this._effect;
}
if (this._key !== undefined) {
hasAnyValues = true;
internalValueResult.key = this._key;
}
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._effect = undefined;
this._key = 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._effect = value.effect;
this._key = value.key;
this._value = value.value;
}
}
get effect() {
return this.getStringAttribute('effect');
}
set effect(value) {
this._effect = value;
}
// Temporarily expose input value. Use with caution.
get effectInput() {
return this._effect;
}
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 value() {
return this.getStringAttribute('value');
}
set value(value) {
this._value = value;
}
// Temporarily expose input value. Use with caution.
get valueInput() {
return this._value;
}
}
exports.ContainerAwsNodePoolConfigTaintsOutputReference = ContainerAwsNodePoolConfigTaintsOutputReference;
_g = JSII_RTTI_SYMBOL_1;
ContainerAwsNodePoolConfigTaintsOutputReference[_g] = { fqn: "@cdktf/provider-google.containerAwsNodePool.ContainerAwsNodePoolConfigTaintsOutputReference", version: "14.12.0" };
class ContainerAwsNodePoolConfigTaintsList 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 ContainerAwsNodePoolConfigTaintsOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet);
}
}
exports.ContainerAwsNodePoolConfigTaintsList = ContainerAwsNodePoolConfigTaintsList;
_h = JSII_RTTI_SYMBOL_1;
ContainerAwsNodePoolConfigTaintsList[_h] = { fqn: "@cdktf/provider-google.containerAwsNodePool.ContainerAwsNodePoolConfigTaintsList", version: "14.12.0" };
function containerAwsNodePoolConfigAToTerraform(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 {
iam_instance_profile: cdktf.stringToTerraform(struct.iamInstanceProfile),
instance_type: cdktf.stringToTerraform(struct.instanceType),
labels: cdktf.hashMapper(cdktf.stringToTerraform)(struct.labels),
security_group_ids: cdktf.listMapper(cdktf.stringToTerraform, false)(struct.securityGroupIds),
tags: cdktf.hashMapper(cdktf.stringToTerraform)(struct.tags),
autoscaling_metrics_collection: containerAwsNodePoolConfigAutoscalingMetricsCollectionToTerraform(struct.autoscalingMetricsCollection),
config_encryption: containerAwsNodePoolConfigConfigEncryptionToTerraform(struct.configEncryption),
proxy_config: containerAwsNodePoolConfigProxyConfigToTerraform(struct.proxyConfig),
root_volume: containerAwsNodePoolConfigRootVolumeToTerraform(struct.rootVolume),
ssh_config: containerAwsNodePoolConfigSshConfigToTerraform(struct.sshConfig),
taints: cdktf.listMapper(containerAwsNodePoolConfigTaintsToTerraform, true)(struct.taints),
};
}
exports.containerAwsNodePoolConfigAToTerraform = containerAwsNodePoolConfigAToTerraform;
function containerAwsNodePoolConfigAToHclTerraform(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 = {
iam_instance_profile: {
value: cdktf.stringToHclTerraform(struct.iamInstanceProfile),
isBlock: false,
type: "simple",
storageClassType: "string",
},
instance_type: {
value: cdktf.stringToHclTerraform(struct.instanceType),
isBlock: false,
type: "simple",
storageClassType: "string",
},
labels: {
value: cdktf.hashMapperHcl(cdktf.stringToHclTerraform)(struct.labels),
isBlock: false,
type: "map",
storageClassType: "stringMap",
},
security_group_ids: {
value: cdktf.listMapperHcl(cdktf.stringToHclTerraform, false)(struct.securityGroupIds),
isBlock: false,
type: "list",
storageClassType: "stringList",
},
tags: {
value: cdktf.hashMapperHcl(cdktf.stringToHclTerraform)(struct.tags),
isBlock: false,
type: "map",
storageClassType: "stringMap",
},
autoscaling_metrics_collection: {
value: containerAwsNodePoolConfigAutoscalingMetricsCollectionToHclTerraform(struct.autoscalingMetricsCollection),
isBlock: true,
type: "list",
storageClassType: "ContainerAwsNodePoolConfigAutoscalingMetricsCollectionList",
},
config_encryption: {
value: containerAwsNodePoolConfigConfigEncryptionToHclTerraform(struct.configEncryption),
isBlock: true,
type: "list",
storageClassType: "ContainerAwsNodePoolConfigConfigEncryptionList",
},
proxy_config: {
value: containerAwsNodePoolConfigProxyConfigToHclTerraform(struct.proxyConfig),
isBlock: true,
type: "list",
storageClassType: "ContainerAwsNodePoolConfigProxyConfigList",
},
root_volume: {
value: containerAwsNodePoolConfigRootVolumeToHclTerraform(struct.rootVolume),
isBlock: true,
type: "list",
storageClassType: "ContainerAwsNodePoolConfigRootVolumeList",
},
ssh_config: {
value: containerAwsNodePoolConfigSshConfigToHclTerraform(struct.sshConfig),
isBlock: true,
type: "list",
storageClassType: "ContainerAwsNodePoolConfigSshConfigList",
},
taints: {
value: cdktf.listMapperHcl(containerAwsNodePoolConfigTaintsToHclTerraform, true)(struct.taints),
isBlock: true,
type: "list",
storageClassType: "ContainerAwsNodePoolConfigTaintsList",
},
};
// remove undefined attributes
return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
}
exports.containerAwsNodePoolConfigAToHclTerraform = containerAwsNodePoolConfigAToHclTerraform;
class ContainerAwsNodePoolConfigAOutputReference 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;
// autoscaling_metrics_collection - computed: false, optional: true, required: false
this._autoscalingMetricsCollection = new ContainerAwsNodePoolConfigAutoscalingMetricsCollectionOutputReference(this, "autoscaling_metrics_collection");
// config_encryption - computed: false, optional: false, required: true
this._configEncryption = new ContainerAwsNodePoolConfigConfigEncryptionOutputReference(this, "config_encryption");
// proxy_config - computed: false, optional: true, required: false
this._proxyConfig = new ContainerAwsNodePoolConfigProxyConfigOutputReference(this, "proxy_config");
// root_volume - computed: false, optional: true, required: false
this._rootVolume = new ContainerAwsNodePoolConfigRootVolumeOutputReference(this, "root_volume");
// ssh_config - computed: false, optional: true, required: false
this._sshConfig = new ContainerAwsNodePoolConfigSshConfigOutputReference(this, "ssh_config");
// taints - computed: false, optional: true, required: false
this._taints = new ContainerAwsNodePoolConfigTaintsList(this, "taints", false);
}
get internalValue() {
let hasAnyValues = this.isEmptyObject;
const internalValueResult = {};
if (this._iamInstanceProfile !== undefined) {
hasAnyValues = true;
internalValueResult.iamInstanceProfile = this._iamInstanceProfile;
}
if (this._instanceType !== undefined) {
hasAnyValues = true;
internalValueResult.instanceType = this._instanceType;
}
if (this._labels !== undefined) {
hasAnyValues = true;
internalValueResult.labels = this._labels;
}
if (this._securityGroupIds !== undefined) {
hasAnyValues = true;
internalValueResult.securityGroupIds = this._securityGroupIds;
}
if (this._tags !== undefined) {
hasAnyValues = true;
internalValueResult.tags = this._tags;
}
if (this._autoscalingMetricsCollection?.internalValue !== undefined) {
hasAnyValues = true;
internalValueResult.autoscalingMetricsCollection = this._autoscalingMetricsCollection?.internalValue;
}
if (this._configEncryption?.internalValue !== undefined) {
hasAnyValues = true;
internalValueResult.configEncryption = this._configEncryption?.internalValue;
}
if (this._proxyConfig?.internalValue !== undefined) {
hasAnyValues = true;
internalValueResult.proxyConfig = this._proxyConfig?.internalValue;
}
if (this._rootVolume?.internalValue !== undefined) {
hasAnyValues = true;
internalValueResult.rootVolume = this._rootVolume?.internalValue;
}
if (this._sshConfig?.internalValue !== undefined) {
hasAnyValues = true;
internalValueResult.sshConfig = this._sshConfig?.internalValue;
}
if (this._taints?.internalValue !== undefined) {
hasAnyValues = true;
internalValueResult.taints = this._taints?.internalValue;
}
return hasAnyValues ? internalValueResult : undefined;
}
set internalValue(value) {
if (value === undefined) {
this.isEmptyObject = false;
this._iamInstanceProfile = undefined;
this._instanceType = undefined;
this._labels = undefined;
this._securityGroupIds = undefined;
this._tags = undefined;
this._autoscalingMetricsCollection.internalValue = undefined;
this._configEncryption.internalValue = undefined;
this._proxyConfig.internalValue = undefined;
this._rootVolume.internalValue = undefined;
this._sshConfig.internalValue = undefined;
this._taints.internalValue = undefined;
}
else {
this.isEmptyObject = Object.keys(value).length === 0;
this._iamInstanceProfile = value.iamInstanceProfile;
this._instanceType = value.instanceType;
this._labels = value.labels;
this._securityGroupIds = value.securityGroupIds;
this._tags = value.tags;
this._autoscalingMetricsCollection.internalValue = value.autoscalingMetricsCollection;
this._configEncryption.internalValue = value.configEncryption;
this._proxyConfig.internalValue = value.proxyConfig;
this._rootVolume.internalValue = value.rootVolume;
this._sshConfig.internalValue = value.sshConfig;
this._taints.internalValue = value.taints;
}
}
get iamInstanceProfile() {
return this.getStringAttribute('iam_instance_profile');
}
set iamInstanceProfile(value) {
this._iamInstanceProfile = value;
}
// Temporarily expose input value. Use with caution.
get iamInstanceProfileInput() {
return this._iamInstanceProfile;
}
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;
}
get labels() {
return this.getStringMapAttribute('labels');
}
set labels(value) {
this._labels = value;
}
resetLabels() {
this._labels = undefined;
}
// Temporarily expose input value. Use with caution.
get labelsInput() {
return this._labels;
}
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;
}
get tags() {
return this.getStringMapAttribute('tags');
}
set tags(value) {
this._tags = value;
}
resetTags() {
this._tags = undefined;
}
// Temporarily expose input value. Use with caution.
get tagsInput() {
return this._tags;
}
get autoscalingMetricsCollection() {
return this._autoscalingMetricsCollection;
}
putAutoscalingMetricsCollection(value) {
this._autoscalingMetricsCollection.internalValue = value;
}
resetAutoscalingMetricsCollection() {
this._autoscalingMetricsCollection.internalValue = undefined;
}
// Temporarily expose input value. Use with caution.
get autoscalingMetricsCollectionInput() {
return this._autoscalingMetricsCollection.internalValue;
}
get configEncryption() {
return this._configEncryption;
}
putConfigEncryption(value) {
this._configEncryption.internalValue = value;
}
// Temporarily expose input value. Use with caution.
get configEncryptionInput() {
return this._configEncryption.internalValue;
}
get proxyConfig() {
return this._proxyConfig;
}
putProxyConfig(value) {
this._proxyConfig.internalValue = value;
}
resetProxyConfig() {
this._proxyConfig.internalValue = undefined;
}
// Temporarily expose input value. Use with caution.
get proxyConfigInput() {
return this._proxyConfig.internalValue;
}
get rootVolume() {
return this._rootVolume;
}
putRootVolume(value) {
this._rootVolume.internalValue = value;
}
resetRootVolume() {
this._rootVolume.internalValue = undefined;
}
// Temporarily expose input value. Use with caution.
get rootVolumeInput() {
return this._rootVolume.internalValue;
}
get sshConfig() {
return this._sshConfig;
}
putSshConfig(value) {
this._sshConfig.internalValue = value;
}
resetSshConfig() {
this._sshConfig.internalValue = undefined;
}
// Temporarily expose input value. Use with caution.
get sshConfigInput() {
return this._sshConfig.internalValue;
}
get taints() {
return this._taints;
}
putTaints(value) {
this._taints.internalValue = value;
}
resetTaints() {
this._taints.internalValue = undefined;
}
// Temporarily expose input value. Use with caution.
get taintsInput() {
return this._taints.internalValue;
}
}
exports.ContainerAwsNodePoolConfigAOutputReference = ContainerAwsNodePoolConfigAOutputReference;
_j = JSII_RTTI_SYMBOL_1;
ContainerAwsNodePoolConfigAOutputReference[_j] = { fqn: "@cdktf/provider-google.containerAwsNodePool.ContainerAwsNodePoolConfigAOutputReference", version: "14.12.0" };
function containerAwsNodePoolKubeletConfigToTerraform(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 {
cpu_cfs_quota: cdktf.booleanToTerraform(struct.cpuCfsQuota),
cpu_cfs_quota_period: cdktf.stringToTerraform(struct.cpuCfsQuotaPeriod),
cpu_manager_policy: cdktf.stringToTerraform(struct.cpuManagerPolicy),
pod_pids_limit: cdktf.numberToTerraform(struct.podPidsLimit),
};
}
exports.containerAwsNodePoolKubeletConfigToTerraform = containerAwsNodePoolKubeletConfigToTerraform;
function containerAwsNodePoolKubeletConfigToHclTerraform(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 = {
cpu_cfs_quota: {
value: cdktf.booleanToHclTerraform(struct.cpuCfsQuota),
isBlock: false,
type: "simple",
storageClassType: "boolean",
},
cpu_cfs_quota_period: {
value: cdktf.stringToHclTerraform(struct.cpuCfsQuotaPeriod),
isBlock: false,
type: "simple",
storageClassType: "string",
},
cpu_manager_policy: {
value: cdktf.stringToHclTerraform(struct.cpuManagerPolicy),
isBlock: false,
type: "simple",
storageClassType: "string",
},
pod_pids_limit: {
value: cdktf.numberToHclTerraform(struct.podPidsLimit),
isBlock: false,
type: "simple",
storageClassType: "number",
},
};
// remove undefined attributes
return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
}
exports.containerAwsNodePoolKubeletConfigToHclTerraform = containerAwsNodePoolKubeletConfigToHclTerraform;
class ContainerAwsNodePoolKubeletConfigOutputReference extends cdktf.ComplexObject {
/**
* @param terraformResource The parent resource
*