@cdktf/provider-kubernetes
Version:
Prebuilt kubernetes Provider for Terraform CDK (cdktf)
1,157 lines • 153 kB
JavaScript
"use strict";
var _a, _b, _c, _d, _e, _f, _g, _h, _j;
Object.defineProperty(exports, "__esModule", { value: true });
exports.Env = exports.EnvMetadataOutputReference = exports.EnvEnvList = exports.EnvEnvOutputReference = exports.EnvEnvValueFromOutputReference = exports.EnvEnvValueFromSecretKeyRefOutputReference = exports.EnvEnvValueFromResourceFieldRefOutputReference = exports.EnvEnvValueFromFieldRefOutputReference = exports.EnvEnvValueFromConfigMapKeyRefOutputReference = void 0;
exports.envEnvValueFromConfigMapKeyRefToTerraform = envEnvValueFromConfigMapKeyRefToTerraform;
exports.envEnvValueFromConfigMapKeyRefToHclTerraform = envEnvValueFromConfigMapKeyRefToHclTerraform;
exports.envEnvValueFromFieldRefToTerraform = envEnvValueFromFieldRefToTerraform;
exports.envEnvValueFromFieldRefToHclTerraform = envEnvValueFromFieldRefToHclTerraform;
exports.envEnvValueFromResourceFieldRefToTerraform = envEnvValueFromResourceFieldRefToTerraform;
exports.envEnvValueFromResourceFieldRefToHclTerraform = envEnvValueFromResourceFieldRefToHclTerraform;
exports.envEnvValueFromSecretKeyRefToTerraform = envEnvValueFromSecretKeyRefToTerraform;
exports.envEnvValueFromSecretKeyRefToHclTerraform = envEnvValueFromSecretKeyRefToHclTerraform;
exports.envEnvValueFromToTerraform = envEnvValueFromToTerraform;
exports.envEnvValueFromToHclTerraform = envEnvValueFromToHclTerraform;
exports.envEnvToTerraform = envEnvToTerraform;
exports.envEnvToHclTerraform = envEnvToHclTerraform;
exports.envMetadataToTerraform = envMetadataToTerraform;
exports.envMetadataToHclTerraform = envMetadataToHclTerraform;
const JSII_RTTI_SYMBOL_1 = Symbol.for("jsii.rtti");
const cdktf = require("cdktf");
function envEnvValueFromConfigMapKeyRefToTerraform(struct) {
if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
return struct;
}
if (cdktf.isComplexElement(struct)) {
throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
}
return {
key: cdktf.stringToTerraform(struct.key),
name: cdktf.stringToTerraform(struct.name),
optional: cdktf.booleanToTerraform(struct.optional),
};
}
function envEnvValueFromConfigMapKeyRefToHclTerraform(struct) {
if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
return struct;
}
if (cdktf.isComplexElement(struct)) {
throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
}
const attrs = {
key: {
value: cdktf.stringToHclTerraform(struct.key),
isBlock: false,
type: "simple",
storageClassType: "string",
},
name: {
value: cdktf.stringToHclTerraform(struct.name),
isBlock: false,
type: "simple",
storageClassType: "string",
},
optional: {
value: cdktf.booleanToHclTerraform(struct.optional),
isBlock: false,
type: "simple",
storageClassType: "boolean",
},
};
// remove undefined attributes
return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
}
class EnvEnvValueFromConfigMapKeyRefOutputReference 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._key !== undefined) {
hasAnyValues = true;
internalValueResult.key = this._key;
}
if (this._name !== undefined) {
hasAnyValues = true;
internalValueResult.name = this._name;
}
if (this._optional !== undefined) {
hasAnyValues = true;
internalValueResult.optional = this._optional;
}
return hasAnyValues ? internalValueResult : undefined;
}
set internalValue(value) {
if (value === undefined) {
this.isEmptyObject = false;
this._key = undefined;
this._name = undefined;
this._optional = undefined;
}
else {
this.isEmptyObject = Object.keys(value).length === 0;
this._key = value.key;
this._name = value.name;
this._optional = value.optional;
}
}
get key() {
return this.getStringAttribute('key');
}
set key(value) {
this._key = value;
}
resetKey() {
this._key = undefined;
}
// Temporarily expose input value. Use with caution.
get keyInput() {
return this._key;
}
get name() {
return this.getStringAttribute('name');
}
set name(value) {
this._name = value;
}
resetName() {
this._name = undefined;
}
// Temporarily expose input value. Use with caution.
get nameInput() {
return this._name;
}
get optional() {
return this.getBooleanAttribute('optional');
}
set optional(value) {
this._optional = value;
}
resetOptional() {
this._optional = undefined;
}
// Temporarily expose input value. Use with caution.
get optionalInput() {
return this._optional;
}
}
exports.EnvEnvValueFromConfigMapKeyRefOutputReference = EnvEnvValueFromConfigMapKeyRefOutputReference;
_a = JSII_RTTI_SYMBOL_1;
EnvEnvValueFromConfigMapKeyRefOutputReference[_a] = { fqn: "@cdktf/provider-kubernetes.env.EnvEnvValueFromConfigMapKeyRefOutputReference", version: "12.1.1" };
function envEnvValueFromFieldRefToTerraform(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 {
api_version: cdktf.stringToTerraform(struct.apiVersion),
field_path: cdktf.stringToTerraform(struct.fieldPath),
};
}
function envEnvValueFromFieldRefToHclTerraform(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 = {
api_version: {
value: cdktf.stringToHclTerraform(struct.apiVersion),
isBlock: false,
type: "simple",
storageClassType: "string",
},
field_path: {
value: cdktf.stringToHclTerraform(struct.fieldPath),
isBlock: false,
type: "simple",
storageClassType: "string",
},
};
// remove undefined attributes
return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
}
class EnvEnvValueFromFieldRefOutputReference 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._apiVersion !== undefined) {
hasAnyValues = true;
internalValueResult.apiVersion = this._apiVersion;
}
if (this._fieldPath !== undefined) {
hasAnyValues = true;
internalValueResult.fieldPath = this._fieldPath;
}
return hasAnyValues ? internalValueResult : undefined;
}
set internalValue(value) {
if (value === undefined) {
this.isEmptyObject = false;
this._apiVersion = undefined;
this._fieldPath = undefined;
}
else {
this.isEmptyObject = Object.keys(value).length === 0;
this._apiVersion = value.apiVersion;
this._fieldPath = value.fieldPath;
}
}
get apiVersion() {
return this.getStringAttribute('api_version');
}
set apiVersion(value) {
this._apiVersion = value;
}
resetApiVersion() {
this._apiVersion = undefined;
}
// Temporarily expose input value. Use with caution.
get apiVersionInput() {
return this._apiVersion;
}
get fieldPath() {
return this.getStringAttribute('field_path');
}
set fieldPath(value) {
this._fieldPath = value;
}
resetFieldPath() {
this._fieldPath = undefined;
}
// Temporarily expose input value. Use with caution.
get fieldPathInput() {
return this._fieldPath;
}
}
exports.EnvEnvValueFromFieldRefOutputReference = EnvEnvValueFromFieldRefOutputReference;
_b = JSII_RTTI_SYMBOL_1;
EnvEnvValueFromFieldRefOutputReference[_b] = { fqn: "@cdktf/provider-kubernetes.env.EnvEnvValueFromFieldRefOutputReference", version: "12.1.1" };
function envEnvValueFromResourceFieldRefToTerraform(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 {
container_name: cdktf.stringToTerraform(struct.containerName),
divisor: cdktf.stringToTerraform(struct.divisor),
resource: cdktf.stringToTerraform(struct.resource),
};
}
function envEnvValueFromResourceFieldRefToHclTerraform(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 = {
container_name: {
value: cdktf.stringToHclTerraform(struct.containerName),
isBlock: false,
type: "simple",
storageClassType: "string",
},
divisor: {
value: cdktf.stringToHclTerraform(struct.divisor),
isBlock: false,
type: "simple",
storageClassType: "string",
},
resource: {
value: cdktf.stringToHclTerraform(struct.resource),
isBlock: false,
type: "simple",
storageClassType: "string",
},
};
// remove undefined attributes
return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
}
class EnvEnvValueFromResourceFieldRefOutputReference 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._containerName !== undefined) {
hasAnyValues = true;
internalValueResult.containerName = this._containerName;
}
if (this._divisor !== undefined) {
hasAnyValues = true;
internalValueResult.divisor = this._divisor;
}
if (this._resource !== undefined) {
hasAnyValues = true;
internalValueResult.resource = this._resource;
}
return hasAnyValues ? internalValueResult : undefined;
}
set internalValue(value) {
if (value === undefined) {
this.isEmptyObject = false;
this._containerName = undefined;
this._divisor = undefined;
this._resource = undefined;
}
else {
this.isEmptyObject = Object.keys(value).length === 0;
this._containerName = value.containerName;
this._divisor = value.divisor;
this._resource = value.resource;
}
}
get containerName() {
return this.getStringAttribute('container_name');
}
set containerName(value) {
this._containerName = value;
}
resetContainerName() {
this._containerName = undefined;
}
// Temporarily expose input value. Use with caution.
get containerNameInput() {
return this._containerName;
}
get divisor() {
return this.getStringAttribute('divisor');
}
set divisor(value) {
this._divisor = value;
}
resetDivisor() {
this._divisor = undefined;
}
// Temporarily expose input value. Use with caution.
get divisorInput() {
return this._divisor;
}
get resource() {
return this.getStringAttribute('resource');
}
set resource(value) {
this._resource = value;
}
// Temporarily expose input value. Use with caution.
get resourceInput() {
return this._resource;
}
}
exports.EnvEnvValueFromResourceFieldRefOutputReference = EnvEnvValueFromResourceFieldRefOutputReference;
_c = JSII_RTTI_SYMBOL_1;
EnvEnvValueFromResourceFieldRefOutputReference[_c] = { fqn: "@cdktf/provider-kubernetes.env.EnvEnvValueFromResourceFieldRefOutputReference", version: "12.1.1" };
function envEnvValueFromSecretKeyRefToTerraform(struct) {
if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
return struct;
}
if (cdktf.isComplexElement(struct)) {
throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
}
return {
key: cdktf.stringToTerraform(struct.key),
name: cdktf.stringToTerraform(struct.name),
optional: cdktf.booleanToTerraform(struct.optional),
};
}
function envEnvValueFromSecretKeyRefToHclTerraform(struct) {
if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
return struct;
}
if (cdktf.isComplexElement(struct)) {
throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
}
const attrs = {
key: {
value: cdktf.stringToHclTerraform(struct.key),
isBlock: false,
type: "simple",
storageClassType: "string",
},
name: {
value: cdktf.stringToHclTerraform(struct.name),
isBlock: false,
type: "simple",
storageClassType: "string",
},
optional: {
value: cdktf.booleanToHclTerraform(struct.optional),
isBlock: false,
type: "simple",
storageClassType: "boolean",
},
};
// remove undefined attributes
return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
}
class EnvEnvValueFromSecretKeyRefOutputReference 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._key !== undefined) {
hasAnyValues = true;
internalValueResult.key = this._key;
}
if (this._name !== undefined) {
hasAnyValues = true;
internalValueResult.name = this._name;
}
if (this._optional !== undefined) {
hasAnyValues = true;
internalValueResult.optional = this._optional;
}
return hasAnyValues ? internalValueResult : undefined;
}
set internalValue(value) {
if (value === undefined) {
this.isEmptyObject = false;
this._key = undefined;
this._name = undefined;
this._optional = undefined;
}
else {
this.isEmptyObject = Object.keys(value).length === 0;
this._key = value.key;
this._name = value.name;
this._optional = value.optional;
}
}
get key() {
return this.getStringAttribute('key');
}
set key(value) {
this._key = value;
}
resetKey() {
this._key = undefined;
}
// Temporarily expose input value. Use with caution.
get keyInput() {
return this._key;
}
get name() {
return this.getStringAttribute('name');
}
set name(value) {
this._name = value;
}
resetName() {
this._name = undefined;
}
// Temporarily expose input value. Use with caution.
get nameInput() {
return this._name;
}
get optional() {
return this.getBooleanAttribute('optional');
}
set optional(value) {
this._optional = value;
}
resetOptional() {
this._optional = undefined;
}
// Temporarily expose input value. Use with caution.
get optionalInput() {
return this._optional;
}
}
exports.EnvEnvValueFromSecretKeyRefOutputReference = EnvEnvValueFromSecretKeyRefOutputReference;
_d = JSII_RTTI_SYMBOL_1;
EnvEnvValueFromSecretKeyRefOutputReference[_d] = { fqn: "@cdktf/provider-kubernetes.env.EnvEnvValueFromSecretKeyRefOutputReference", version: "12.1.1" };
function envEnvValueFromToTerraform(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 {
config_map_key_ref: envEnvValueFromConfigMapKeyRefToTerraform(struct.configMapKeyRef),
field_ref: envEnvValueFromFieldRefToTerraform(struct.fieldRef),
resource_field_ref: envEnvValueFromResourceFieldRefToTerraform(struct.resourceFieldRef),
secret_key_ref: envEnvValueFromSecretKeyRefToTerraform(struct.secretKeyRef),
};
}
function envEnvValueFromToHclTerraform(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 = {
config_map_key_ref: {
value: envEnvValueFromConfigMapKeyRefToHclTerraform(struct.configMapKeyRef),
isBlock: true,
type: "list",
storageClassType: "EnvEnvValueFromConfigMapKeyRefList",
},
field_ref: {
value: envEnvValueFromFieldRefToHclTerraform(struct.fieldRef),
isBlock: true,
type: "list",
storageClassType: "EnvEnvValueFromFieldRefList",
},
resource_field_ref: {
value: envEnvValueFromResourceFieldRefToHclTerraform(struct.resourceFieldRef),
isBlock: true,
type: "list",
storageClassType: "EnvEnvValueFromResourceFieldRefList",
},
secret_key_ref: {
value: envEnvValueFromSecretKeyRefToHclTerraform(struct.secretKeyRef),
isBlock: true,
type: "list",
storageClassType: "EnvEnvValueFromSecretKeyRefList",
},
};
// remove undefined attributes
return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
}
class EnvEnvValueFromOutputReference 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;
// config_map_key_ref - computed: false, optional: true, required: false
this._configMapKeyRef = new EnvEnvValueFromConfigMapKeyRefOutputReference(this, "config_map_key_ref");
// field_ref - computed: false, optional: true, required: false
this._fieldRef = new EnvEnvValueFromFieldRefOutputReference(this, "field_ref");
// resource_field_ref - computed: false, optional: true, required: false
this._resourceFieldRef = new EnvEnvValueFromResourceFieldRefOutputReference(this, "resource_field_ref");
// secret_key_ref - computed: false, optional: true, required: false
this._secretKeyRef = new EnvEnvValueFromSecretKeyRefOutputReference(this, "secret_key_ref");
}
get internalValue() {
let hasAnyValues = this.isEmptyObject;
const internalValueResult = {};
if (this._configMapKeyRef?.internalValue !== undefined) {
hasAnyValues = true;
internalValueResult.configMapKeyRef = this._configMapKeyRef?.internalValue;
}
if (this._fieldRef?.internalValue !== undefined) {
hasAnyValues = true;
internalValueResult.fieldRef = this._fieldRef?.internalValue;
}
if (this._resourceFieldRef?.internalValue !== undefined) {
hasAnyValues = true;
internalValueResult.resourceFieldRef = this._resourceFieldRef?.internalValue;
}
if (this._secretKeyRef?.internalValue !== undefined) {
hasAnyValues = true;
internalValueResult.secretKeyRef = this._secretKeyRef?.internalValue;
}
return hasAnyValues ? internalValueResult : undefined;
}
set internalValue(value) {
if (value === undefined) {
this.isEmptyObject = false;
this._configMapKeyRef.internalValue = undefined;
this._fieldRef.internalValue = undefined;
this._resourceFieldRef.internalValue = undefined;
this._secretKeyRef.internalValue = undefined;
}
else {
this.isEmptyObject = Object.keys(value).length === 0;
this._configMapKeyRef.internalValue = value.configMapKeyRef;
this._fieldRef.internalValue = value.fieldRef;
this._resourceFieldRef.internalValue = value.resourceFieldRef;
this._secretKeyRef.internalValue = value.secretKeyRef;
}
}
get configMapKeyRef() {
return this._configMapKeyRef;
}
putConfigMapKeyRef(value) {
this._configMapKeyRef.internalValue = value;
}
resetConfigMapKeyRef() {
this._configMapKeyRef.internalValue = undefined;
}
// Temporarily expose input value. Use with caution.
get configMapKeyRefInput() {
return this._configMapKeyRef.internalValue;
}
get fieldRef() {
return this._fieldRef;
}
putFieldRef(value) {
this._fieldRef.internalValue = value;
}
resetFieldRef() {
this._fieldRef.internalValue = undefined;
}
// Temporarily expose input value. Use with caution.
get fieldRefInput() {
return this._fieldRef.internalValue;
}
get resourceFieldRef() {
return this._resourceFieldRef;
}
putResourceFieldRef(value) {
this._resourceFieldRef.internalValue = value;
}
resetResourceFieldRef() {
this._resourceFieldRef.internalValue = undefined;
}
// Temporarily expose input value. Use with caution.
get resourceFieldRefInput() {
return this._resourceFieldRef.internalValue;
}
get secretKeyRef() {
return this._secretKeyRef;
}
putSecretKeyRef(value) {
this._secretKeyRef.internalValue = value;
}
resetSecretKeyRef() {
this._secretKeyRef.internalValue = undefined;
}
// Temporarily expose input value. Use with caution.
get secretKeyRefInput() {
return this._secretKeyRef.internalValue;
}
}
exports.EnvEnvValueFromOutputReference = EnvEnvValueFromOutputReference;
_e = JSII_RTTI_SYMBOL_1;
EnvEnvValueFromOutputReference[_e] = { fqn: "@cdktf/provider-kubernetes.env.EnvEnvValueFromOutputReference", version: "12.1.1" };
function envEnvToTerraform(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 {
name: cdktf.stringToTerraform(struct.name),
value: cdktf.stringToTerraform(struct.value),
value_from: envEnvValueFromToTerraform(struct.valueFrom),
};
}
function envEnvToHclTerraform(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 = {
name: {
value: cdktf.stringToHclTerraform(struct.name),
isBlock: false,
type: "simple",
storageClassType: "string",
},
value: {
value: cdktf.stringToHclTerraform(struct.value),
isBlock: false,
type: "simple",
storageClassType: "string",
},
value_from: {
value: envEnvValueFromToHclTerraform(struct.valueFrom),
isBlock: true,
type: "list",
storageClassType: "EnvEnvValueFromList",
},
};
// remove undefined attributes
return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
}
class EnvEnvOutputReference 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;
// value_from - computed: false, optional: true, required: false
this._valueFrom = new EnvEnvValueFromOutputReference(this, "value_from");
}
get internalValue() {
if (this.resolvableValue) {
return this.resolvableValue;
}
let hasAnyValues = this.isEmptyObject;
const internalValueResult = {};
if (this._name !== undefined) {
hasAnyValues = true;
internalValueResult.name = this._name;
}
if (this._value !== undefined) {
hasAnyValues = true;
internalValueResult.value = this._value;
}
if (this._valueFrom?.internalValue !== undefined) {
hasAnyValues = true;
internalValueResult.valueFrom = this._valueFrom?.internalValue;
}
return hasAnyValues ? internalValueResult : undefined;
}
set internalValue(value) {
if (value === undefined) {
this.isEmptyObject = false;
this.resolvableValue = undefined;
this._name = undefined;
this._value = undefined;
this._valueFrom.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._name = value.name;
this._value = value.value;
this._valueFrom.internalValue = value.valueFrom;
}
}
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 value() {
return this.getStringAttribute('value');
}
set value(value) {
this._value = value;
}
resetValue() {
this._value = undefined;
}
// Temporarily expose input value. Use with caution.
get valueInput() {
return this._value;
}
get valueFrom() {
return this._valueFrom;
}
putValueFrom(value) {
this._valueFrom.internalValue = value;
}
resetValueFrom() {
this._valueFrom.internalValue = undefined;
}
// Temporarily expose input value. Use with caution.
get valueFromInput() {
return this._valueFrom.internalValue;
}
}
exports.EnvEnvOutputReference = EnvEnvOutputReference;
_f = JSII_RTTI_SYMBOL_1;
EnvEnvOutputReference[_f] = { fqn: "@cdktf/provider-kubernetes.env.EnvEnvOutputReference", version: "12.1.1" };
class EnvEnvList 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 EnvEnvOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet);
}
}
exports.EnvEnvList = EnvEnvList;
_g = JSII_RTTI_SYMBOL_1;
EnvEnvList[_g] = { fqn: "@cdktf/provider-kubernetes.env.EnvEnvList", version: "12.1.1" };
function envMetadataToTerraform(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 {
name: cdktf.stringToTerraform(struct.name),
namespace: cdktf.stringToTerraform(struct.namespace),
};
}
function envMetadataToHclTerraform(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 = {
name: {
value: cdktf.stringToHclTerraform(struct.name),
isBlock: false,
type: "simple",
storageClassType: "string",
},
namespace: {
value: cdktf.stringToHclTerraform(struct.namespace),
isBlock: false,
type: "simple",
storageClassType: "string",
},
};
// remove undefined attributes
return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
}
class EnvMetadataOutputReference 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._name !== undefined) {
hasAnyValues = true;
internalValueResult.name = this._name;
}
if (this._namespace !== undefined) {
hasAnyValues = true;
internalValueResult.namespace = this._namespace;
}
return hasAnyValues ? internalValueResult : undefined;
}
set internalValue(value) {
if (value === undefined) {
this.isEmptyObject = false;
this._name = undefined;
this._namespace = undefined;
}
else {
this.isEmptyObject = Object.keys(value).length === 0;
this._name = value.name;
this._namespace = value.namespace;
}
}
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 namespace() {
return this.getStringAttribute('namespace');
}
set namespace(value) {
this._namespace = value;
}
resetNamespace() {
this._namespace = undefined;
}
// Temporarily expose input value. Use with caution.
get namespaceInput() {
return this._namespace;
}
}
exports.EnvMetadataOutputReference = EnvMetadataOutputReference;
_h = JSII_RTTI_SYMBOL_1;
EnvMetadataOutputReference[_h] = { fqn: "@cdktf/provider-kubernetes.env.EnvMetadataOutputReference", version: "12.1.1" };
/**
* Represents a {@link https://registry.terraform.io/providers/hashicorp/kubernetes/2.38.0/docs/resources/env kubernetes_env}
*/
class Env extends cdktf.TerraformResource {
// ==============
// STATIC Methods
// ==============
/**
* Generates CDKTF code for importing a Env 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 Env to import
* @param importFromId The id of the existing Env that should be imported. Refer to the {@link https://registry.terraform.io/providers/hashicorp/kubernetes/2.38.0/docs/resources/env#import import section} in the documentation of this resource for the id to use
* @param provider? Optional instance of the provider where the Env to import is found
*/
static generateConfigForImport(scope, importToId, importFromId, provider) {
return new cdktf.ImportableResource(scope, importToId, { terraformResourceType: "kubernetes_env", importId: importFromId, provider });
}
// ===========
// INITIALIZER
// ===========
/**
* Create a new {@link https://registry.terraform.io/providers/hashicorp/kubernetes/2.38.0/docs/resources/env kubernetes_env} 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 EnvConfig
*/
constructor(scope, id, config) {
super(scope, id, {
terraformResourceType: 'kubernetes_env',
terraformGeneratorMetadata: {
providerName: 'kubernetes',
providerVersion: '2.38.0',
providerVersionConstraint: '~> 2.0'
},
provider: config.provider,
dependsOn: config.dependsOn,
count: config.count,
lifecycle: config.lifecycle,
provisioners: config.provisioners,
connection: config.connection,
forEach: config.forEach
});
// env - computed: false, optional: false, required: true
this._env = new EnvEnvList(this, "env", false);
// metadata - computed: false, optional: false, required: true
this._metadata = new EnvMetadataOutputReference(this, "metadata");
this._apiVersion = config.apiVersion;
this._container = config.container;
this._fieldManager = config.fieldManager;
this._force = config.force;
this._id = config.id;
this._initContainer = config.initContainer;
this._kind = config.kind;
this._env.internalValue = config.env;
this._metadata.internalValue = config.metadata;
}
get apiVersion() {
return this.getStringAttribute('api_version');
}
set apiVersion(value) {
this._apiVersion = value;
}
// Temporarily expose input value. Use with caution.
get apiVersionInput() {
return this._apiVersion;
}
get container() {
return this.getStringAttribute('container');
}
set container(value) {
this._container = value;
}
resetContainer() {
this._container = undefined;
}
// Temporarily expose input value. Use with caution.
get containerInput() {
return this._container;
}
get fieldManager() {
return this.getStringAttribute('field_manager');
}
set fieldManager(value) {
this._fieldManager = value;
}
resetFieldManager() {
this._fieldManager = undefined;
}
// Temporarily expose input value. Use with caution.
get fieldManagerInput() {
return this._fieldManager;
}
get force() {
return this.getBooleanAttribute('force');
}
set force(value) {
this._force = value;
}
resetForce() {
this._force = undefined;
}
// Temporarily expose input value. Use with caution.
get forceInput() {
return this._force;
}
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 initContainer() {
return this.getStringAttribute('init_container');
}
set initContainer(value) {
this._initContainer = value;
}
resetInitContainer() {
this._initContainer = undefined;
}
// Temporarily expose input value. Use with caution.
get initContainerInput() {
return this._initContainer;
}
get kind() {
return this.getStringAttribute('kind');
}
set kind(value) {
this._kind = value;
}
// Temporarily expose input value. Use with caution.
get kindInput() {
return this._kind;
}
get env() {
return this._env;
}
putEnv(value) {
this._env.internalValue = value;
}
// Temporarily expose input value. Use with caution.
get envInput() {
return this._env.internalValue;
}
get metadata() {
return this._metadata;
}
putMetadata(value) {
this._metadata.internalValue = value;
}
// Temporarily expose input value. Use with caution.
get metadataInput() {
return this._metadata.internalValue;
}
// =========
// SYNTHESIS
// =========
synthesizeAttributes() {
return {
api_version: cdktf.stringToTerraform(this._apiVersion),
container: cdktf.stringToTerraform(this._container),
field_manager: cdktf.stringToTerraform(this._fieldManager),
force: cdktf.booleanToTerraform(this._force),
id: cdktf.stringToTerraform(this._id),
init_container: cdktf.stringToTerraform(this._initContainer),
kind: cdktf.stringToTerraform(this._kind),
env: cdktf.listMapper(envEnvToTerraform, true)(this._env.internalValue),
metadata: envMetadataToTerraform(this._metadata.internalValue),
};
}
synthesizeHclAttributes() {
const attrs = {
api_version: {
value: cdktf.stringToHclTerraform(this._apiVersion),
isBlock: false,
type: "simple",
storageClassType: "string",
},
container: {
value: cdktf.stringToHclTerraform(this._container),
isBlock: false,
type: "simple",
storageClassType: "string",
},
field_manager: {
value: cdktf.stringToHclTerraform(this._fieldManager),
isBlock: false,
type: "simple",
storageClassType: "string",
},
force: {
value: cdktf.booleanToHclTerraform(this._force),
isBlock: false,
type: "simple",
storageClassType: "boolean",
},
id: {
value: cdktf.stringToHclTerraform(this._id),
isBlock: false,
type: "simple",
storageClassType: "string",
},
init_container: {
value: cdktf.stringToHclTerraform(this._initContainer),
isBlock: false,
type: "simple",
storageClassType: "string",
},
kind: {
value: cdktf.stringToHclTerraform(this._kind),
isBlock: false,
type: "simple",
storageClassType: "string",
},
env: {
value: cdktf.listMapperHcl(envEnvToHclTerraform, true)(this._env.internalValue),
isBlock: true,
type: "list",
storageClassType: "EnvEnvList",
},
metadata: {
value: envMetadataToHclTerraform(this._metadata.internalValue),
isBlock: true,
type: "list",
storageClassType: "EnvMetadataList",
},
};
// remove undefined attributes
return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
}
}
exports.Env = Env;
_j = JSII_RTTI_SYMBOL_1;
Env[_j] = { fqn: "@cdktf/provider-kubernetes.env.Env", version: "12.1.1" };
// =================
// STATIC PROPERTIES
// =================
Env.tfResourceType = "kubernetes_env";
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvZW52L2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7QUEyRkEsOEZBVUM7QUFHRCxvR0E0QkM7QUE2R0QsZ0ZBU0M7QUFHRCxzRkFzQkM7QUF5RkQsZ0dBVUM7QUFHRCxzR0E0QkM7QUFnSEQsd0ZBVUM7QUFHRCw4RkE0QkM7QUF5SEQsZ0VBV0M7QUFHRCxzRUFrQ0M7QUF5SUQsOENBVUM7QUFHRCxvREE0QkM7QUEwSUQsd0RBU0M7QUFHRCw4REFzQkM7O0FBNWlDRCwrQkFBK0I7QUFrRi9CLFNBQWdCLHlDQUF5QyxDQUFDLE1BQXVGO0lBQy9JLElBQUksQ0FBQyxLQUFLLENBQUMsVUFBVSxDQUFDLE1BQU0sQ0FBQyxJQUFJLEtBQUssQ0FBQyxZQUFZLENBQUMsWUFBWSxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUM7UUFBQyxPQUFPLE1BQU0sQ0FBQztJQUFDLENBQUM7SUFDNUYsSUFBSSxLQUFLLENBQUMsZ0JBQWdCLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQztRQUNuQyxNQUFNLElBQUksS0FBSyxDQUFDLG9IQUFvSCxDQUFDLENBQUM7SUFDeEksQ0FBQztJQUNELE9BQU87UUFDTCxHQUFHLEVBQUUsS0FBSyxDQUFDLGlCQUFpQixDQUFDLE1BQU8sQ0FBQyxHQUFHLENBQUM7UUFDekMsSUFBSSxFQUFFLEtBQUssQ0FBQyxpQkFBaUIsQ0FBQyxNQUFPLENBQUMsSUFBSSxDQUFDO1FBQzNDLFFBQVEsRUFBRSxLQUFLLENBQUMsa0JBQWtCLENBQUMsTUFBTyxDQUFDLFFBQVEsQ0FBQztLQUNyRCxDQUFBO0FBQ0gsQ0FBQztBQUdELFNBQWdCLDRDQUE0QyxDQUFDLE1BQXVGO0lBQ2xKLElBQUksQ0FBQyxLQUFLLENBQUMsVUFBVSxDQUFDLE1BQU0sQ0FBQyxJQUFJLEtBQUssQ0FBQyxZQUFZLENBQUMsWUFBWSxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUM7UUFB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