UNPKG

@cdktf/provider-kubernetes

Version:

Prebuilt kubernetes Provider for Terraform CDK (cdktf)

463 lines (462 loc) 21.6 kB
/** * 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.38.0/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.38.0/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.38.0/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.38.0/docs/resources/env#force Env#force} */ readonly force?: boolean | cdktf.IResolvable; /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/kubernetes/2.38.0/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.38.0/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.38.0/docs/resources/env#kind Env#kind} */ readonly kind: string; /** * env block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/kubernetes/2.38.0/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.38.0/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.38.0/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.38.0/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.38.0/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.38.0/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.38.0/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.38.0/docs/resources/env#container_name Env#container_name} */ readonly containerName?: string; /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/kubernetes/2.38.0/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.38.0/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.38.0/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.38.0/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.38.0/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.38.0/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.38.0/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.38.0/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.38.0/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.38.0/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.38.0/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.38.0/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.38.0/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.38.0/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.38.0/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.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: Construct, importToId: string, importFromId: string, provider?: cdktf.TerraformProvider): cdktf.ImportableResource; /** * 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: 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; }; }