@cdktf/provider-kubernetes
Version:
Prebuilt kubernetes Provider for Terraform CDK (cdktf)
463 lines (462 loc) • 21.6 kB
TypeScript
/**
* Copyright (c) HashiCorp, Inc.
* SPDX-License-Identifier: MPL-2.0
*/
import { Construct } from 'constructs';
import * as cdktf from 'cdktf';
export interface EnvConfig extends cdktf.TerraformMetaArguments {
/**
* Resource API version
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/kubernetes/2.37.1/docs/resources/env#api_version Env#api_version}
*/
readonly apiVersion: string;
/**
* Name of the container for which we are updating the environment variables.
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/kubernetes/2.37.1/docs/resources/env#container Env#container}
*/
readonly container?: string;
/**
* Set the name of the field manager for the specified environment variables.
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/kubernetes/2.37.1/docs/resources/env#field_manager Env#field_manager}
*/
readonly fieldManager?: string;
/**
* Force overwriting environments that were created or edited outside of Terraform.
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/kubernetes/2.37.1/docs/resources/env#force Env#force}
*/
readonly force?: boolean | cdktf.IResolvable;
/**
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/kubernetes/2.37.1/docs/resources/env#id Env#id}
*
* Please be aware that the id field is automatically added to all resources in Terraform providers using a Terraform provider SDK version below 2.
* If you experience problems setting this value it might not be settable. Please take a look at the provider documentation to ensure it should be settable.
*/
readonly id?: string;
/**
* Name of the initContainer for which we are updating the environment variables.
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/kubernetes/2.37.1/docs/resources/env#init_container Env#init_container}
*/
readonly initContainer?: string;
/**
* Resource Kind
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/kubernetes/2.37.1/docs/resources/env#kind Env#kind}
*/
readonly kind: string;
/**
* env block
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/kubernetes/2.37.1/docs/resources/env#env Env#env}
*/
readonly env: EnvEnv[] | cdktf.IResolvable;
/**
* metadata block
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/kubernetes/2.37.1/docs/resources/env#metadata Env#metadata}
*/
readonly metadata: EnvMetadata;
}
export interface EnvEnvValueFromConfigMapKeyRef {
/**
* The key to select.
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/kubernetes/2.37.1/docs/resources/env#key Env#key}
*/
readonly key?: string;
/**
* Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/kubernetes/2.37.1/docs/resources/env#name Env#name}
*/
readonly name?: string;
/**
* Specify whether the ConfigMap or its key must be defined.
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/kubernetes/2.37.1/docs/resources/env#optional Env#optional}
*/
readonly optional?: boolean | cdktf.IResolvable;
}
export declare function envEnvValueFromConfigMapKeyRefToTerraform(struct?: EnvEnvValueFromConfigMapKeyRefOutputReference | EnvEnvValueFromConfigMapKeyRef): any;
export declare function envEnvValueFromConfigMapKeyRefToHclTerraform(struct?: EnvEnvValueFromConfigMapKeyRefOutputReference | EnvEnvValueFromConfigMapKeyRef): any;
export declare class EnvEnvValueFromConfigMapKeyRefOutputReference extends cdktf.ComplexObject {
private isEmptyObject;
/**
* @param terraformResource The parent resource
* @param terraformAttribute The attribute on the parent resource this class is referencing
*/
constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string);
get internalValue(): EnvEnvValueFromConfigMapKeyRef | undefined;
set internalValue(value: EnvEnvValueFromConfigMapKeyRef | undefined);
private _key?;
get key(): string;
set key(value: string);
resetKey(): void;
get keyInput(): string | undefined;
private _name?;
get name(): string;
set name(value: string);
resetName(): void;
get nameInput(): string | undefined;
private _optional?;
get optional(): boolean | cdktf.IResolvable;
set optional(value: boolean | cdktf.IResolvable);
resetOptional(): void;
get optionalInput(): boolean | cdktf.IResolvable | undefined;
}
export interface EnvEnvValueFromFieldRef {
/**
* Version of the schema the FieldPath is written in terms of, defaults to "v1".
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/kubernetes/2.37.1/docs/resources/env#api_version Env#api_version}
*/
readonly apiVersion?: string;
/**
* Path of the field to select in the specified API version
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/kubernetes/2.37.1/docs/resources/env#field_path Env#field_path}
*/
readonly fieldPath?: string;
}
export declare function envEnvValueFromFieldRefToTerraform(struct?: EnvEnvValueFromFieldRefOutputReference | EnvEnvValueFromFieldRef): any;
export declare function envEnvValueFromFieldRefToHclTerraform(struct?: EnvEnvValueFromFieldRefOutputReference | EnvEnvValueFromFieldRef): any;
export declare class EnvEnvValueFromFieldRefOutputReference extends cdktf.ComplexObject {
private isEmptyObject;
/**
* @param terraformResource The parent resource
* @param terraformAttribute The attribute on the parent resource this class is referencing
*/
constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string);
get internalValue(): EnvEnvValueFromFieldRef | undefined;
set internalValue(value: EnvEnvValueFromFieldRef | undefined);
private _apiVersion?;
get apiVersion(): string;
set apiVersion(value: string);
resetApiVersion(): void;
get apiVersionInput(): string | undefined;
private _fieldPath?;
get fieldPath(): string;
set fieldPath(value: string);
resetFieldPath(): void;
get fieldPathInput(): string | undefined;
}
export interface EnvEnvValueFromResourceFieldRef {
/**
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/kubernetes/2.37.1/docs/resources/env#container_name Env#container_name}
*/
readonly containerName?: string;
/**
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/kubernetes/2.37.1/docs/resources/env#divisor Env#divisor}
*/
readonly divisor?: string;
/**
* Resource to select
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/kubernetes/2.37.1/docs/resources/env#resource Env#resource}
*/
readonly resource: string;
}
export declare function envEnvValueFromResourceFieldRefToTerraform(struct?: EnvEnvValueFromResourceFieldRefOutputReference | EnvEnvValueFromResourceFieldRef): any;
export declare function envEnvValueFromResourceFieldRefToHclTerraform(struct?: EnvEnvValueFromResourceFieldRefOutputReference | EnvEnvValueFromResourceFieldRef): any;
export declare class EnvEnvValueFromResourceFieldRefOutputReference extends cdktf.ComplexObject {
private isEmptyObject;
/**
* @param terraformResource The parent resource
* @param terraformAttribute The attribute on the parent resource this class is referencing
*/
constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string);
get internalValue(): EnvEnvValueFromResourceFieldRef | undefined;
set internalValue(value: EnvEnvValueFromResourceFieldRef | undefined);
private _containerName?;
get containerName(): string;
set containerName(value: string);
resetContainerName(): void;
get containerNameInput(): string | undefined;
private _divisor?;
get divisor(): string;
set divisor(value: string);
resetDivisor(): void;
get divisorInput(): string | undefined;
private _resource?;
get resource(): string;
set resource(value: string);
get resourceInput(): string | undefined;
}
export interface EnvEnvValueFromSecretKeyRef {
/**
* The key of the secret to select from. Must be a valid secret key.
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/kubernetes/2.37.1/docs/resources/env#key Env#key}
*/
readonly key?: string;
/**
* Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/kubernetes/2.37.1/docs/resources/env#name Env#name}
*/
readonly name?: string;
/**
* Specify whether the Secret or its key must be defined.
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/kubernetes/2.37.1/docs/resources/env#optional Env#optional}
*/
readonly optional?: boolean | cdktf.IResolvable;
}
export declare function envEnvValueFromSecretKeyRefToTerraform(struct?: EnvEnvValueFromSecretKeyRefOutputReference | EnvEnvValueFromSecretKeyRef): any;
export declare function envEnvValueFromSecretKeyRefToHclTerraform(struct?: EnvEnvValueFromSecretKeyRefOutputReference | EnvEnvValueFromSecretKeyRef): any;
export declare class EnvEnvValueFromSecretKeyRefOutputReference extends cdktf.ComplexObject {
private isEmptyObject;
/**
* @param terraformResource The parent resource
* @param terraformAttribute The attribute on the parent resource this class is referencing
*/
constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string);
get internalValue(): EnvEnvValueFromSecretKeyRef | undefined;
set internalValue(value: EnvEnvValueFromSecretKeyRef | undefined);
private _key?;
get key(): string;
set key(value: string);
resetKey(): void;
get keyInput(): string | undefined;
private _name?;
get name(): string;
set name(value: string);
resetName(): void;
get nameInput(): string | undefined;
private _optional?;
get optional(): boolean | cdktf.IResolvable;
set optional(value: boolean | cdktf.IResolvable);
resetOptional(): void;
get optionalInput(): boolean | cdktf.IResolvable | undefined;
}
export interface EnvEnvValueFrom {
/**
* config_map_key_ref block
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/kubernetes/2.37.1/docs/resources/env#config_map_key_ref Env#config_map_key_ref}
*/
readonly configMapKeyRef?: EnvEnvValueFromConfigMapKeyRef;
/**
* field_ref block
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/kubernetes/2.37.1/docs/resources/env#field_ref Env#field_ref}
*/
readonly fieldRef?: EnvEnvValueFromFieldRef;
/**
* resource_field_ref block
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/kubernetes/2.37.1/docs/resources/env#resource_field_ref Env#resource_field_ref}
*/
readonly resourceFieldRef?: EnvEnvValueFromResourceFieldRef;
/**
* secret_key_ref block
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/kubernetes/2.37.1/docs/resources/env#secret_key_ref Env#secret_key_ref}
*/
readonly secretKeyRef?: EnvEnvValueFromSecretKeyRef;
}
export declare function envEnvValueFromToTerraform(struct?: EnvEnvValueFromOutputReference | EnvEnvValueFrom): any;
export declare function envEnvValueFromToHclTerraform(struct?: EnvEnvValueFromOutputReference | EnvEnvValueFrom): any;
export declare class EnvEnvValueFromOutputReference extends cdktf.ComplexObject {
private isEmptyObject;
/**
* @param terraformResource The parent resource
* @param terraformAttribute The attribute on the parent resource this class is referencing
*/
constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string);
get internalValue(): EnvEnvValueFrom | undefined;
set internalValue(value: EnvEnvValueFrom | undefined);
private _configMapKeyRef;
get configMapKeyRef(): EnvEnvValueFromConfigMapKeyRefOutputReference;
putConfigMapKeyRef(value: EnvEnvValueFromConfigMapKeyRef): void;
resetConfigMapKeyRef(): void;
get configMapKeyRefInput(): EnvEnvValueFromConfigMapKeyRef | undefined;
private _fieldRef;
get fieldRef(): EnvEnvValueFromFieldRefOutputReference;
putFieldRef(value: EnvEnvValueFromFieldRef): void;
resetFieldRef(): void;
get fieldRefInput(): EnvEnvValueFromFieldRef | undefined;
private _resourceFieldRef;
get resourceFieldRef(): EnvEnvValueFromResourceFieldRefOutputReference;
putResourceFieldRef(value: EnvEnvValueFromResourceFieldRef): void;
resetResourceFieldRef(): void;
get resourceFieldRefInput(): EnvEnvValueFromResourceFieldRef | undefined;
private _secretKeyRef;
get secretKeyRef(): EnvEnvValueFromSecretKeyRefOutputReference;
putSecretKeyRef(value: EnvEnvValueFromSecretKeyRef): void;
resetSecretKeyRef(): void;
get secretKeyRefInput(): EnvEnvValueFromSecretKeyRef | undefined;
}
export interface EnvEnv {
/**
* Name of the environment variable. Must be a C_IDENTIFIER
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/kubernetes/2.37.1/docs/resources/env#name Env#name}
*/
readonly name: string;
/**
* Variable references $(VAR_NAME) are expanded using the previous defined environment variables in the container and any service environment variables. If a variable cannot be resolved, the reference in the input string will be unchanged. The $(VAR_NAME) syntax can be escaped with a double $$, ie: $$(VAR_NAME). Escaped references will never be expanded, regardless of whether the variable exists or not. Defaults to "".
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/kubernetes/2.37.1/docs/resources/env#value Env#value}
*/
readonly value?: string;
/**
* value_from block
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/kubernetes/2.37.1/docs/resources/env#value_from Env#value_from}
*/
readonly valueFrom?: EnvEnvValueFrom;
}
export declare function envEnvToTerraform(struct?: EnvEnv | cdktf.IResolvable): any;
export declare function envEnvToHclTerraform(struct?: EnvEnv | cdktf.IResolvable): any;
export declare class EnvEnvOutputReference extends cdktf.ComplexObject {
private isEmptyObject;
private resolvableValue?;
/**
* @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: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean);
get internalValue(): EnvEnv | cdktf.IResolvable | undefined;
set internalValue(value: EnvEnv | cdktf.IResolvable | undefined);
private _name?;
get name(): string;
set name(value: string);
get nameInput(): string | undefined;
private _value?;
get value(): string;
set value(value: string);
resetValue(): void;
get valueInput(): string | undefined;
private _valueFrom;
get valueFrom(): EnvEnvValueFromOutputReference;
putValueFrom(value: EnvEnvValueFrom): void;
resetValueFrom(): void;
get valueFromInput(): EnvEnvValueFrom | undefined;
}
export declare class EnvEnvList extends cdktf.ComplexList {
protected terraformResource: cdktf.IInterpolatingParent;
protected terraformAttribute: string;
protected wrapsSet: boolean;
internalValue?: EnvEnv[] | cdktf.IResolvable;
/**
* @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: cdktf.IInterpolatingParent, terraformAttribute: string, wrapsSet: boolean);
/**
* @param index the index of the item to return
*/
get(index: number): EnvEnvOutputReference;
}
export interface EnvMetadata {
/**
* The name of the resource.
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/kubernetes/2.37.1/docs/resources/env#name Env#name}
*/
readonly name: string;
/**
* The namespace of the resource.
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/kubernetes/2.37.1/docs/resources/env#namespace Env#namespace}
*/
readonly namespace?: string;
}
export declare function envMetadataToTerraform(struct?: EnvMetadataOutputReference | EnvMetadata): any;
export declare function envMetadataToHclTerraform(struct?: EnvMetadataOutputReference | EnvMetadata): any;
export declare class EnvMetadataOutputReference extends cdktf.ComplexObject {
private isEmptyObject;
/**
* @param terraformResource The parent resource
* @param terraformAttribute The attribute on the parent resource this class is referencing
*/
constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string);
get internalValue(): EnvMetadata | undefined;
set internalValue(value: EnvMetadata | undefined);
private _name?;
get name(): string;
set name(value: string);
get nameInput(): string | undefined;
private _namespace?;
get namespace(): string;
set namespace(value: string);
resetNamespace(): void;
get namespaceInput(): string | undefined;
}
/**
* Represents a {@link https://registry.terraform.io/providers/hashicorp/kubernetes/2.37.1/docs/resources/env kubernetes_env}
*/
export declare class Env extends cdktf.TerraformResource {
static readonly tfResourceType = "kubernetes_env";
/**
* 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.37.1/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: Construct, importToId: string, importFromId: string, provider?: cdktf.TerraformProvider): cdktf.ImportableResource;
/**
* Create a new {@link https://registry.terraform.io/providers/hashicorp/kubernetes/2.37.1/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: Construct, id: string, config: EnvConfig);
private _apiVersion?;
get apiVersion(): string;
set apiVersion(value: string);
get apiVersionInput(): string | undefined;
private _container?;
get container(): string;
set container(value: string);
resetContainer(): void;
get containerInput(): string | undefined;
private _fieldManager?;
get fieldManager(): string;
set fieldManager(value: string);
resetFieldManager(): void;
get fieldManagerInput(): string | undefined;
private _force?;
get force(): boolean | cdktf.IResolvable;
set force(value: boolean | cdktf.IResolvable);
resetForce(): void;
get forceInput(): boolean | cdktf.IResolvable | undefined;
private _id?;
get id(): string;
set id(value: string);
resetId(): void;
get idInput(): string | undefined;
private _initContainer?;
get initContainer(): string;
set initContainer(value: string);
resetInitContainer(): void;
get initContainerInput(): string | undefined;
private _kind?;
get kind(): string;
set kind(value: string);
get kindInput(): string | undefined;
private _env;
get env(): EnvEnvList;
putEnv(value: EnvEnv[] | cdktf.IResolvable): void;
get envInput(): cdktf.IResolvable | EnvEnv[] | undefined;
private _metadata;
get metadata(): EnvMetadataOutputReference;
putMetadata(value: EnvMetadata): void;
get metadataInput(): EnvMetadata | undefined;
protected synthesizeAttributes(): {
[name: string]: any;
};
protected synthesizeHclAttributes(): {
[name: string]: any;
};
}