UNPKG

@cdktf/provider-kubernetes

Version:

Prebuilt kubernetes Provider for Terraform CDK (cdktf)

283 lines (282 loc) 13.6 kB
/** * Copyright (c) HashiCorp, Inc. * SPDX-License-Identifier: MPL-2.0 */ import { Construct } from 'constructs'; import * as cdktf from 'cdktf'; export interface KubernetesProviderConfig { /** * PEM-encoded client certificate for TLS authentication. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/kubernetes/2.37.1/docs#client_certificate KubernetesProvider#client_certificate} */ readonly clientCertificate?: string; /** * PEM-encoded client certificate key for TLS authentication. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/kubernetes/2.37.1/docs#client_key KubernetesProvider#client_key} */ readonly clientKey?: string; /** * PEM-encoded root certificates bundle for TLS authentication. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/kubernetes/2.37.1/docs#cluster_ca_certificate KubernetesProvider#cluster_ca_certificate} */ readonly clusterCaCertificate?: string; /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/kubernetes/2.37.1/docs#config_context KubernetesProvider#config_context} */ readonly configContext?: string; /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/kubernetes/2.37.1/docs#config_context_auth_info KubernetesProvider#config_context_auth_info} */ readonly configContextAuthInfo?: string; /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/kubernetes/2.37.1/docs#config_context_cluster KubernetesProvider#config_context_cluster} */ readonly configContextCluster?: string; /** * Path to the kube config file. Can be set with KUBE_CONFIG_PATH. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/kubernetes/2.37.1/docs#config_path KubernetesProvider#config_path} */ readonly configPath?: string; /** * A list of paths to kube config files. Can be set with KUBE_CONFIG_PATHS environment variable. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/kubernetes/2.37.1/docs#config_paths KubernetesProvider#config_paths} */ readonly configPaths?: string[]; /** * The hostname (in form of URI) of Kubernetes master. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/kubernetes/2.37.1/docs#host KubernetesProvider#host} */ readonly host?: string; /** * List of Kubernetes metadata annotations to ignore across all resources handled by this provider for situations where external systems are managing certain resource annotations. Each item is a regular expression. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/kubernetes/2.37.1/docs#ignore_annotations KubernetesProvider#ignore_annotations} */ readonly ignoreAnnotations?: string[]; /** * List of Kubernetes metadata labels to ignore across all resources handled by this provider for situations where external systems are managing certain resource labels. Each item is a regular expression. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/kubernetes/2.37.1/docs#ignore_labels KubernetesProvider#ignore_labels} */ readonly ignoreLabels?: string[]; /** * Whether server should be accessed without verifying the TLS certificate. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/kubernetes/2.37.1/docs#insecure KubernetesProvider#insecure} */ readonly insecure?: boolean | cdktf.IResolvable; /** * The password to use for HTTP basic authentication when accessing the Kubernetes master endpoint. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/kubernetes/2.37.1/docs#password KubernetesProvider#password} */ readonly password?: string; /** * URL to the proxy to be used for all API requests * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/kubernetes/2.37.1/docs#proxy_url KubernetesProvider#proxy_url} */ readonly proxyUrl?: string; /** * Server name passed to the server for SNI and is used in the client to check server certificates against. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/kubernetes/2.37.1/docs#tls_server_name KubernetesProvider#tls_server_name} */ readonly tlsServerName?: string; /** * Token to authenticate an service account * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/kubernetes/2.37.1/docs#token KubernetesProvider#token} */ readonly token?: string; /** * The username to use for HTTP basic authentication when accessing the Kubernetes master endpoint. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/kubernetes/2.37.1/docs#username KubernetesProvider#username} */ readonly username?: string; /** * Alias name * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/kubernetes/2.37.1/docs#alias KubernetesProvider#alias} */ readonly alias?: string; /** * exec block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/kubernetes/2.37.1/docs#exec KubernetesProvider#exec} */ readonly exec?: KubernetesProviderExec[] | cdktf.IResolvable; /** * experiments block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/kubernetes/2.37.1/docs#experiments KubernetesProvider#experiments} */ readonly experiments?: KubernetesProviderExperiments[] | cdktf.IResolvable; } export interface KubernetesProviderExec { /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/kubernetes/2.37.1/docs#api_version KubernetesProvider#api_version} */ readonly apiVersion: string; /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/kubernetes/2.37.1/docs#args KubernetesProvider#args} */ readonly args?: string[]; /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/kubernetes/2.37.1/docs#command KubernetesProvider#command} */ readonly command: string; /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/kubernetes/2.37.1/docs#env KubernetesProvider#env} */ readonly env?: { [key: string]: string; }; } export declare function kubernetesProviderExecToTerraform(struct?: KubernetesProviderExec | cdktf.IResolvable): any; export declare function kubernetesProviderExecToHclTerraform(struct?: KubernetesProviderExec | cdktf.IResolvable): any; export interface KubernetesProviderExperiments { /** * Enable the `kubernetes_manifest` resource. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/kubernetes/2.37.1/docs#manifest_resource KubernetesProvider#manifest_resource} */ readonly manifestResource?: boolean | cdktf.IResolvable; } export declare function kubernetesProviderExperimentsToTerraform(struct?: KubernetesProviderExperiments | cdktf.IResolvable): any; export declare function kubernetesProviderExperimentsToHclTerraform(struct?: KubernetesProviderExperiments | cdktf.IResolvable): any; /** * Represents a {@link https://registry.terraform.io/providers/hashicorp/kubernetes/2.37.1/docs kubernetes} */ export declare class KubernetesProvider extends cdktf.TerraformProvider { static readonly tfResourceType = "kubernetes"; /** * Generates CDKTF code for importing a KubernetesProvider 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 KubernetesProvider to import * @param importFromId The id of the existing KubernetesProvider that should be imported. Refer to the {@link https://registry.terraform.io/providers/hashicorp/kubernetes/2.37.1/docs#import import section} in the documentation of this resource for the id to use * @param provider? Optional instance of the provider where the KubernetesProvider 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 kubernetes} 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 KubernetesProviderConfig = {} */ constructor(scope: Construct, id: string, config?: KubernetesProviderConfig); private _clientCertificate?; get clientCertificate(): string | undefined; set clientCertificate(value: string | undefined); resetClientCertificate(): void; get clientCertificateInput(): string | undefined; private _clientKey?; get clientKey(): string | undefined; set clientKey(value: string | undefined); resetClientKey(): void; get clientKeyInput(): string | undefined; private _clusterCaCertificate?; get clusterCaCertificate(): string | undefined; set clusterCaCertificate(value: string | undefined); resetClusterCaCertificate(): void; get clusterCaCertificateInput(): string | undefined; private _configContext?; get configContext(): string | undefined; set configContext(value: string | undefined); resetConfigContext(): void; get configContextInput(): string | undefined; private _configContextAuthInfo?; get configContextAuthInfo(): string | undefined; set configContextAuthInfo(value: string | undefined); resetConfigContextAuthInfo(): void; get configContextAuthInfoInput(): string | undefined; private _configContextCluster?; get configContextCluster(): string | undefined; set configContextCluster(value: string | undefined); resetConfigContextCluster(): void; get configContextClusterInput(): string | undefined; private _configPath?; get configPath(): string | undefined; set configPath(value: string | undefined); resetConfigPath(): void; get configPathInput(): string | undefined; private _configPaths?; get configPaths(): string[] | undefined; set configPaths(value: string[] | undefined); resetConfigPaths(): void; get configPathsInput(): string[] | undefined; private _host?; get host(): string | undefined; set host(value: string | undefined); resetHost(): void; get hostInput(): string | undefined; private _ignoreAnnotations?; get ignoreAnnotations(): string[] | undefined; set ignoreAnnotations(value: string[] | undefined); resetIgnoreAnnotations(): void; get ignoreAnnotationsInput(): string[] | undefined; private _ignoreLabels?; get ignoreLabels(): string[] | undefined; set ignoreLabels(value: string[] | undefined); resetIgnoreLabels(): void; get ignoreLabelsInput(): string[] | undefined; private _insecure?; get insecure(): boolean | cdktf.IResolvable | undefined; set insecure(value: boolean | cdktf.IResolvable | undefined); resetInsecure(): void; get insecureInput(): boolean | cdktf.IResolvable | undefined; private _password?; get password(): string | undefined; set password(value: string | undefined); resetPassword(): void; get passwordInput(): string | undefined; private _proxyUrl?; get proxyUrl(): string | undefined; set proxyUrl(value: string | undefined); resetProxyUrl(): void; get proxyUrlInput(): string | undefined; private _tlsServerName?; get tlsServerName(): string | undefined; set tlsServerName(value: string | undefined); resetTlsServerName(): void; get tlsServerNameInput(): string | undefined; private _token?; get token(): string | undefined; set token(value: string | undefined); resetToken(): void; get tokenInput(): string | undefined; private _username?; get username(): string | undefined; set username(value: string | undefined); resetUsername(): void; get usernameInput(): string | undefined; private _alias?; get alias(): string | undefined; set alias(value: string | undefined); resetAlias(): void; get aliasInput(): string | undefined; private _exec?; get exec(): KubernetesProviderExec[] | cdktf.IResolvable | undefined; set exec(value: KubernetesProviderExec[] | cdktf.IResolvable | undefined); resetExec(): void; get execInput(): cdktf.IResolvable | KubernetesProviderExec[] | undefined; private _experiments?; get experiments(): KubernetesProviderExperiments[] | cdktf.IResolvable | undefined; set experiments(value: KubernetesProviderExperiments[] | cdktf.IResolvable | undefined); resetExperiments(): void; get experimentsInput(): cdktf.IResolvable | KubernetesProviderExperiments[] | undefined; protected synthesizeAttributes(): { [name: string]: any; }; protected synthesizeHclAttributes(): { [name: string]: any; }; }