@huaweicloudos/pulumi
Version:
A Pulumi package for creating and managing Huaweicloud cloud resources.
264 lines (263 loc) • 11.3 kB
TypeScript
import * as pulumi from "@pulumi/pulumi";
import { input as inputs, output as outputs } from "../types";
/**
* ## Import
*
* Certificates can be imported using the `id`, e.g.
*
* ```sh
* $ pulumi import huaweicloud:Scm/certificate:Certificate certificate_1 scs1627959834994
* ```
*/
export declare class Certificate extends pulumi.CustomResource {
/**
* Get an existing Certificate 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?: CertificateState, opts?: pulumi.CustomResourceOptions): Certificate;
/**
* Returns true if the given object is an instance of Certificate. 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 Certificate;
/**
* (List) Domain ownership verification information.
* This is a list, each item of data is as follows:
*/
readonly authentifications: pulumi.Output<outputs.Scm.CertificateAuthentification[]>;
/**
* Specifies the content of the Certificate, PEM format.
* It can include intermediate certificates and root certificates. If the `certificateChain` is passed into
* the certificate chain, then this field only takes the certificate itself.
* Changing this parameter will create a new resource.
*/
readonly certificate: pulumi.Output<string>;
/**
* Specifies the chain of the certificate.
* It can passed by `certificate`. It can be extracted from the *server.crt* file in the Nginx directory,
* usually after the second paragraph is the certificate chain.
* Changing this parameter will create a new resource.
*/
readonly certificateChain: pulumi.Output<string | undefined>;
/**
* Domain name mapping to the verification value
*/
readonly domain: pulumi.Output<string>;
/**
* Number of domain names can be bound to a certificate.
*/
readonly domainCount: pulumi.Output<number>;
/**
* Specifies the encrypted content of the state secret certificate.
* Using the escape character `\n` or `\r\n` to replace carriage return and line feed characters.
*/
readonly encCertificate: pulumi.Output<string | undefined>;
/**
* Specifies the encrypted private key of the state secret certificate.
* Password-protected private keys cannot be uploaded, and using the escape character `\n` or `\r\n` to replace carriage
* return and line feed characters.
*/
readonly encPrivateKey: pulumi.Output<string | undefined>;
/**
* Specifies the enterprise project ID. This parameter is only
* valid for enterprise users. Resources under all authorized enterprise projects of the tenant will be queried by default
* if this parameter is not specified for enterprise users.
*/
readonly enterpriseProjectId: pulumi.Output<string>;
/**
* Specifies the human-readable name for the certificate.
* Does not have to be unique. The value contains a maximum of 63 characters.
* Changing this parameter will create a new resource.
*/
readonly name: pulumi.Output<string>;
/**
* Time when the certificate becomes invalid. If no valid value is obtained, this parameter is left blank.
*/
readonly notAfter: pulumi.Output<string>;
/**
* Time when the certificate takes effect. If no valid value is obtained, this parameter is left blank.
*/
readonly notBefore: pulumi.Output<string>;
/**
* Specifies the private encrypted key of the Certificate, PEM format.
* Changing this parameter will create a new resource.
*/
readonly privateKey: pulumi.Output<string>;
/**
* Whether a certificate can be pushed.
*/
readonly pushSupport: pulumi.Output<string>;
/**
* Specifies the region in which to create the SCM certificate resource.
* If omitted, the provider-level region will be used.
* Changing this setting will push a new certificate.
*/
readonly region: pulumi.Output<string>;
/**
* Certificate status. The value can be:
*/
readonly status: pulumi.Output<string>;
/**
* Specifies the service to which the certificate needs to be pushed.
* The target structure is documented below.
*/
readonly targets: pulumi.Output<outputs.Scm.CertificateTarget[] | undefined>;
/**
* Create a Certificate 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: CertificateArgs, opts?: pulumi.CustomResourceOptions);
}
/**
* Input properties used for looking up and filtering Certificate resources.
*/
export interface CertificateState {
/**
* (List) Domain ownership verification information.
* This is a list, each item of data is as follows:
*/
authentifications?: pulumi.Input<pulumi.Input<inputs.Scm.CertificateAuthentification>[]>;
/**
* Specifies the content of the Certificate, PEM format.
* It can include intermediate certificates and root certificates. If the `certificateChain` is passed into
* the certificate chain, then this field only takes the certificate itself.
* Changing this parameter will create a new resource.
*/
certificate?: pulumi.Input<string>;
/**
* Specifies the chain of the certificate.
* It can passed by `certificate`. It can be extracted from the *server.crt* file in the Nginx directory,
* usually after the second paragraph is the certificate chain.
* Changing this parameter will create a new resource.
*/
certificateChain?: pulumi.Input<string>;
/**
* Domain name mapping to the verification value
*/
domain?: pulumi.Input<string>;
/**
* Number of domain names can be bound to a certificate.
*/
domainCount?: pulumi.Input<number>;
/**
* Specifies the encrypted content of the state secret certificate.
* Using the escape character `\n` or `\r\n` to replace carriage return and line feed characters.
*/
encCertificate?: pulumi.Input<string>;
/**
* Specifies the encrypted private key of the state secret certificate.
* Password-protected private keys cannot be uploaded, and using the escape character `\n` or `\r\n` to replace carriage
* return and line feed characters.
*/
encPrivateKey?: pulumi.Input<string>;
/**
* Specifies the enterprise project ID. This parameter is only
* valid for enterprise users. Resources under all authorized enterprise projects of the tenant will be queried by default
* if this parameter is not specified for enterprise users.
*/
enterpriseProjectId?: pulumi.Input<string>;
/**
* Specifies the human-readable name for the certificate.
* Does not have to be unique. The value contains a maximum of 63 characters.
* Changing this parameter will create a new resource.
*/
name?: pulumi.Input<string>;
/**
* Time when the certificate becomes invalid. If no valid value is obtained, this parameter is left blank.
*/
notAfter?: pulumi.Input<string>;
/**
* Time when the certificate takes effect. If no valid value is obtained, this parameter is left blank.
*/
notBefore?: pulumi.Input<string>;
/**
* Specifies the private encrypted key of the Certificate, PEM format.
* Changing this parameter will create a new resource.
*/
privateKey?: pulumi.Input<string>;
/**
* Whether a certificate can be pushed.
*/
pushSupport?: pulumi.Input<string>;
/**
* Specifies the region in which to create the SCM certificate resource.
* If omitted, the provider-level region will be used.
* Changing this setting will push a new certificate.
*/
region?: pulumi.Input<string>;
/**
* Certificate status. The value can be:
*/
status?: pulumi.Input<string>;
/**
* Specifies the service to which the certificate needs to be pushed.
* The target structure is documented below.
*/
targets?: pulumi.Input<pulumi.Input<inputs.Scm.CertificateTarget>[]>;
}
/**
* The set of arguments for constructing a Certificate resource.
*/
export interface CertificateArgs {
/**
* Specifies the content of the Certificate, PEM format.
* It can include intermediate certificates and root certificates. If the `certificateChain` is passed into
* the certificate chain, then this field only takes the certificate itself.
* Changing this parameter will create a new resource.
*/
certificate: pulumi.Input<string>;
/**
* Specifies the chain of the certificate.
* It can passed by `certificate`. It can be extracted from the *server.crt* file in the Nginx directory,
* usually after the second paragraph is the certificate chain.
* Changing this parameter will create a new resource.
*/
certificateChain?: pulumi.Input<string>;
/**
* Specifies the encrypted content of the state secret certificate.
* Using the escape character `\n` or `\r\n` to replace carriage return and line feed characters.
*/
encCertificate?: pulumi.Input<string>;
/**
* Specifies the encrypted private key of the state secret certificate.
* Password-protected private keys cannot be uploaded, and using the escape character `\n` or `\r\n` to replace carriage
* return and line feed characters.
*/
encPrivateKey?: pulumi.Input<string>;
/**
* Specifies the enterprise project ID. This parameter is only
* valid for enterprise users. Resources under all authorized enterprise projects of the tenant will be queried by default
* if this parameter is not specified for enterprise users.
*/
enterpriseProjectId?: pulumi.Input<string>;
/**
* Specifies the human-readable name for the certificate.
* Does not have to be unique. The value contains a maximum of 63 characters.
* Changing this parameter will create a new resource.
*/
name?: pulumi.Input<string>;
/**
* Specifies the private encrypted key of the Certificate, PEM format.
* Changing this parameter will create a new resource.
*/
privateKey: pulumi.Input<string>;
/**
* Specifies the region in which to create the SCM certificate resource.
* If omitted, the provider-level region will be used.
* Changing this setting will push a new certificate.
*/
region?: pulumi.Input<string>;
/**
* Specifies the service to which the certificate needs to be pushed.
* The target structure is documented below.
*/
targets?: pulumi.Input<pulumi.Input<inputs.Scm.CertificateTarget>[]>;
}