@cdktf/provider-kubernetes
Version:
Prebuilt kubernetes Provider for Terraform CDK (cdktf)
941 lines • 806 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, _8, _9, _10, _11, _12, _13, _14, _15, _16;
Object.defineProperty(exports, "__esModule", { value: true });
exports.PersistentVolume = exports.PersistentVolumeTimeoutsOutputReference = exports.PersistentVolumeSpecList = exports.PersistentVolumeSpecOutputReference = exports.PersistentVolumeSpecPersistentVolumeSourceOutputReference = exports.PersistentVolumeSpecPersistentVolumeSourceVsphereVolumeOutputReference = exports.PersistentVolumeSpecPersistentVolumeSourceRbdOutputReference = exports.PersistentVolumeSpecPersistentVolumeSourceRbdSecretRefOutputReference = exports.PersistentVolumeSpecPersistentVolumeSourceQuobyteOutputReference = exports.PersistentVolumeSpecPersistentVolumeSourcePhotonPersistentDiskOutputReference = exports.PersistentVolumeSpecPersistentVolumeSourceNfsOutputReference = exports.PersistentVolumeSpecPersistentVolumeSourceLocalOutputReference = exports.PersistentVolumeSpecPersistentVolumeSourceIscsiOutputReference = exports.PersistentVolumeSpecPersistentVolumeSourceHostPathOutputReference = exports.PersistentVolumeSpecPersistentVolumeSourceGlusterfsOutputReference = exports.PersistentVolumeSpecPersistentVolumeSourceGcePersistentDiskOutputReference = exports.PersistentVolumeSpecPersistentVolumeSourceFlockerOutputReference = exports.PersistentVolumeSpecPersistentVolumeSourceFlexVolumeOutputReference = exports.PersistentVolumeSpecPersistentVolumeSourceFlexVolumeSecretRefOutputReference = exports.PersistentVolumeSpecPersistentVolumeSourceFcOutputReference = exports.PersistentVolumeSpecPersistentVolumeSourceCsiOutputReference = exports.PersistentVolumeSpecPersistentVolumeSourceCsiNodeStageSecretRefOutputReference = exports.PersistentVolumeSpecPersistentVolumeSourceCsiNodePublishSecretRefOutputReference = exports.PersistentVolumeSpecPersistentVolumeSourceCsiControllerPublishSecretRefOutputReference = exports.PersistentVolumeSpecPersistentVolumeSourceCsiControllerExpandSecretRefOutputReference = exports.PersistentVolumeSpecPersistentVolumeSourceCinderOutputReference = exports.PersistentVolumeSpecPersistentVolumeSourceCephFsOutputReference = exports.PersistentVolumeSpecPersistentVolumeSourceCephFsSecretRefOutputReference = exports.PersistentVolumeSpecPersistentVolumeSourceAzureFileOutputReference = exports.PersistentVolumeSpecPersistentVolumeSourceAzureDiskOutputReference = exports.PersistentVolumeSpecPersistentVolumeSourceAwsElasticBlockStoreOutputReference = exports.PersistentVolumeSpecNodeAffinityOutputReference = exports.PersistentVolumeSpecNodeAffinityRequiredOutputReference = exports.PersistentVolumeSpecNodeAffinityRequiredNodeSelectorTermList = exports.PersistentVolumeSpecNodeAffinityRequiredNodeSelectorTermOutputReference = exports.PersistentVolumeSpecNodeAffinityRequiredNodeSelectorTermMatchFieldsList = exports.PersistentVolumeSpecNodeAffinityRequiredNodeSelectorTermMatchFieldsOutputReference = exports.PersistentVolumeSpecNodeAffinityRequiredNodeSelectorTermMatchExpressionsList = exports.PersistentVolumeSpecNodeAffinityRequiredNodeSelectorTermMatchExpressionsOutputReference = exports.PersistentVolumeSpecClaimRefOutputReference = exports.PersistentVolumeMetadataOutputReference = void 0;
exports.persistentVolumeMetadataToTerraform = persistentVolumeMetadataToTerraform;
exports.persistentVolumeMetadataToHclTerraform = persistentVolumeMetadataToHclTerraform;
exports.persistentVolumeSpecClaimRefToTerraform = persistentVolumeSpecClaimRefToTerraform;
exports.persistentVolumeSpecClaimRefToHclTerraform = persistentVolumeSpecClaimRefToHclTerraform;
exports.persistentVolumeSpecNodeAffinityRequiredNodeSelectorTermMatchExpressionsToTerraform = persistentVolumeSpecNodeAffinityRequiredNodeSelectorTermMatchExpressionsToTerraform;
exports.persistentVolumeSpecNodeAffinityRequiredNodeSelectorTermMatchExpressionsToHclTerraform = persistentVolumeSpecNodeAffinityRequiredNodeSelectorTermMatchExpressionsToHclTerraform;
exports.persistentVolumeSpecNodeAffinityRequiredNodeSelectorTermMatchFieldsToTerraform = persistentVolumeSpecNodeAffinityRequiredNodeSelectorTermMatchFieldsToTerraform;
exports.persistentVolumeSpecNodeAffinityRequiredNodeSelectorTermMatchFieldsToHclTerraform = persistentVolumeSpecNodeAffinityRequiredNodeSelectorTermMatchFieldsToHclTerraform;
exports.persistentVolumeSpecNodeAffinityRequiredNodeSelectorTermToTerraform = persistentVolumeSpecNodeAffinityRequiredNodeSelectorTermToTerraform;
exports.persistentVolumeSpecNodeAffinityRequiredNodeSelectorTermToHclTerraform = persistentVolumeSpecNodeAffinityRequiredNodeSelectorTermToHclTerraform;
exports.persistentVolumeSpecNodeAffinityRequiredToTerraform = persistentVolumeSpecNodeAffinityRequiredToTerraform;
exports.persistentVolumeSpecNodeAffinityRequiredToHclTerraform = persistentVolumeSpecNodeAffinityRequiredToHclTerraform;
exports.persistentVolumeSpecNodeAffinityToTerraform = persistentVolumeSpecNodeAffinityToTerraform;
exports.persistentVolumeSpecNodeAffinityToHclTerraform = persistentVolumeSpecNodeAffinityToHclTerraform;
exports.persistentVolumeSpecPersistentVolumeSourceAwsElasticBlockStoreToTerraform = persistentVolumeSpecPersistentVolumeSourceAwsElasticBlockStoreToTerraform;
exports.persistentVolumeSpecPersistentVolumeSourceAwsElasticBlockStoreToHclTerraform = persistentVolumeSpecPersistentVolumeSourceAwsElasticBlockStoreToHclTerraform;
exports.persistentVolumeSpecPersistentVolumeSourceAzureDiskToTerraform = persistentVolumeSpecPersistentVolumeSourceAzureDiskToTerraform;
exports.persistentVolumeSpecPersistentVolumeSourceAzureDiskToHclTerraform = persistentVolumeSpecPersistentVolumeSourceAzureDiskToHclTerraform;
exports.persistentVolumeSpecPersistentVolumeSourceAzureFileToTerraform = persistentVolumeSpecPersistentVolumeSourceAzureFileToTerraform;
exports.persistentVolumeSpecPersistentVolumeSourceAzureFileToHclTerraform = persistentVolumeSpecPersistentVolumeSourceAzureFileToHclTerraform;
exports.persistentVolumeSpecPersistentVolumeSourceCephFsSecretRefToTerraform = persistentVolumeSpecPersistentVolumeSourceCephFsSecretRefToTerraform;
exports.persistentVolumeSpecPersistentVolumeSourceCephFsSecretRefToHclTerraform = persistentVolumeSpecPersistentVolumeSourceCephFsSecretRefToHclTerraform;
exports.persistentVolumeSpecPersistentVolumeSourceCephFsToTerraform = persistentVolumeSpecPersistentVolumeSourceCephFsToTerraform;
exports.persistentVolumeSpecPersistentVolumeSourceCephFsToHclTerraform = persistentVolumeSpecPersistentVolumeSourceCephFsToHclTerraform;
exports.persistentVolumeSpecPersistentVolumeSourceCinderToTerraform = persistentVolumeSpecPersistentVolumeSourceCinderToTerraform;
exports.persistentVolumeSpecPersistentVolumeSourceCinderToHclTerraform = persistentVolumeSpecPersistentVolumeSourceCinderToHclTerraform;
exports.persistentVolumeSpecPersistentVolumeSourceCsiControllerExpandSecretRefToTerraform = persistentVolumeSpecPersistentVolumeSourceCsiControllerExpandSecretRefToTerraform;
exports.persistentVolumeSpecPersistentVolumeSourceCsiControllerExpandSecretRefToHclTerraform = persistentVolumeSpecPersistentVolumeSourceCsiControllerExpandSecretRefToHclTerraform;
exports.persistentVolumeSpecPersistentVolumeSourceCsiControllerPublishSecretRefToTerraform = persistentVolumeSpecPersistentVolumeSourceCsiControllerPublishSecretRefToTerraform;
exports.persistentVolumeSpecPersistentVolumeSourceCsiControllerPublishSecretRefToHclTerraform = persistentVolumeSpecPersistentVolumeSourceCsiControllerPublishSecretRefToHclTerraform;
exports.persistentVolumeSpecPersistentVolumeSourceCsiNodePublishSecretRefToTerraform = persistentVolumeSpecPersistentVolumeSourceCsiNodePublishSecretRefToTerraform;
exports.persistentVolumeSpecPersistentVolumeSourceCsiNodePublishSecretRefToHclTerraform = persistentVolumeSpecPersistentVolumeSourceCsiNodePublishSecretRefToHclTerraform;
exports.persistentVolumeSpecPersistentVolumeSourceCsiNodeStageSecretRefToTerraform = persistentVolumeSpecPersistentVolumeSourceCsiNodeStageSecretRefToTerraform;
exports.persistentVolumeSpecPersistentVolumeSourceCsiNodeStageSecretRefToHclTerraform = persistentVolumeSpecPersistentVolumeSourceCsiNodeStageSecretRefToHclTerraform;
exports.persistentVolumeSpecPersistentVolumeSourceCsiToTerraform = persistentVolumeSpecPersistentVolumeSourceCsiToTerraform;
exports.persistentVolumeSpecPersistentVolumeSourceCsiToHclTerraform = persistentVolumeSpecPersistentVolumeSourceCsiToHclTerraform;
exports.persistentVolumeSpecPersistentVolumeSourceFcToTerraform = persistentVolumeSpecPersistentVolumeSourceFcToTerraform;
exports.persistentVolumeSpecPersistentVolumeSourceFcToHclTerraform = persistentVolumeSpecPersistentVolumeSourceFcToHclTerraform;
exports.persistentVolumeSpecPersistentVolumeSourceFlexVolumeSecretRefToTerraform = persistentVolumeSpecPersistentVolumeSourceFlexVolumeSecretRefToTerraform;
exports.persistentVolumeSpecPersistentVolumeSourceFlexVolumeSecretRefToHclTerraform = persistentVolumeSpecPersistentVolumeSourceFlexVolumeSecretRefToHclTerraform;
exports.persistentVolumeSpecPersistentVolumeSourceFlexVolumeToTerraform = persistentVolumeSpecPersistentVolumeSourceFlexVolumeToTerraform;
exports.persistentVolumeSpecPersistentVolumeSourceFlexVolumeToHclTerraform = persistentVolumeSpecPersistentVolumeSourceFlexVolumeToHclTerraform;
exports.persistentVolumeSpecPersistentVolumeSourceFlockerToTerraform = persistentVolumeSpecPersistentVolumeSourceFlockerToTerraform;
exports.persistentVolumeSpecPersistentVolumeSourceFlockerToHclTerraform = persistentVolumeSpecPersistentVolumeSourceFlockerToHclTerraform;
exports.persistentVolumeSpecPersistentVolumeSourceGcePersistentDiskToTerraform = persistentVolumeSpecPersistentVolumeSourceGcePersistentDiskToTerraform;
exports.persistentVolumeSpecPersistentVolumeSourceGcePersistentDiskToHclTerraform = persistentVolumeSpecPersistentVolumeSourceGcePersistentDiskToHclTerraform;
exports.persistentVolumeSpecPersistentVolumeSourceGlusterfsToTerraform = persistentVolumeSpecPersistentVolumeSourceGlusterfsToTerraform;
exports.persistentVolumeSpecPersistentVolumeSourceGlusterfsToHclTerraform = persistentVolumeSpecPersistentVolumeSourceGlusterfsToHclTerraform;
exports.persistentVolumeSpecPersistentVolumeSourceHostPathToTerraform = persistentVolumeSpecPersistentVolumeSourceHostPathToTerraform;
exports.persistentVolumeSpecPersistentVolumeSourceHostPathToHclTerraform = persistentVolumeSpecPersistentVolumeSourceHostPathToHclTerraform;
exports.persistentVolumeSpecPersistentVolumeSourceIscsiToTerraform = persistentVolumeSpecPersistentVolumeSourceIscsiToTerraform;
exports.persistentVolumeSpecPersistentVolumeSourceIscsiToHclTerraform = persistentVolumeSpecPersistentVolumeSourceIscsiToHclTerraform;
exports.persistentVolumeSpecPersistentVolumeSourceLocalToTerraform = persistentVolumeSpecPersistentVolumeSourceLocalToTerraform;
exports.persistentVolumeSpecPersistentVolumeSourceLocalToHclTerraform = persistentVolumeSpecPersistentVolumeSourceLocalToHclTerraform;
exports.persistentVolumeSpecPersistentVolumeSourceNfsToTerraform = persistentVolumeSpecPersistentVolumeSourceNfsToTerraform;
exports.persistentVolumeSpecPersistentVolumeSourceNfsToHclTerraform = persistentVolumeSpecPersistentVolumeSourceNfsToHclTerraform;
exports.persistentVolumeSpecPersistentVolumeSourcePhotonPersistentDiskToTerraform = persistentVolumeSpecPersistentVolumeSourcePhotonPersistentDiskToTerraform;
exports.persistentVolumeSpecPersistentVolumeSourcePhotonPersistentDiskToHclTerraform = persistentVolumeSpecPersistentVolumeSourcePhotonPersistentDiskToHclTerraform;
exports.persistentVolumeSpecPersistentVolumeSourceQuobyteToTerraform = persistentVolumeSpecPersistentVolumeSourceQuobyteToTerraform;
exports.persistentVolumeSpecPersistentVolumeSourceQuobyteToHclTerraform = persistentVolumeSpecPersistentVolumeSourceQuobyteToHclTerraform;
exports.persistentVolumeSpecPersistentVolumeSourceRbdSecretRefToTerraform = persistentVolumeSpecPersistentVolumeSourceRbdSecretRefToTerraform;
exports.persistentVolumeSpecPersistentVolumeSourceRbdSecretRefToHclTerraform = persistentVolumeSpecPersistentVolumeSourceRbdSecretRefToHclTerraform;
exports.persistentVolumeSpecPersistentVolumeSourceRbdToTerraform = persistentVolumeSpecPersistentVolumeSourceRbdToTerraform;
exports.persistentVolumeSpecPersistentVolumeSourceRbdToHclTerraform = persistentVolumeSpecPersistentVolumeSourceRbdToHclTerraform;
exports.persistentVolumeSpecPersistentVolumeSourceVsphereVolumeToTerraform = persistentVolumeSpecPersistentVolumeSourceVsphereVolumeToTerraform;
exports.persistentVolumeSpecPersistentVolumeSourceVsphereVolumeToHclTerraform = persistentVolumeSpecPersistentVolumeSourceVsphereVolumeToHclTerraform;
exports.persistentVolumeSpecPersistentVolumeSourceToTerraform = persistentVolumeSpecPersistentVolumeSourceToTerraform;
exports.persistentVolumeSpecPersistentVolumeSourceToHclTerraform = persistentVolumeSpecPersistentVolumeSourceToHclTerraform;
exports.persistentVolumeSpecToTerraform = persistentVolumeSpecToTerraform;
exports.persistentVolumeSpecToHclTerraform = persistentVolumeSpecToHclTerraform;
exports.persistentVolumeTimeoutsToTerraform = persistentVolumeTimeoutsToTerraform;
exports.persistentVolumeTimeoutsToHclTerraform = persistentVolumeTimeoutsToHclTerraform;
const JSII_RTTI_SYMBOL_1 = Symbol.for("jsii.rtti");
const cdktf = require("cdktf");
function persistentVolumeMetadataToTerraform(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 {
annotations: cdktf.hashMapper(cdktf.stringToTerraform)(struct.annotations),
labels: cdktf.hashMapper(cdktf.stringToTerraform)(struct.labels),
name: cdktf.stringToTerraform(struct.name),
};
}
function persistentVolumeMetadataToHclTerraform(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 = {
annotations: {
value: cdktf.hashMapperHcl(cdktf.stringToHclTerraform)(struct.annotations),
isBlock: false,
type: "map",
storageClassType: "stringMap",
},
labels: {
value: cdktf.hashMapperHcl(cdktf.stringToHclTerraform)(struct.labels),
isBlock: false,
type: "map",
storageClassType: "stringMap",
},
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));
}
class PersistentVolumeMetadataOutputReference 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._annotations !== undefined) {
hasAnyValues = true;
internalValueResult.annotations = this._annotations;
}
if (this._labels !== undefined) {
hasAnyValues = true;
internalValueResult.labels = this._labels;
}
if (this._name !== undefined) {
hasAnyValues = true;
internalValueResult.name = this._name;
}
return hasAnyValues ? internalValueResult : undefined;
}
set internalValue(value) {
if (value === undefined) {
this.isEmptyObject = false;
this._annotations = undefined;
this._labels = undefined;
this._name = undefined;
}
else {
this.isEmptyObject = Object.keys(value).length === 0;
this._annotations = value.annotations;
this._labels = value.labels;
this._name = value.name;
}
}
get annotations() {
return this.getStringMapAttribute('annotations');
}
set annotations(value) {
this._annotations = value;
}
resetAnnotations() {
this._annotations = undefined;
}
// Temporarily expose input value. Use with caution.
get annotationsInput() {
return this._annotations;
}
// generation - computed: true, optional: false, required: false
get generation() {
return this.getNumberAttribute('generation');
}
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 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;
}
// resource_version - computed: true, optional: false, required: false
get resourceVersion() {
return this.getStringAttribute('resource_version');
}
// uid - computed: true, optional: false, required: false
get uid() {
return this.getStringAttribute('uid');
}
}
exports.PersistentVolumeMetadataOutputReference = PersistentVolumeMetadataOutputReference;
_a = JSII_RTTI_SYMBOL_1;
PersistentVolumeMetadataOutputReference[_a] = { fqn: "@cdktf/provider-kubernetes.persistentVolume.PersistentVolumeMetadataOutputReference", version: "12.1.1" };
function persistentVolumeSpecClaimRefToTerraform(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 persistentVolumeSpecClaimRefToHclTerraform(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 PersistentVolumeSpecClaimRefOutputReference 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.PersistentVolumeSpecClaimRefOutputReference = PersistentVolumeSpecClaimRefOutputReference;
_b = JSII_RTTI_SYMBOL_1;
PersistentVolumeSpecClaimRefOutputReference[_b] = { fqn: "@cdktf/provider-kubernetes.persistentVolume.PersistentVolumeSpecClaimRefOutputReference", version: "12.1.1" };
function persistentVolumeSpecNodeAffinityRequiredNodeSelectorTermMatchExpressionsToTerraform(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),
operator: cdktf.stringToTerraform(struct.operator),
values: cdktf.listMapper(cdktf.stringToTerraform, false)(struct.values),
};
}
function persistentVolumeSpecNodeAffinityRequiredNodeSelectorTermMatchExpressionsToHclTerraform(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",
},
operator: {
value: cdktf.stringToHclTerraform(struct.operator),
isBlock: false,
type: "simple",
storageClassType: "string",
},
values: {
value: cdktf.listMapperHcl(cdktf.stringToHclTerraform, false)(struct.values),
isBlock: false,
type: "set",
storageClassType: "stringList",
},
};
// remove undefined attributes
return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
}
class PersistentVolumeSpecNodeAffinityRequiredNodeSelectorTermMatchExpressionsOutputReference extends cdktf.ComplexObject {
/**
* @param terraformResource The parent resource
* @param terraformAttribute The attribute on the parent resource this class is referencing
* @param complexObjectIndex the index of this item in the list
* @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index)
*/
constructor(terraformResource, terraformAttribute, complexObjectIndex, complexObjectIsFromSet) {
super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex);
this.isEmptyObject = false;
}
get internalValue() {
if (this.resolvableValue) {
return this.resolvableValue;
}
let hasAnyValues = this.isEmptyObject;
const internalValueResult = {};
if (this._key !== undefined) {
hasAnyValues = true;
internalValueResult.key = this._key;
}
if (this._operator !== undefined) {
hasAnyValues = true;
internalValueResult.operator = this._operator;
}
if (this._values !== undefined) {
hasAnyValues = true;
internalValueResult.values = this._values;
}
return hasAnyValues ? internalValueResult : undefined;
}
set internalValue(value) {
if (value === undefined) {
this.isEmptyObject = false;
this.resolvableValue = undefined;
this._key = undefined;
this._operator = undefined;
this._values = undefined;
}
else if (cdktf.Tokenization.isResolvable(value)) {
this.isEmptyObject = false;
this.resolvableValue = value;
}
else {
this.isEmptyObject = Object.keys(value).length === 0;
this.resolvableValue = undefined;
this._key = value.key;
this._operator = value.operator;
this._values = value.values;
}
}
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 operator() {
return this.getStringAttribute('operator');
}
set operator(value) {
this._operator = value;
}
// Temporarily expose input value. Use with caution.
get operatorInput() {
return this._operator;
}
get values() {
return cdktf.Fn.tolist(this.getListAttribute('values'));
}
set values(value) {
this._values = value;
}
resetValues() {
this._values = undefined;
}
// Temporarily expose input value. Use with caution.
get valuesInput() {
return this._values;
}
}
exports.PersistentVolumeSpecNodeAffinityRequiredNodeSelectorTermMatchExpressionsOutputReference = PersistentVolumeSpecNodeAffinityRequiredNodeSelectorTermMatchExpressionsOutputReference;
_c = JSII_RTTI_SYMBOL_1;
PersistentVolumeSpecNodeAffinityRequiredNodeSelectorTermMatchExpressionsOutputReference[_c] = { fqn: "@cdktf/provider-kubernetes.persistentVolume.PersistentVolumeSpecNodeAffinityRequiredNodeSelectorTermMatchExpressionsOutputReference", version: "12.1.1" };
class PersistentVolumeSpecNodeAffinityRequiredNodeSelectorTermMatchExpressionsList 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 PersistentVolumeSpecNodeAffinityRequiredNodeSelectorTermMatchExpressionsOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet);
}
}
exports.PersistentVolumeSpecNodeAffinityRequiredNodeSelectorTermMatchExpressionsList = PersistentVolumeSpecNodeAffinityRequiredNodeSelectorTermMatchExpressionsList;
_d = JSII_RTTI_SYMBOL_1;
PersistentVolumeSpecNodeAffinityRequiredNodeSelectorTermMatchExpressionsList[_d] = { fqn: "@cdktf/provider-kubernetes.persistentVolume.PersistentVolumeSpecNodeAffinityRequiredNodeSelectorTermMatchExpressionsList", version: "12.1.1" };
function persistentVolumeSpecNodeAffinityRequiredNodeSelectorTermMatchFieldsToTerraform(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),
operator: cdktf.stringToTerraform(struct.operator),
values: cdktf.listMapper(cdktf.stringToTerraform, false)(struct.values),
};
}
function persistentVolumeSpecNodeAffinityRequiredNodeSelectorTermMatchFieldsToHclTerraform(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",
},
operator: {
value: cdktf.stringToHclTerraform(struct.operator),
isBlock: false,
type: "simple",
storageClassType: "string",
},
values: {
value: cdktf.listMapperHcl(cdktf.stringToHclTerraform, false)(struct.values),
isBlock: false,
type: "set",
storageClassType: "stringList",
},
};
// remove undefined attributes
return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
}
class PersistentVolumeSpecNodeAffinityRequiredNodeSelectorTermMatchFieldsOutputReference extends cdktf.ComplexObject {
/**
* @param terraformResource The parent resource
* @param terraformAttribute The attribute on the parent resource this class is referencing
* @param complexObjectIndex the index of this item in the list
* @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index)
*/
constructor(terraformResource, terraformAttribute, complexObjectIndex, complexObjectIsFromSet) {
super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex);
this.isEmptyObject = false;
}
get internalValue() {
if (this.resolvableValue) {
return this.resolvableValue;
}
let hasAnyValues = this.isEmptyObject;
const internalValueResult = {};
if (this._key !== undefined) {
hasAnyValues = true;
internalValueResult.key = this._key;
}
if (this._operator !== undefined) {
hasAnyValues = true;
internalValueResult.operator = this._operator;
}
if (this._values !== undefined) {
hasAnyValues = true;
internalValueResult.values = this._values;
}
return hasAnyValues ? internalValueResult : undefined;
}
set internalValue(value) {
if (value === undefined) {
this.isEmptyObject = false;
this.resolvableValue = undefined;
this._key = undefined;
this._operator = undefined;
this._values = undefined;
}
else if (cdktf.Tokenization.isResolvable(value)) {
this.isEmptyObject = false;
this.resolvableValue = value;
}
else {
this.isEmptyObject = Object.keys(value).length === 0;
this.resolvableValue = undefined;
this._key = value.key;
this._operator = value.operator;
this._values = value.values;
}
}
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 operator() {
return this.getStringAttribute('operator');
}
set operator(value) {
this._operator = value;
}
// Temporarily expose input value. Use with caution.
get operatorInput() {
return this._operator;
}
get values() {
return cdktf.Fn.tolist(this.getListAttribute('values'));
}
set values(value) {
this._values = value;
}
resetValues() {
this._values = undefined;
}
// Temporarily expose input value. Use with caution.
get valuesInput() {
return this._values;
}
}
exports.PersistentVolumeSpecNodeAffinityRequiredNodeSelectorTermMatchFieldsOutputReference = PersistentVolumeSpecNodeAffinityRequiredNodeSelectorTermMatchFieldsOutputReference;
_e = JSII_RTTI_SYMBOL_1;
PersistentVolumeSpecNodeAffinityRequiredNodeSelectorTermMatchFieldsOutputReference[_e] = { fqn: "@cdktf/provider-kubernetes.persistentVolume.PersistentVolumeSpecNodeAffinityRequiredNodeSelectorTermMatchFieldsOutputReference", version: "12.1.1" };
class PersistentVolumeSpecNodeAffinityRequiredNodeSelectorTermMatchFieldsList 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 PersistentVolumeSpecNodeAffinityRequiredNodeSelectorTermMatchFieldsOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet);
}
}
exports.PersistentVolumeSpecNodeAffinityRequiredNodeSelectorTermMatchFieldsList = PersistentVolumeSpecNodeAffinityRequiredNodeSelectorTermMatchFieldsList;
_f = JSII_RTTI_SYMBOL_1;
PersistentVolumeSpecNodeAffinityRequiredNodeSelectorTermMatchFieldsList[_f] = { fqn: "@cdktf/provider-kubernetes.persistentVolume.PersistentVolumeSpecNodeAffinityRequiredNodeSelectorTermMatchFieldsList", version: "12.1.1" };
function persistentVolumeSpecNodeAffinityRequiredNodeSelectorTermToTerraform(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 {
match_expressions: cdktf.listMapper(persistentVolumeSpecNodeAffinityRequiredNodeSelectorTermMatchExpressionsToTerraform, true)(struct.matchExpressions),
match_fields: cdktf.listMapper(persistentVolumeSpecNodeAffinityRequiredNodeSelectorTermMatchFieldsToTerraform, true)(struct.matchFields),
};
}
function persistentVolumeSpecNodeAffinityRequiredNodeSelectorTermToHclTerraform(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 = {
match_expressions: {
value: cdktf.listMapperHcl(persistentVolumeSpecNodeAffinityRequiredNodeSelectorTermMatchExpressionsToHclTerraform, true)(struct.matchExpressions),
isBlock: true,
type: "list",
storageClassType: "PersistentVolumeSpecNodeAffinityRequiredNodeSelectorTermMatchExpressionsList",
},
match_fields: {
value: cdktf.listMapperHcl(persistentVolumeSpecNodeAffinityRequiredNodeSelectorTermMatchFieldsToHclTerraform, true)(struct.matchFields),
isBlock: true,
type: "list",
storageClassType: "PersistentVolumeSpecNodeAffinityRequiredNodeSelectorTermMatchFieldsList",
},
};
// remove undefined attributes
return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
}
class PersistentVolumeSpecNodeAffinityRequiredNodeSelectorTermOutputReference 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;
// match_expressions - computed: false, optional: true, required: false
this._matchExpressions = new PersistentVolumeSpecNodeAffinityRequiredNodeSelectorTermMatchExpressionsList(this, "match_expressions", false);
// match_fields - computed: false, optional: true, required: false
this._matchFields = new PersistentVolumeSpecNodeAffinityRequiredNodeSelectorTermMatchFieldsList(this, "match_fields", false);
}
get internalValue() {
if (this.resolvableValue) {
return this.resolvableValue;
}
let hasAnyValues = this.isEmptyObject;
const internalValueResult = {};
if (this._matchExpressions?.internalValue !== undefined) {
hasAnyValues = true;
internalValueResult.matchExpressions = this._matchExpressions?.internalValue;
}
if (this._matchFields?.internalValue !== undefined) {
hasAnyValues = true;
internalValueResult.matchFields = this._matchFields?.internalValue;
}
return hasAnyValues ? internalValueResult : undefined;
}
set internalValue(value) {
if (value === undefined) {
this.isEmptyObject = false;
this.resolvableValue = undefined;
this._matchExpressions.internalValue = undefined;
this._matchFields.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._matchExpressions.internalValue = value.matchExpressions;
this._matchFields.internalValue = value.matchFields;
}
}
get matchExpressions() {
return this._matchExpressions;
}
putMatchExpressions(value) {
this._matchExpressions.internalValue = value;
}
resetMatchExpressions() {
this._matchExpressions.internalValue = undefined;
}
// Temporarily expose input value. Use with caution.
get matchExpressionsInput() {
return this._matchExpressions.internalValue;
}
get matchFields() {
return this._matchFields;
}
putMatchFields(value) {
this._matchFields.internalValue = value;
}
resetMatchFields() {
this._matchFields.internalValue = undefined;
}
// Temporarily expose input value. Use with caution.
get matchFieldsInput() {
return this._matchFields.internalValue;
}
}
exports.PersistentVolumeSpecNodeAffinityRequiredNodeSelectorTermOutputReference = PersistentVolumeSpecNodeAffinityRequiredNodeSelectorTermOutputReference;
_g = JSII_RTTI_SYMBOL_1;
PersistentVolumeSpecNodeAffinityRequiredNodeSelectorTermOutputReference[_g] = { fqn: "@cdktf/provider-kubernetes.persistentVolume.PersistentVolumeSpecNodeAffinityRequiredNodeSelectorTermOutputReference", version: "12.1.1" };
class PersistentVolumeSpecNodeAffinityRequiredNodeSelectorTermList 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 PersistentVolumeSpecNodeAffinityRequiredNodeSelectorTermOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet);
}
}
exports.PersistentVolumeSpecNodeAffinityRequiredNodeSelectorTermList = PersistentVolumeSpecNodeAffinityRequiredNodeSelectorTermList;
_h = JSII_RTTI_SYMBOL_1;
PersistentVolumeSpecNodeAffinityRequiredNodeSelectorTermList[_h] = { fqn: "@cdktf/provider-kubernetes.persistentVolume.PersistentVolumeSpecNodeAffinityRequiredNodeSelectorTermList", version: "12.1.1" };
function persistentVolumeSpecNodeAffinityRequiredToTerraform(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 {
node_selector_term: cdktf.listMapper(persistentVolumeSpecNodeAffinityRequiredNodeSelectorTermToTerraform, true)(struct.nodeSelectorTerm),
};
}
function persistentVolumeSpecNodeAffinityRequiredToHclTerraform(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 = {
node_selector_term: {
value: cdktf.listMapperHcl(persistentVolumeSpecNodeAffinityRequiredNodeSelectorTermToHclTerraform, true)(struct.nodeSelectorTerm),
isBlock: true,
type: "list",
storageClassType: "PersistentVolumeSpecNodeAffinityRequiredNodeSelectorTermList",
},
};
// remove undefined attributes
return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
}
class PersistentVolumeSpecNodeAffinityRequiredOutputReference 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;
// node_selector_term - computed: false, optional: false, required: true
this._nodeSelectorTerm = new PersistentVolumeSpecNodeAffinityRequiredNodeSelectorTermList(this, "node_selector_term", false);
}
get internalValue() {
let hasAnyValues = this.isEmptyObject;
const internalValueResult = {};
if (this._nodeSelectorTerm?.internalValue !== undefined) {
hasAnyValues = true;
internalValueResult.nodeSelectorTerm = this._nodeSelectorTerm?.internalValue;
}
return hasAnyValues ? internalValueResult : undefined;
}
set internalValue(value) {
if (value === undefined) {
this.isEmptyObject = false;
this._nodeSelectorTerm.internalValue = undefined;
}
else {
this.isEmptyObject = Object.keys(value).length === 0;
this._nodeSelectorTerm.internalValue = value.nodeSelectorTerm;
}
}
get nodeSelectorTerm() {
return this._nodeSelectorTerm;
}
putNodeSelectorTerm(value) {
this._nodeSelectorTerm.internalValue = value;
}
// Temporarily expose input value. Use with caution.
get nodeSelectorTermInput() {
return this._nodeSelectorTerm.internalValue;
}
}
exports.PersistentVolumeSpecNodeAffinityRequiredOutputReference = PersistentVolumeSpecNodeAffinityRequiredOutputReference;
_j = JSII_RTTI_SYMBOL_1;
PersistentVolumeSpecNodeAffinityRequiredOutputReference[_j] = { fqn: "@cdktf/provider-kubernetes.persistentVolume.PersistentVolumeSpecNodeAffinityRequiredOutputReference", version: "12.1.1" };
function persistentVolumeSpecNodeAffinityToTerraform(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 {
required: persistentVolumeSpecNodeAffinityRequiredToTerraform(struct.required),
};
}
function persistentVolumeSpecNodeAffinityToHclTerraform(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 = {
required: {
value: persistentVolumeSpecNodeAffinityRequiredToHclTerraform(struct.required),
isBlock: true,
type: "list",
storageClassType: "PersistentVolumeSpecNodeAffinityRequiredList",
},
};
// remove undefined attributes
return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
}
class PersistentVolumeSpecNodeAffinityOutputReference 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;
// required - computed: false, optional: true, required: false
this._required = new PersistentVolumeSpecNodeAffinityRequiredOutputReference(this, "required");
}
get internalValue() {
let hasAnyValues = this.isEmptyObject;
const internalValueResult = {};
if (this._required?.internalValue !== undefined) {
hasAnyValues = true;
internalValueResult.required = this._required?.internalValue;
}
return hasAnyValues ? internalValueResult : undefined;
}
set internalValue(value) {
if (value === undefined) {
this.isEmptyObject = false;
this._required.internalValue = undefined;
}
else {
this.isEmptyObject = Object.keys(value).length === 0;
this._required.internalValue = value.required;
}
}
get required() {
return this._required;
}
putRequired(value) {
this._required.internalValue = value;
}
resetRequired() {
this._required.internalValue = undefined;
}
// Temporarily expose input value. Use with caution.
get requiredInput() {
return this._required.internalValue;
}
}
exports.PersistentVolumeSpecNodeAffinityOutputReference = PersistentVolumeSpecNodeAffinityOutputReference;
_k = JSII_RTTI_SYMBOL_1;
PersistentVolumeSpecNodeAffinityOutputReference[_k] = { fqn: "@cdktf/provider-kubernetes.persistentVolume.PersistentVolumeSpecNodeAffinityOutputReference", version: "12.1.1" };
function persistentVolumeSpecPersistentVolumeSourceAwsElasticBlockStoreToTerraform(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 {
fs_type: cdktf.stringToTerraform(struct.fsType),
partition: cdktf.numberToTerraform(struct.partition),
read_only: cdktf.booleanToTerraform(struct.readOnly),
volume_id: cdktf.stringToTerraform(struct.volumeId),
};
}
function persistentVolumeSpecPersistentVolumeSourceAwsElasticBlockStoreToHclTerraform(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 = {
fs_type: {
value: cdktf.stringToHclTerraform(struct.fsType),
isBlock: false,
type: "simple",
storageClassType: "string",
},
partition: {
value: cdktf.numberToHclTerraform(struct.partition),
isBlock: false,
type: "simple",
storageClassType: "number",
},
read_only: {
value: cdktf.booleanToHclT