UNPKG

cdktf-crd

Version:
210 lines (209 loc) 13.5 kB
import { Manifest, type ManifestConfig } from "@cdktf/provider-kubernetes/lib/manifest"; import { Construct } from "constructs"; export declare class KubernetesBundleV1alpha1Manifest extends Manifest { constructor(scope: Construct, id: string, config: KubernetesBundleV1alpha1ManifestConfig); } export interface KubernetesBundleV1alpha1ManifestConfig extends ManifestConfig { manifest: { apiVersion?: "trust.cert-manager.io/v1alpha1"; kind?: "Bundle"; metadata: { annotations?: { [key: string]: string; }; labels?: { [key: string]: string; }; name: string; namespace?: string; }; /** @description Desired state of the Bundle resource. */ spec: { /** @description Sources is a set of references to data whose data will sync to the target. */ sources: { /** @description ConfigMap is a reference (by name) to a ConfigMap's `data` key(s), or to a * list of ConfigMap's `data` key(s) using label selector, in the trust Namespace. */ configMap?: { /** @description IncludeAllKeys is a flag to include all keys in the object's `data` field to be used. False by default. * This field must not be true when `Key` is set. */ includeAllKeys?: boolean; /** @description Key of the entry in the object's `data` field to be used. */ key?: string; /** @description Name is the name of the source object in the trust Namespace. * This field must be left empty when `selector` is set */ name?: string; /** @description Selector is the label selector to use to fetch a list of objects. Must not be set * when `Name` is set. */ selector?: { /** @description matchExpressions is a list of label selector requirements. The requirements are ANDed. */ matchExpressions?: { /** @description key is the label key that the selector applies to. */ key: string; /** @description operator represents a key's relationship to a set of values. * Valid operators are In, NotIn, Exists and DoesNotExist. */ operator: string; /** @description values is an array of string values. If the operator is In or NotIn, * the values array must be non-empty. If the operator is Exists or DoesNotExist, * the values array must be empty. This array is replaced during a strategic * merge patch. */ values?: string[]; }[]; /** @description matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels * map is equivalent to an element of matchExpressions, whose key field is "key", the * operator is "In", and the values array contains only "value". The requirements are ANDed. */ matchLabels?: { [key: string]: string; }; }; }; /** @description InLine is a simple string to append as the source data. */ inLine?: string; /** @description Secret is a reference (by name) to a Secret's `data` key(s), or to a * list of Secret's `data` key(s) using label selector, in the trust Namespace. */ secret?: { /** @description IncludeAllKeys is a flag to include all keys in the object's `data` field to be used. False by default. * This field must not be true when `Key` is set. */ includeAllKeys?: boolean; /** @description Key of the entry in the object's `data` field to be used. */ key?: string; /** @description Name is the name of the source object in the trust Namespace. * This field must be left empty when `selector` is set */ name?: string; /** @description Selector is the label selector to use to fetch a list of objects. Must not be set * when `Name` is set. */ selector?: { /** @description matchExpressions is a list of label selector requirements. The requirements are ANDed. */ matchExpressions?: { /** @description key is the label key that the selector applies to. */ key: string; /** @description operator represents a key's relationship to a set of values. * Valid operators are In, NotIn, Exists and DoesNotExist. */ operator: string; /** @description values is an array of string values. If the operator is In or NotIn, * the values array must be non-empty. If the operator is Exists or DoesNotExist, * the values array must be empty. This array is replaced during a strategic * merge patch. */ values?: string[]; }[]; /** @description matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels * map is equivalent to an element of matchExpressions, whose key field is "key", the * operator is "In", and the values array contains only "value". The requirements are ANDed. */ matchLabels?: { [key: string]: string; }; }; }; /** @description UseDefaultCAs, when true, requests the default CA bundle to be used as a source. * Default CAs are available if trust-manager was installed via Helm * or was otherwise set up to include a package-injecting init container by using the * "--default-package-location" flag when starting the trust-manager controller. * If default CAs were not configured at start-up, any request to use the default * CAs will fail. * The version of the default CA package which is used for a Bundle is stored in the * defaultCAPackageVersion field of the Bundle's status field. */ useDefaultCAs?: boolean; }[]; /** @description Target is the target location in all namespaces to sync source data to. */ target: { /** @description AdditionalFormats specifies any additional formats to write to the target */ additionalFormats?: { /** @description JKS requests a JKS-formatted binary trust bundle to be written to the target. * The bundle has "changeit" as the default password. * For more information refer to this link https://cert-manager.io/docs/faq/#keystore-passwords */ jks?: { /** @description Key is the key of the entry in the object's `data` field to be used. */ key: string; /** @description Password for JKS trust store */ password?: string; }; /** @description PKCS12 requests a PKCS12-formatted binary trust bundle to be written to the target. * The bundle is by default created without a password. */ pkcs12?: { /** @description Key is the key of the entry in the object's `data` field to be used. */ key: string; /** @description Password for PKCS12 trust store */ password?: string; }; }; /** @description ConfigMap is the target ConfigMap in Namespaces that all Bundle source * data will be synced to. */ configMap?: { /** @description Key is the key of the entry in the object's `data` field to be used. */ key: string; }; /** @description NamespaceSelector will, if set, only sync the target resource in * Namespaces which match the selector. */ namespaceSelector?: { /** @description matchExpressions is a list of label selector requirements. The requirements are ANDed. */ matchExpressions?: { /** @description key is the label key that the selector applies to. */ key: string; /** @description operator represents a key's relationship to a set of values. * Valid operators are In, NotIn, Exists and DoesNotExist. */ operator: string; /** @description values is an array of string values. If the operator is In or NotIn, * the values array must be non-empty. If the operator is Exists or DoesNotExist, * the values array must be empty. This array is replaced during a strategic * merge patch. */ values?: string[]; }[]; /** @description matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels * map is equivalent to an element of matchExpressions, whose key field is "key", the * operator is "In", and the values array contains only "value". The requirements are ANDed. */ matchLabels?: { [key: string]: string; }; }; /** @description Secret is the target Secret that all Bundle source data will be synced to. * Using Secrets as targets is only supported if enabled at trust-manager startup. * By default, trust-manager has no permissions for writing to secrets and can only read secrets in the trust namespace. */ secret?: { /** @description Key is the key of the entry in the object's `data` field to be used. */ key: string; }; }; }; /** @description Status of the Bundle. This is set and managed automatically. */ status?: { /** @description List of status conditions to indicate the status of the Bundle. * Known condition types are `Bundle`. */ conditions?: { /** * Format: date-time * @description LastTransitionTime is the timestamp corresponding to the last status * change of this condition. */ lastTransitionTime: string; /** @description Message is a human-readable description of the details of the last * transition, complementing reason. */ message?: string; /** * Format: int64 * @description If set, this represents the .metadata.generation that the condition was * set based upon. * For instance, if .metadata.generation is currently 12, but the * .status.condition[x].observedGeneration is 9, the condition is out of date * with respect to the current state of the Bundle. */ observedGeneration?: number; /** @description Reason is a brief machine-readable explanation for the condition's last * transition. * The value should be a CamelCase string. * This field may not be empty. */ reason: string; /** * @description Status of the condition, one of True, False, Unknown. * @enum {string} */ status: "False" | "True" | "Unknown"; /** @description Type of the condition, known values are (`Synced`). */ type: string; }[]; /** @description DefaultCAPackageVersion, if set and non-empty, indicates the version information * which was retrieved when the set of default CAs was requested in the bundle * source. This should only be set if useDefaultCAs was set to "true" on a source, * and will be the same for the same version of a bundle with identical certificates. */ defaultCAVersion?: string; }; }; }