UNPKG

cdktf-crd

Version:
152 lines (151 loc) 7.71 kB
import { Manifest, type ManifestConfig } from "@cdktf/provider-kubernetes/lib/manifest"; import { Construct } from "constructs"; export declare class KubernetesExternalSecretV1alpha1Manifest extends Manifest { constructor(scope: Construct, id: string, config: KubernetesExternalSecretV1alpha1ManifestConfig); } export interface KubernetesExternalSecretV1alpha1ManifestConfig extends ManifestConfig { manifest: { apiVersion?: "external-secrets.io/v1alpha1"; kind?: "ExternalSecret"; metadata: { annotations?: { [key: string]: string; }; labels?: { [key: string]: string; }; name: string; namespace?: string; }; /** @description ExternalSecretSpec defines the desired state of ExternalSecret. */ spec?: { /** @description Data defines the connection between the Kubernetes Secret keys and the Provider data */ data?: { /** @description ExternalSecretDataRemoteRef defines Provider data location. */ remoteRef: { /** * @description Used to define a conversion Strategy * @default Default * @enum {string} */ conversionStrategy: "Default" | "Unicode"; /** @description Key is the key used in the Provider, mandatory */ key: string; /** @description Used to select a specific property of the Provider value (if a map), if supported */ property?: string; /** @description Used to select a specific version of the Provider value, if supported */ version?: string; }; /** @description The key in the Kubernetes Secret to store the value. */ secretKey: string; }[]; /** @description DataFrom is used to fetch all properties from a specific Provider data * If multiple entries are specified, the Secret keys are merged in the specified order */ dataFrom?: { /** * @description Used to define a conversion Strategy * @default Default * @enum {string} */ conversionStrategy: "Default" | "Unicode"; /** @description Key is the key used in the Provider, mandatory */ key: string; /** @description Used to select a specific property of the Provider value (if a map), if supported */ property?: string; /** @description Used to select a specific version of the Provider value, if supported */ version?: string; }[]; /** @description RefreshInterval is the amount of time before the values are read again from the SecretStore provider * Valid time units are "ns", "us" (or "µs"), "ms", "s", "m", "h" * May be set to zero to fetch and create it once. Defaults to 1h. */ refreshInterval?: string; /** @description SecretStoreRef defines which SecretStore to fetch the ExternalSecret data. */ secretStoreRef: { /** @description Kind of the SecretStore resource (SecretStore or ClusterSecretStore) * Defaults to `SecretStore` */ kind?: string; /** @description Name of the SecretStore resource */ name?: string; }; /** @description ExternalSecretTarget defines the Kubernetes Secret to be created * There can be only one target per ExternalSecret. */ target: { /** @description CreationPolicy defines rules on how to create the resulting Secret. * Defaults to "Owner" */ creationPolicy?: string; /** @description Immutable defines if the final secret will be immutable */ immutable?: boolean; /** @description The name of the Secret resource to be managed. * Defaults to the .metadata.name of the ExternalSecret resource */ name?: string; /** @description Template defines a blueprint for the created Secret resource. */ template?: { data?: { [key: string]: string; }; /** @description EngineVersion specifies the template engine version * that should be used to compile/execute the * template specified in .data and .templateFrom[]. */ engineVersion?: string; /** @description ExternalSecretTemplateMetadata defines metadata fields for the Secret blueprint. */ metadata?: { annotations?: { [key: string]: string; }; labels?: { [key: string]: string; }; }; templateFrom?: { configMap?: { /** @description A list of keys in the ConfigMap/Secret to use as templates for Secret data */ items: { /** @description A key in the ConfigMap/Secret */ key: string; }[]; /** @description The name of the ConfigMap/Secret resource */ name: string; }; secret?: { /** @description A list of keys in the ConfigMap/Secret to use as templates for Secret data */ items: { /** @description A key in the ConfigMap/Secret */ key: string; }[]; /** @description The name of the ConfigMap/Secret resource */ name: string; }; }[]; type?: string; }; }; }; status?: { /** @description Binding represents a servicebinding.io Provisioned Service reference to the secret */ binding?: { /** @description Name of the referent. * This field is effectively required, but due to backwards compatibility is * allowed to be empty. Instances of this type with an empty value here are * almost certainly wrong. * More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names */ name?: string; }; conditions?: { /** Format: date-time */ lastTransitionTime?: string; message?: string; reason?: string; status: string; type: string; }[]; /** * Format: date-time * @description refreshTime is the time and date the external secret was fetched and * the target secret updated */ refreshTime?: string | null; /** @description SyncedResourceVersion keeps track of the last synced version */ syncedResourceVersion?: string; }; }; }