cdktf-crd
Version:
164 lines (163 loc) • 7.97 kB
TypeScript
import { Construct } from "constructs";
import { Manifest, type ManifestConfig } from "@cdktn/provider-kubernetes/lib/manifest";
export declare class AcmeCertManagerIoOrderV1 extends Manifest {
constructor(scope: Construct, id: string, config: AcmeCertManagerIoOrderV1Config);
}
export interface AcmeCertManagerIoOrderV1Config 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;
};
};
}