@pulumi/tls
Version:
A Pulumi package to create TLS resources in Pulumi programs.
134 lines (133 loc) • 6.62 kB
TypeScript
import * as pulumi from "@pulumi/pulumi";
import * as inputs from "./types/input";
import * as outputs from "./types/output";
/**
* ## Example Usage
*
* ```typescript
* import * as pulumi from "@pulumi/pulumi";
* import * as std from "@pulumi/std";
* import * as tls from "@pulumi/tls";
*
* const example = new tls.CertRequest("example", {
* privateKeyPem: std.file({
* input: "private_key.pem",
* }).then(invoke => invoke.result),
* subject: {
* commonName: "example.com",
* organization: "ACME Examples, Inc",
* },
* });
* ```
*/
export declare class CertRequest extends pulumi.CustomResource {
/**
* Get an existing CertRequest resource's state with the given name, ID, and optional extra
* properties used to qualify the lookup.
*
* @param name The _unique_ name of the resulting resource.
* @param id The _unique_ provider ID of the resource to lookup.
* @param state Any extra arguments used during the lookup.
* @param opts Optional settings to control the behavior of the CustomResource.
*/
static get(name: string, id: pulumi.Input<pulumi.ID>, state?: CertRequestState, opts?: pulumi.CustomResourceOptions): CertRequest;
/**
* Returns true if the given object is an instance of CertRequest. This is designed to work even
* when multiple copies of the Pulumi SDK have been loaded into the same process.
*/
static isInstance(obj: any): obj is CertRequest;
/**
* The certificate request data in [PEM (RFC 1421)](https://datatracker.ietf.org/doc/html/rfc1421) format. **NOTE**: the [underlying](https://pkg.go.dev/encoding/pem#Encode) [libraries](https://pkg.go.dev/golang.org/x/crypto/ssh#MarshalAuthorizedKey) that generate this value append a `\n` at the end of the PEM. In case this disrupts your use case, we recommend using `trimspace()`.
*/
readonly certRequestPem: pulumi.Output<string>;
/**
* List of DNS names for which a certificate is being requested (i.e. certificate subjects).
*/
readonly dnsNames: pulumi.Output<string[] | undefined>;
/**
* List of IP addresses for which a certificate is being requested (i.e. certificate subjects).
*/
readonly ipAddresses: pulumi.Output<string[] | undefined>;
/**
* Name of the algorithm used when generating the private key provided in `privateKeyPem`.
*/
readonly keyAlgorithm: pulumi.Output<string>;
/**
* Private key in [PEM (RFC 1421)](https://datatracker.ietf.org/doc/html/rfc1421) format, that the certificate will belong to. This can be read from a separate file using the `file` interpolation function.
*/
readonly privateKeyPem: pulumi.Output<string>;
/**
* The subject for which a certificate is being requested. The acceptable arguments are all optional and their naming is based upon [Issuer Distinguished Names (RFC5280)](https://tools.ietf.org/html/rfc5280#section-4.1.2.4) section.
*/
readonly subject: pulumi.Output<outputs.CertRequestSubject | undefined>;
/**
* List of URIs for which a certificate is being requested (i.e. certificate subjects).
*/
readonly uris: pulumi.Output<string[] | undefined>;
/**
* Create a CertRequest resource with the given unique name, arguments, and options.
*
* @param name The _unique_ name of the resource.
* @param args The arguments to use to populate this resource's properties.
* @param opts A bag of options that control this resource's behavior.
*/
constructor(name: string, args: CertRequestArgs, opts?: pulumi.CustomResourceOptions);
}
/**
* Input properties used for looking up and filtering CertRequest resources.
*/
export interface CertRequestState {
/**
* The certificate request data in [PEM (RFC 1421)](https://datatracker.ietf.org/doc/html/rfc1421) format. **NOTE**: the [underlying](https://pkg.go.dev/encoding/pem#Encode) [libraries](https://pkg.go.dev/golang.org/x/crypto/ssh#MarshalAuthorizedKey) that generate this value append a `\n` at the end of the PEM. In case this disrupts your use case, we recommend using `trimspace()`.
*/
certRequestPem?: pulumi.Input<string>;
/**
* List of DNS names for which a certificate is being requested (i.e. certificate subjects).
*/
dnsNames?: pulumi.Input<pulumi.Input<string>[]>;
/**
* List of IP addresses for which a certificate is being requested (i.e. certificate subjects).
*/
ipAddresses?: pulumi.Input<pulumi.Input<string>[]>;
/**
* Name of the algorithm used when generating the private key provided in `privateKeyPem`.
*/
keyAlgorithm?: pulumi.Input<string>;
/**
* Private key in [PEM (RFC 1421)](https://datatracker.ietf.org/doc/html/rfc1421) format, that the certificate will belong to. This can be read from a separate file using the `file` interpolation function.
*/
privateKeyPem?: pulumi.Input<string>;
/**
* The subject for which a certificate is being requested. The acceptable arguments are all optional and their naming is based upon [Issuer Distinguished Names (RFC5280)](https://tools.ietf.org/html/rfc5280#section-4.1.2.4) section.
*/
subject?: pulumi.Input<inputs.CertRequestSubject>;
/**
* List of URIs for which a certificate is being requested (i.e. certificate subjects).
*/
uris?: pulumi.Input<pulumi.Input<string>[]>;
}
/**
* The set of arguments for constructing a CertRequest resource.
*/
export interface CertRequestArgs {
/**
* List of DNS names for which a certificate is being requested (i.e. certificate subjects).
*/
dnsNames?: pulumi.Input<pulumi.Input<string>[]>;
/**
* List of IP addresses for which a certificate is being requested (i.e. certificate subjects).
*/
ipAddresses?: pulumi.Input<pulumi.Input<string>[]>;
/**
* Private key in [PEM (RFC 1421)](https://datatracker.ietf.org/doc/html/rfc1421) format, that the certificate will belong to. This can be read from a separate file using the `file` interpolation function.
*/
privateKeyPem: pulumi.Input<string>;
/**
* The subject for which a certificate is being requested. The acceptable arguments are all optional and their naming is based upon [Issuer Distinguished Names (RFC5280)](https://tools.ietf.org/html/rfc5280#section-4.1.2.4) section.
*/
subject?: pulumi.Input<inputs.CertRequestSubject>;
/**
* List of URIs for which a certificate is being requested (i.e. certificate subjects).
*/
uris?: pulumi.Input<pulumi.Input<string>[]>;
}