cdktf-crd
Version:
134 lines (133 loc) • 7.49 kB
TypeScript
import { Manifest, type ManifestConfig } from "@cdktf/provider-kubernetes/lib/manifest";
import { Construct } from "constructs";
export declare class KubernetesOrderV1Manifest extends Manifest {
constructor(scope: Construct, id: string, config: KubernetesOrderV1ManifestConfig);
}
export interface KubernetesOrderV1ManifestConfig extends ManifestConfig {
manifest: {
apiVersion?: "acme.cert-manager.io/v1";
kind?: "Order";
metadata: {
annotations?: {
[key: string]: string;
};
labels?: {
[key: string]: string;
};
name: string;
namespace?: string;
};
spec: {
/** @description CommonName is the common name as specified on the DER encoded CSR.
* If specified, this value must also be present in `dnsNames` or `ipAddresses`.
* This field must match the corresponding field on the DER encoded CSR. */
commonName?: string;
/** @description DNSNames is a list of DNS names that should be included as part of the Order
* validation process.
* This field must match the corresponding field on the DER encoded CSR. */
dnsNames?: string[];
/** @description Duration is the duration for the not after date for the requested certificate.
* this is set on order creation as pe the ACME spec. */
duration?: string;
/** @description IPAddresses is a list of IP addresses that should be included as part of the Order
* validation process.
* This field must match the corresponding field on the DER encoded CSR. */
ipAddresses?: string[];
/** @description IssuerRef references a properly configured ACME-type Issuer which should
* be used to create this Order.
* If the Issuer does not exist, processing will be retried.
* If the Issuer is not an 'ACME' Issuer, an error will be returned and the
* Order will be marked as failed. */
issuerRef: {
/** @description Group of the resource being referred to. */
group?: string;
/** @description Kind of the resource being referred to. */
kind?: string;
/** @description Name of the resource being referred to. */
name: string;
};
/**
* Format: byte
* @description Certificate signing request bytes in DER encoding.
* This will be used when finalizing the order.
* This field must be set on the order.
*/
request: string;
};
status?: {
/** @description Authorizations contains data returned from the ACME server on what
* authorizations must be completed in order to validate the DNS names
* specified on the Order. */
authorizations?: {
/** @description Challenges specifies the challenge types offered by the ACME server.
* One of these challenge types will be selected when validating the DNS
* name and an appropriate Challenge resource will be created to perform
* the ACME challenge process. */
challenges?: {
/** @description Token is the token that must be presented for this challenge.
* This is used to compute the 'key' that must also be presented. */
token: string;
/** @description Type is the type of challenge being offered, e.g. 'http-01', 'dns-01',
* 'tls-sni-01', etc.
* This is the raw value retrieved from the ACME server.
* Only 'http-01' and 'dns-01' are supported by cert-manager, other values
* will be ignored. */
type: string;
/** @description URL is the URL of this challenge. It can be used to retrieve additional
* metadata about the Challenge from the ACME server. */
url: string;
}[];
/** @description Identifier is the DNS name to be validated as part of this authorization */
identifier?: string;
/**
* @description InitialState is the initial state of the ACME authorization when first
* fetched from the ACME server.
* If an Authorization is already 'valid', the Order controller will not
* create a Challenge resource for the authorization. This will occur when
* working with an ACME server that enables 'authz reuse' (such as Let's
* Encrypt's production endpoint).
* If not set and 'identifier' is set, the state is assumed to be pending
* and a Challenge will be created.
* @enum {string}
*/
initialState?: "errored" | "expired" | "invalid" | "pending" | "processing" | "ready" | "valid";
/** @description URL is the URL of the Authorization that must be completed */
url: string;
/** @description Wildcard will be true if this authorization is for a wildcard DNS name.
* If this is true, the identifier will be the *non-wildcard* version of
* the DNS name.
* For example, if '*.example.com' is the DNS name being validated, this
* field will be 'true' and the 'identifier' field will be 'example.com'. */
wildcard?: boolean;
}[];
/**
* Format: byte
* @description Certificate is a copy of the PEM encoded certificate for this Order.
* This field will be populated after the order has been successfully
* finalized with the ACME server, and the order has transitioned to the
* 'valid' state.
*/
certificate?: string;
/**
* Format: date-time
* @description FailureTime stores the time that this order failed.
* This is used to influence garbage collection and back-off.
*/
failureTime?: string;
/** @description FinalizeURL of the Order.
* This is used to obtain certificates for this order once it has been completed. */
finalizeURL?: string;
/** @description Reason optionally provides more information about a why the order is in
* the current state. */
reason?: string;
/** @description State contains the current state of this Order resource.
* States 'success' and 'expired' are 'final' */
state?: string;
/** @description URL of the Order.
* This will initially be empty when the resource is first created.
* The Order controller will populate this field when the Order is first processed.
* This field will be immutable after it is initially set. */
url?: string;
};
};
}