@pulumi/tls 5.3.0 → 5.3.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/certRequest.d.ts CHANGED
@@ -2,6 +2,15 @@ import * as pulumi from "@pulumi/pulumi";
2
2
  import * as inputs from "./types/input";
3
3
  import * as outputs from "./types/output";
4
4
  /**
5
+ * Creates a Certificate Signing Request (CSR) in [PEM (RFC 1421)](https://datatracker.ietf.org/doc/html/rfc1421) format.
6
+ *
7
+ * PEM is the typical format used to request a certificate from a Certificate Authority (CA).
8
+ *
9
+ * This resource is intended to be used in conjunction with a Terraform provider for a particular certificate authority in order to provision a new certificate.
10
+ *
11
+ * This is a *logical resource*, so it contributes only to the current Terraform
12
+ * state and does not create any external managed resources.
13
+ *
5
14
  * ## Example Usage
6
15
  *
7
16
  * ```typescript
package/certRequest.js CHANGED
@@ -6,6 +6,15 @@ exports.CertRequest = void 0;
6
6
  const pulumi = require("@pulumi/pulumi");
7
7
  const utilities = require("./utilities");
8
8
  /**
9
+ * Creates a Certificate Signing Request (CSR) in [PEM (RFC 1421)](https://datatracker.ietf.org/doc/html/rfc1421) format.
10
+ *
11
+ * PEM is the typical format used to request a certificate from a Certificate Authority (CA).
12
+ *
13
+ * This resource is intended to be used in conjunction with a Terraform provider for a particular certificate authority in order to provision a new certificate.
14
+ *
15
+ * This is a *logical resource*, so it contributes only to the current Terraform
16
+ * state and does not create any external managed resources.
17
+ *
9
18
  * ## Example Usage
10
19
  *
11
20
  * ```typescript
@@ -1 +1 @@
1
- {"version":3,"file":"certRequest.js","sourceRoot":"","sources":["../certRequest.ts"],"names":[],"mappings":";AAAA,sEAAsE;AACtE,iFAAiF;;;AAEjF,yCAAyC;AAGzC,yCAAyC;AAEzC;;;;;;;;;;;;;;;;;;GAkBG;AACH,MAAa,WAAY,SAAQ,MAAM,CAAC,cAAc;IAClD;;;;;;;;OAQG;IACI,MAAM,CAAC,GAAG,CAAC,IAAY,EAAE,EAA2B,EAAE,KAAwB,EAAE,IAAmC;QACtH,OAAO,IAAI,WAAW,CAAC,IAAI,EAAO,KAAK,EAAE,EAAE,GAAG,IAAI,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;IAClE,CAAC;IAKD;;;OAGG;IACI,MAAM,CAAC,UAAU,CAAC,GAAQ;QAC7B,IAAI,GAAG,KAAK,SAAS,IAAI,GAAG,KAAK,IAAI,EAAE;YACnC,OAAO,KAAK,CAAC;SAChB;QACD,OAAO,GAAG,CAAC,cAAc,CAAC,KAAK,WAAW,CAAC,YAAY,CAAC;IAC5D,CAAC;IAuCD,YAAY,IAAY,EAAE,WAAgD,EAAE,IAAmC;QAC3G,IAAI,cAAc,GAAkB,EAAE,CAAC;QACvC,IAAI,GAAG,IAAI,IAAI,EAAE,CAAC;QAClB,IAAI,IAAI,CAAC,EAAE,EAAE;YACT,MAAM,KAAK,GAAG,WAA2C,CAAC;YAC1D,cAAc,CAAC,gBAAgB,CAAC,GAAG,KAAK,EAAE,cAAc,CAAC;YACzD,cAAc,CAAC,UAAU,CAAC,GAAG,KAAK,EAAE,QAAQ,CAAC;YAC7C,cAAc,CAAC,aAAa,CAAC,GAAG,KAAK,EAAE,WAAW,CAAC;YACnD,cAAc,CAAC,cAAc,CAAC,GAAG,KAAK,EAAE,YAAY,CAAC;YACrD,cAAc,CAAC,eAAe,CAAC,GAAG,KAAK,EAAE,aAAa,CAAC;YACvD,cAAc,CAAC,SAAS,CAAC,GAAG,KAAK,EAAE,OAAO,CAAC;YAC3C,cAAc,CAAC,MAAM,CAAC,GAAG,KAAK,EAAE,IAAI,CAAC;SACxC;aAAM;YACH,MAAM,IAAI,GAAG,WAA0C,CAAC;YACxD,IAAI,IAAI,EAAE,aAAa,KAAK,SAAS,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE;gBAChD,MAAM,IAAI,KAAK,CAAC,2CAA2C,CAAC,CAAC;aAChE;YACD,cAAc,CAAC,UAAU,CAAC,GAAG,IAAI,EAAE,QAAQ,CAAC;YAC5C,cAAc,CAAC,aAAa,CAAC,GAAG,IAAI,EAAE,WAAW,CAAC;YAClD,cAAc,CAAC,eAAe,CAAC,GAAG,IAAI,EAAE,aAAa,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;YACtG,cAAc,CAAC,SAAS,CAAC,GAAG,IAAI,EAAE,OAAO,CAAC;YAC1C,cAAc,CAAC,MAAM,CAAC,GAAG,IAAI,EAAE,IAAI,CAAC;YACpC,cAAc,CAAC,gBAAgB,CAAC,GAAG,SAAS,CAAC,OAAO,CAAC;YACrD,cAAc,CAAC,cAAc,CAAC,GAAG,SAAS,CAAC,OAAO,CAAC;SACtD;QACD,IAAI,GAAG,MAAM,CAAC,YAAY,CAAC,SAAS,CAAC,oBAAoB,EAAE,EAAE,IAAI,CAAC,CAAC;QACnE,MAAM,UAAU,GAAG,EAAE,uBAAuB,EAAE,CAAC,eAAe,CAAC,EAAE,CAAC;QAClE,IAAI,GAAG,MAAM,CAAC,YAAY,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC;QAC7C,KAAK,CAAC,WAAW,CAAC,YAAY,EAAE,IAAI,EAAE,cAAc,EAAE,IAAI,CAAC,CAAC;IAChE,CAAC;;AA9FL,kCA+FC;AAjFG,gBAAgB;AACO,wBAAY,GAAG,mCAAmC,CAAC"}
1
+ {"version":3,"file":"certRequest.js","sourceRoot":"","sources":["../certRequest.ts"],"names":[],"mappings":";AAAA,sEAAsE;AACtE,iFAAiF;;;AAEjF,yCAAyC;AAGzC,yCAAyC;AAEzC;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AACH,MAAa,WAAY,SAAQ,MAAM,CAAC,cAAc;IAClD;;;;;;;;OAQG;IACI,MAAM,CAAC,GAAG,CAAC,IAAY,EAAE,EAA2B,EAAE,KAAwB,EAAE,IAAmC;QACtH,OAAO,IAAI,WAAW,CAAC,IAAI,EAAO,KAAK,EAAE,EAAE,GAAG,IAAI,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;IAClE,CAAC;IAKD;;;OAGG;IACI,MAAM,CAAC,UAAU,CAAC,GAAQ;QAC7B,IAAI,GAAG,KAAK,SAAS,IAAI,GAAG,KAAK,IAAI,EAAE;YACnC,OAAO,KAAK,CAAC;SAChB;QACD,OAAO,GAAG,CAAC,cAAc,CAAC,KAAK,WAAW,CAAC,YAAY,CAAC;IAC5D,CAAC;IAuCD,YAAY,IAAY,EAAE,WAAgD,EAAE,IAAmC;QAC3G,IAAI,cAAc,GAAkB,EAAE,CAAC;QACvC,IAAI,GAAG,IAAI,IAAI,EAAE,CAAC;QAClB,IAAI,IAAI,CAAC,EAAE,EAAE;YACT,MAAM,KAAK,GAAG,WAA2C,CAAC;YAC1D,cAAc,CAAC,gBAAgB,CAAC,GAAG,KAAK,EAAE,cAAc,CAAC;YACzD,cAAc,CAAC,UAAU,CAAC,GAAG,KAAK,EAAE,QAAQ,CAAC;YAC7C,cAAc,CAAC,aAAa,CAAC,GAAG,KAAK,EAAE,WAAW,CAAC;YACnD,cAAc,CAAC,cAAc,CAAC,GAAG,KAAK,EAAE,YAAY,CAAC;YACrD,cAAc,CAAC,eAAe,CAAC,GAAG,KAAK,EAAE,aAAa,CAAC;YACvD,cAAc,CAAC,SAAS,CAAC,GAAG,KAAK,EAAE,OAAO,CAAC;YAC3C,cAAc,CAAC,MAAM,CAAC,GAAG,KAAK,EAAE,IAAI,CAAC;SACxC;aAAM;YACH,MAAM,IAAI,GAAG,WAA0C,CAAC;YACxD,IAAI,IAAI,EAAE,aAAa,KAAK,SAAS,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE;gBAChD,MAAM,IAAI,KAAK,CAAC,2CAA2C,CAAC,CAAC;aAChE;YACD,cAAc,CAAC,UAAU,CAAC,GAAG,IAAI,EAAE,QAAQ,CAAC;YAC5C,cAAc,CAAC,aAAa,CAAC,GAAG,IAAI,EAAE,WAAW,CAAC;YAClD,cAAc,CAAC,eAAe,CAAC,GAAG,IAAI,EAAE,aAAa,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;YACtG,cAAc,CAAC,SAAS,CAAC,GAAG,IAAI,EAAE,OAAO,CAAC;YAC1C,cAAc,CAAC,MAAM,CAAC,GAAG,IAAI,EAAE,IAAI,CAAC;YACpC,cAAc,CAAC,gBAAgB,CAAC,GAAG,SAAS,CAAC,OAAO,CAAC;YACrD,cAAc,CAAC,cAAc,CAAC,GAAG,SAAS,CAAC,OAAO,CAAC;SACtD;QACD,IAAI,GAAG,MAAM,CAAC,YAAY,CAAC,SAAS,CAAC,oBAAoB,EAAE,EAAE,IAAI,CAAC,CAAC;QACnE,MAAM,UAAU,GAAG,EAAE,uBAAuB,EAAE,CAAC,eAAe,CAAC,EAAE,CAAC;QAClE,IAAI,GAAG,MAAM,CAAC,YAAY,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC;QAC7C,KAAK,CAAC,WAAW,CAAC,YAAY,EAAE,IAAI,EAAE,cAAc,EAAE,IAAI,CAAC,CAAC;IAChE,CAAC;;AA9FL,kCA+FC;AAjFG,gBAAgB;AACO,wBAAY,GAAG,mCAAmC,CAAC"}
@@ -1,5 +1,49 @@
1
1
  import * as pulumi from "@pulumi/pulumi";
2
2
  import * as outputs from "./types/output";
3
+ /**
4
+ * Get information about the TLS certificates securing a host.
5
+ *
6
+ * Use this data source to get information, such as SHA1 fingerprint or serial number, about the TLS certificates that protects a URL.
7
+ *
8
+ * ## Example Usage
9
+ *
10
+ * ### URL Usage
11
+ * ```typescript
12
+ * import * as pulumi from "@pulumi/pulumi";
13
+ * import * as aws from "@pulumi/aws";
14
+ * import * as tls from "@pulumi/tls";
15
+ *
16
+ * const exampleEksCluster = new aws.index.EksCluster("example", {name: "example"});
17
+ * const example = tls.getCertificate({
18
+ * url: exampleEksCluster.identity[0].oidc[0].issuer,
19
+ * });
20
+ * const exampleIamOpenidConnectProvider = new aws.index.IamOpenidConnectProvider("example", {
21
+ * clientIdList: ["sts.amazonaws.com"],
22
+ * thumbprintList: [example.certificates?.[0]?.sha1Fingerprint],
23
+ * url: exampleEksCluster.identity[0].oidc[0].issuer,
24
+ * });
25
+ * ```
26
+ *
27
+ * ### Content Usage
28
+ * ```typescript
29
+ * import * as pulumi from "@pulumi/pulumi";
30
+ * import * as std from "@pulumi/std";
31
+ * import * as tls from "@pulumi/tls";
32
+ *
33
+ * const exampleContent = std.file({
34
+ * input: "example.pem",
35
+ * }).then(invoke => tls.getCertificate({
36
+ * content: invoke.result,
37
+ * }));
38
+ * ```
39
+ *
40
+ * <!--
41
+ * Schema ORIGINALLY generated by tfplugindocs,
42
+ * then manually tweaked to circumvent current limitations.
43
+ *
44
+ * This should be revisited, once https://github.com/hashicorp/terraform-plugin-docs/issues/66 is resolved.
45
+ * -->
46
+ */
3
47
  export declare function getCertificate(args?: GetCertificateArgs, opts?: pulumi.InvokeOptions): Promise<GetCertificateResult>;
4
48
  /**
5
49
  * A collection of arguments for invoking getCertificate.
@@ -43,6 +87,50 @@ export interface GetCertificateResult {
43
87
  */
44
88
  readonly verifyChain?: boolean;
45
89
  }
90
+ /**
91
+ * Get information about the TLS certificates securing a host.
92
+ *
93
+ * Use this data source to get information, such as SHA1 fingerprint or serial number, about the TLS certificates that protects a URL.
94
+ *
95
+ * ## Example Usage
96
+ *
97
+ * ### URL Usage
98
+ * ```typescript
99
+ * import * as pulumi from "@pulumi/pulumi";
100
+ * import * as aws from "@pulumi/aws";
101
+ * import * as tls from "@pulumi/tls";
102
+ *
103
+ * const exampleEksCluster = new aws.index.EksCluster("example", {name: "example"});
104
+ * const example = tls.getCertificate({
105
+ * url: exampleEksCluster.identity[0].oidc[0].issuer,
106
+ * });
107
+ * const exampleIamOpenidConnectProvider = new aws.index.IamOpenidConnectProvider("example", {
108
+ * clientIdList: ["sts.amazonaws.com"],
109
+ * thumbprintList: [example.certificates?.[0]?.sha1Fingerprint],
110
+ * url: exampleEksCluster.identity[0].oidc[0].issuer,
111
+ * });
112
+ * ```
113
+ *
114
+ * ### Content Usage
115
+ * ```typescript
116
+ * import * as pulumi from "@pulumi/pulumi";
117
+ * import * as std from "@pulumi/std";
118
+ * import * as tls from "@pulumi/tls";
119
+ *
120
+ * const exampleContent = std.file({
121
+ * input: "example.pem",
122
+ * }).then(invoke => tls.getCertificate({
123
+ * content: invoke.result,
124
+ * }));
125
+ * ```
126
+ *
127
+ * <!--
128
+ * Schema ORIGINALLY generated by tfplugindocs,
129
+ * then manually tweaked to circumvent current limitations.
130
+ *
131
+ * This should be revisited, once https://github.com/hashicorp/terraform-plugin-docs/issues/66 is resolved.
132
+ * -->
133
+ */
46
134
  export declare function getCertificateOutput(args?: GetCertificateOutputArgs, opts?: pulumi.InvokeOutputOptions): pulumi.Output<GetCertificateResult>;
47
135
  /**
48
136
  * A collection of arguments for invoking getCertificate.
package/getCertificate.js CHANGED
@@ -5,6 +5,50 @@ Object.defineProperty(exports, "__esModule", { value: true });
5
5
  exports.getCertificateOutput = exports.getCertificate = void 0;
6
6
  const pulumi = require("@pulumi/pulumi");
7
7
  const utilities = require("./utilities");
8
+ /**
9
+ * Get information about the TLS certificates securing a host.
10
+ *
11
+ * Use this data source to get information, such as SHA1 fingerprint or serial number, about the TLS certificates that protects a URL.
12
+ *
13
+ * ## Example Usage
14
+ *
15
+ * ### URL Usage
16
+ * ```typescript
17
+ * import * as pulumi from "@pulumi/pulumi";
18
+ * import * as aws from "@pulumi/aws";
19
+ * import * as tls from "@pulumi/tls";
20
+ *
21
+ * const exampleEksCluster = new aws.index.EksCluster("example", {name: "example"});
22
+ * const example = tls.getCertificate({
23
+ * url: exampleEksCluster.identity[0].oidc[0].issuer,
24
+ * });
25
+ * const exampleIamOpenidConnectProvider = new aws.index.IamOpenidConnectProvider("example", {
26
+ * clientIdList: ["sts.amazonaws.com"],
27
+ * thumbprintList: [example.certificates?.[0]?.sha1Fingerprint],
28
+ * url: exampleEksCluster.identity[0].oidc[0].issuer,
29
+ * });
30
+ * ```
31
+ *
32
+ * ### Content Usage
33
+ * ```typescript
34
+ * import * as pulumi from "@pulumi/pulumi";
35
+ * import * as std from "@pulumi/std";
36
+ * import * as tls from "@pulumi/tls";
37
+ *
38
+ * const exampleContent = std.file({
39
+ * input: "example.pem",
40
+ * }).then(invoke => tls.getCertificate({
41
+ * content: invoke.result,
42
+ * }));
43
+ * ```
44
+ *
45
+ * <!--
46
+ * Schema ORIGINALLY generated by tfplugindocs,
47
+ * then manually tweaked to circumvent current limitations.
48
+ *
49
+ * This should be revisited, once https://github.com/hashicorp/terraform-plugin-docs/issues/66 is resolved.
50
+ * -->
51
+ */
8
52
  function getCertificate(args, opts) {
9
53
  args = args || {};
10
54
  opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {});
@@ -15,6 +59,50 @@ function getCertificate(args, opts) {
15
59
  }, opts);
16
60
  }
17
61
  exports.getCertificate = getCertificate;
62
+ /**
63
+ * Get information about the TLS certificates securing a host.
64
+ *
65
+ * Use this data source to get information, such as SHA1 fingerprint or serial number, about the TLS certificates that protects a URL.
66
+ *
67
+ * ## Example Usage
68
+ *
69
+ * ### URL Usage
70
+ * ```typescript
71
+ * import * as pulumi from "@pulumi/pulumi";
72
+ * import * as aws from "@pulumi/aws";
73
+ * import * as tls from "@pulumi/tls";
74
+ *
75
+ * const exampleEksCluster = new aws.index.EksCluster("example", {name: "example"});
76
+ * const example = tls.getCertificate({
77
+ * url: exampleEksCluster.identity[0].oidc[0].issuer,
78
+ * });
79
+ * const exampleIamOpenidConnectProvider = new aws.index.IamOpenidConnectProvider("example", {
80
+ * clientIdList: ["sts.amazonaws.com"],
81
+ * thumbprintList: [example.certificates?.[0]?.sha1Fingerprint],
82
+ * url: exampleEksCluster.identity[0].oidc[0].issuer,
83
+ * });
84
+ * ```
85
+ *
86
+ * ### Content Usage
87
+ * ```typescript
88
+ * import * as pulumi from "@pulumi/pulumi";
89
+ * import * as std from "@pulumi/std";
90
+ * import * as tls from "@pulumi/tls";
91
+ *
92
+ * const exampleContent = std.file({
93
+ * input: "example.pem",
94
+ * }).then(invoke => tls.getCertificate({
95
+ * content: invoke.result,
96
+ * }));
97
+ * ```
98
+ *
99
+ * <!--
100
+ * Schema ORIGINALLY generated by tfplugindocs,
101
+ * then manually tweaked to circumvent current limitations.
102
+ *
103
+ * This should be revisited, once https://github.com/hashicorp/terraform-plugin-docs/issues/66 is resolved.
104
+ * -->
105
+ */
18
106
  function getCertificateOutput(args, opts) {
19
107
  args = args || {};
20
108
  opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {});
@@ -1 +1 @@
1
- {"version":3,"file":"getCertificate.js","sourceRoot":"","sources":["../getCertificate.ts"],"names":[],"mappings":";AAAA,sEAAsE;AACtE,iFAAiF;;;AAEjF,yCAAyC;AAGzC,yCAAyC;AAEzC,SAAgB,cAAc,CAAC,IAAyB,EAAE,IAA2B;IACjF,IAAI,GAAG,IAAI,IAAI,EAAE,CAAC;IAClB,IAAI,GAAG,MAAM,CAAC,YAAY,CAAC,SAAS,CAAC,oBAAoB,EAAE,EAAE,IAAI,IAAI,EAAE,CAAC,CAAC;IACzE,OAAO,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,yCAAyC,EAAE;QACpE,SAAS,EAAE,IAAI,CAAC,OAAO;QACvB,KAAK,EAAE,IAAI,CAAC,GAAG;QACf,aAAa,EAAE,IAAI,CAAC,WAAW;KAClC,EAAE,IAAI,CAAC,CAAC;AACb,CAAC;AARD,wCAQC;AA6CD,SAAgB,oBAAoB,CAAC,IAA+B,EAAE,IAAiC;IACnG,IAAI,GAAG,IAAI,IAAI,EAAE,CAAC;IAClB,IAAI,GAAG,MAAM,CAAC,YAAY,CAAC,SAAS,CAAC,oBAAoB,EAAE,EAAE,IAAI,IAAI,EAAE,CAAC,CAAC;IACzE,OAAO,MAAM,CAAC,OAAO,CAAC,YAAY,CAAC,yCAAyC,EAAE;QAC1E,SAAS,EAAE,IAAI,CAAC,OAAO;QACvB,KAAK,EAAE,IAAI,CAAC,GAAG;QACf,aAAa,EAAE,IAAI,CAAC,WAAW;KAClC,EAAE,IAAI,CAAC,CAAC;AACb,CAAC;AARD,oDAQC"}
1
+ {"version":3,"file":"getCertificate.js","sourceRoot":"","sources":["../getCertificate.ts"],"names":[],"mappings":";AAAA,sEAAsE;AACtE,iFAAiF;;;AAEjF,yCAAyC;AAGzC,yCAAyC;AAEzC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2CG;AACH,SAAgB,cAAc,CAAC,IAAyB,EAAE,IAA2B;IACjF,IAAI,GAAG,IAAI,IAAI,EAAE,CAAC;IAClB,IAAI,GAAG,MAAM,CAAC,YAAY,CAAC,SAAS,CAAC,oBAAoB,EAAE,EAAE,IAAI,IAAI,EAAE,CAAC,CAAC;IACzE,OAAO,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,yCAAyC,EAAE;QACpE,SAAS,EAAE,IAAI,CAAC,OAAO;QACvB,KAAK,EAAE,IAAI,CAAC,GAAG;QACf,aAAa,EAAE,IAAI,CAAC,WAAW;KAClC,EAAE,IAAI,CAAC,CAAC;AACb,CAAC;AARD,wCAQC;AA6CD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2CG;AACH,SAAgB,oBAAoB,CAAC,IAA+B,EAAE,IAAiC;IACnG,IAAI,GAAG,IAAI,IAAI,EAAE,CAAC;IAClB,IAAI,GAAG,MAAM,CAAC,YAAY,CAAC,SAAS,CAAC,oBAAoB,EAAE,EAAE,IAAI,IAAI,EAAE,CAAC,CAAC;IACzE,OAAO,MAAM,CAAC,OAAO,CAAC,YAAY,CAAC,yCAAyC,EAAE;QAC1E,SAAS,EAAE,IAAI,CAAC,OAAO;QACvB,KAAK,EAAE,IAAI,CAAC,GAAG;QACf,aAAa,EAAE,IAAI,CAAC,WAAW;KAClC,EAAE,IAAI,CAAC,CAAC;AACb,CAAC;AARD,oDAQC"}
@@ -1,4 +1,53 @@
1
1
  import * as pulumi from "@pulumi/pulumi";
2
+ /**
3
+ * Creates a TLS certificate in [PEM (RFC 1421)](https://datatracker.ietf.org/doc/html/rfc1421) format using a Certificate Signing Request (CSR) and signs it with a provided (local) Certificate Authority (CA).
4
+ *
5
+ * > **Note** Locally-signed certificates are generally only trusted by client software when
6
+ * setup to use the provided CA. They are normally used in development environments
7
+ * or when deployed internally to an organization.
8
+ *
9
+ * ## Example Usage
10
+ *
11
+ * ```typescript
12
+ * import * as pulumi from "@pulumi/pulumi";
13
+ * import * as std from "@pulumi/std";
14
+ * import * as tls from "@pulumi/tls";
15
+ *
16
+ * const example = new tls.LocallySignedCert("example", {
17
+ * certRequestPem: std.file({
18
+ * input: "cert_request.pem",
19
+ * }).then(invoke => invoke.result),
20
+ * caPrivateKeyPem: std.file({
21
+ * input: "ca_private_key.pem",
22
+ * }).then(invoke => invoke.result),
23
+ * caCertPem: std.file({
24
+ * input: "ca_cert.pem",
25
+ * }).then(invoke => invoke.result),
26
+ * validityPeriodHours: 12,
27
+ * allowedUses: [
28
+ * "key_encipherment",
29
+ * "digital_signature",
30
+ * "server_auth",
31
+ * ],
32
+ * });
33
+ * ```
34
+ *
35
+ * ## Automatic Renewal
36
+ *
37
+ * This resource considers its instances to have been deleted after either their validity
38
+ * periods ends (i.e. beyond the `validityPeriodHours`)
39
+ * or the early renewal period is reached (i.e. within the `earlyRenewalHours`):
40
+ * when this happens, the `readyForRenewal` attribute will be `true`.
41
+ * At this time, applying the Terraform configuration will cause a new certificate to be
42
+ * generated for the instance.
43
+ *
44
+ * Therefore in a development environment with frequent deployments it may be convenient
45
+ * to set a relatively-short expiration time and use early renewal to automatically provision
46
+ * a new certificate when the current one is about to expire.
47
+ *
48
+ * The creation of a new certificate may of course cause dependent resources to be updated
49
+ * or replaced, depending on the lifecycle rules applying to those resources.
50
+ */
2
51
  export declare class LocallySignedCert extends pulumi.CustomResource {
3
52
  /**
4
53
  * Get an existing LocallySignedCert resource's state with the given name, ID, and optional extra
@@ -39,6 +88,9 @@ export declare class LocallySignedCert extends pulumi.CustomResource {
39
88
  * Certificate request data in [PEM (RFC 1421)](https://datatracker.ietf.org/doc/html/rfc1421) format.
40
89
  */
41
90
  readonly certRequestPem: pulumi.Output<string>;
91
+ /**
92
+ * The resource will consider the certificate to have expired the given number of hours before its actual expiry time. This can be useful to deploy an updated certificate in advance of the expiration of the current certificate. However, the old certificate remains valid until its true expiration time, since this resource does not (and cannot) support certificate revocation. Also, this advance update can only be performed should the Terraform configuration be applied during the early renewal period. (default: `0`)
93
+ */
42
94
  readonly earlyRenewalHours: pulumi.Output<number>;
43
95
  /**
44
96
  * Is the generated certificate representing a Certificate Authority (CA) (default: `false`).
@@ -105,6 +157,9 @@ export interface LocallySignedCertState {
105
157
  * Certificate request data in [PEM (RFC 1421)](https://datatracker.ietf.org/doc/html/rfc1421) format.
106
158
  */
107
159
  certRequestPem?: pulumi.Input<string>;
160
+ /**
161
+ * The resource will consider the certificate to have expired the given number of hours before its actual expiry time. This can be useful to deploy an updated certificate in advance of the expiration of the current certificate. However, the old certificate remains valid until its true expiration time, since this resource does not (and cannot) support certificate revocation. Also, this advance update can only be performed should the Terraform configuration be applied during the early renewal period. (default: `0`)
162
+ */
108
163
  earlyRenewalHours?: pulumi.Input<number>;
109
164
  /**
110
165
  * Is the generated certificate representing a Certificate Authority (CA) (default: `false`).
@@ -155,6 +210,9 @@ export interface LocallySignedCertArgs {
155
210
  * Certificate request data in [PEM (RFC 1421)](https://datatracker.ietf.org/doc/html/rfc1421) format.
156
211
  */
157
212
  certRequestPem: pulumi.Input<string>;
213
+ /**
214
+ * The resource will consider the certificate to have expired the given number of hours before its actual expiry time. This can be useful to deploy an updated certificate in advance of the expiration of the current certificate. However, the old certificate remains valid until its true expiration time, since this resource does not (and cannot) support certificate revocation. Also, this advance update can only be performed should the Terraform configuration be applied during the early renewal period. (default: `0`)
215
+ */
158
216
  earlyRenewalHours?: pulumi.Input<number>;
159
217
  /**
160
218
  * Is the generated certificate representing a Certificate Authority (CA) (default: `false`).
@@ -5,6 +5,55 @@ Object.defineProperty(exports, "__esModule", { value: true });
5
5
  exports.LocallySignedCert = void 0;
6
6
  const pulumi = require("@pulumi/pulumi");
7
7
  const utilities = require("./utilities");
8
+ /**
9
+ * Creates a TLS certificate in [PEM (RFC 1421)](https://datatracker.ietf.org/doc/html/rfc1421) format using a Certificate Signing Request (CSR) and signs it with a provided (local) Certificate Authority (CA).
10
+ *
11
+ * > **Note** Locally-signed certificates are generally only trusted by client software when
12
+ * setup to use the provided CA. They are normally used in development environments
13
+ * or when deployed internally to an organization.
14
+ *
15
+ * ## Example Usage
16
+ *
17
+ * ```typescript
18
+ * import * as pulumi from "@pulumi/pulumi";
19
+ * import * as std from "@pulumi/std";
20
+ * import * as tls from "@pulumi/tls";
21
+ *
22
+ * const example = new tls.LocallySignedCert("example", {
23
+ * certRequestPem: std.file({
24
+ * input: "cert_request.pem",
25
+ * }).then(invoke => invoke.result),
26
+ * caPrivateKeyPem: std.file({
27
+ * input: "ca_private_key.pem",
28
+ * }).then(invoke => invoke.result),
29
+ * caCertPem: std.file({
30
+ * input: "ca_cert.pem",
31
+ * }).then(invoke => invoke.result),
32
+ * validityPeriodHours: 12,
33
+ * allowedUses: [
34
+ * "key_encipherment",
35
+ * "digital_signature",
36
+ * "server_auth",
37
+ * ],
38
+ * });
39
+ * ```
40
+ *
41
+ * ## Automatic Renewal
42
+ *
43
+ * This resource considers its instances to have been deleted after either their validity
44
+ * periods ends (i.e. beyond the `validityPeriodHours`)
45
+ * or the early renewal period is reached (i.e. within the `earlyRenewalHours`):
46
+ * when this happens, the `readyForRenewal` attribute will be `true`.
47
+ * At this time, applying the Terraform configuration will cause a new certificate to be
48
+ * generated for the instance.
49
+ *
50
+ * Therefore in a development environment with frequent deployments it may be convenient
51
+ * to set a relatively-short expiration time and use early renewal to automatically provision
52
+ * a new certificate when the current one is about to expire.
53
+ *
54
+ * The creation of a new certificate may of course cause dependent resources to be updated
55
+ * or replaced, depending on the lifecycle rules applying to those resources.
56
+ */
8
57
  class LocallySignedCert extends pulumi.CustomResource {
9
58
  /**
10
59
  * Get an existing LocallySignedCert resource's state with the given name, ID, and optional extra
@@ -1 +1 @@
1
- {"version":3,"file":"locallySignedCert.js","sourceRoot":"","sources":["../locallySignedCert.ts"],"names":[],"mappings":";AAAA,sEAAsE;AACtE,iFAAiF;;;AAEjF,yCAAyC;AACzC,yCAAyC;AAEzC,MAAa,iBAAkB,SAAQ,MAAM,CAAC,cAAc;IACxD;;;;;;;;OAQG;IACI,MAAM,CAAC,GAAG,CAAC,IAAY,EAAE,EAA2B,EAAE,KAA8B,EAAE,IAAmC;QAC5H,OAAO,IAAI,iBAAiB,CAAC,IAAI,EAAO,KAAK,EAAE,EAAE,GAAG,IAAI,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;IACxE,CAAC;IAKD;;;OAGG;IACI,MAAM,CAAC,UAAU,CAAC,GAAQ;QAC7B,IAAI,GAAG,KAAK,SAAS,IAAI,GAAG,KAAK,IAAI,EAAE;YACnC,OAAO,KAAK,CAAC;SAChB;QACD,OAAO,GAAG,CAAC,cAAc,CAAC,KAAK,iBAAiB,CAAC,YAAY,CAAC;IAClE,CAAC;IAgED,YAAY,IAAY,EAAE,WAA4D,EAAE,IAAmC;QACvH,IAAI,cAAc,GAAkB,EAAE,CAAC;QACvC,IAAI,GAAG,IAAI,IAAI,EAAE,CAAC;QAClB,IAAI,IAAI,CAAC,EAAE,EAAE;YACT,MAAM,KAAK,GAAG,WAAiD,CAAC;YAChE,cAAc,CAAC,aAAa,CAAC,GAAG,KAAK,EAAE,WAAW,CAAC;YACnD,cAAc,CAAC,WAAW,CAAC,GAAG,KAAK,EAAE,SAAS,CAAC;YAC/C,cAAc,CAAC,gBAAgB,CAAC,GAAG,KAAK,EAAE,cAAc,CAAC;YACzD,cAAc,CAAC,iBAAiB,CAAC,GAAG,KAAK,EAAE,eAAe,CAAC;YAC3D,cAAc,CAAC,SAAS,CAAC,GAAG,KAAK,EAAE,OAAO,CAAC;YAC3C,cAAc,CAAC,gBAAgB,CAAC,GAAG,KAAK,EAAE,cAAc,CAAC;YACzD,cAAc,CAAC,mBAAmB,CAAC,GAAG,KAAK,EAAE,iBAAiB,CAAC;YAC/D,cAAc,CAAC,iBAAiB,CAAC,GAAG,KAAK,EAAE,eAAe,CAAC;YAC3D,cAAc,CAAC,eAAe,CAAC,GAAG,KAAK,EAAE,aAAa,CAAC;YACvD,cAAc,CAAC,iBAAiB,CAAC,GAAG,KAAK,EAAE,eAAe,CAAC;YAC3D,cAAc,CAAC,iBAAiB,CAAC,GAAG,KAAK,EAAE,eAAe,CAAC;YAC3D,cAAc,CAAC,iBAAiB,CAAC,GAAG,KAAK,EAAE,eAAe,CAAC;YAC3D,cAAc,CAAC,qBAAqB,CAAC,GAAG,KAAK,EAAE,mBAAmB,CAAC;YACnE,cAAc,CAAC,mBAAmB,CAAC,GAAG,KAAK,EAAE,iBAAiB,CAAC;SAClE;aAAM;YACH,MAAM,IAAI,GAAG,WAAgD,CAAC;YAC9D,IAAI,IAAI,EAAE,WAAW,KAAK,SAAS,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE;gBAC9C,MAAM,IAAI,KAAK,CAAC,yCAAyC,CAAC,CAAC;aAC9D;YACD,IAAI,IAAI,EAAE,SAAS,KAAK,SAAS,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE;gBAC5C,MAAM,IAAI,KAAK,CAAC,uCAAuC,CAAC,CAAC;aAC5D;YACD,IAAI,IAAI,EAAE,eAAe,KAAK,SAAS,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE;gBAClD,MAAM,IAAI,KAAK,CAAC,6CAA6C,CAAC,CAAC;aAClE;YACD,IAAI,IAAI,EAAE,cAAc,KAAK,SAAS,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE;gBACjD,MAAM,IAAI,KAAK,CAAC,4CAA4C,CAAC,CAAC;aACjE;YACD,IAAI,IAAI,EAAE,mBAAmB,KAAK,SAAS,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE;gBACtD,MAAM,IAAI,KAAK,CAAC,iDAAiD,CAAC,CAAC;aACtE;YACD,cAAc,CAAC,aAAa,CAAC,GAAG,IAAI,EAAE,WAAW,CAAC;YAClD,cAAc,CAAC,WAAW,CAAC,GAAG,IAAI,EAAE,SAAS,CAAC;YAC9C,cAAc,CAAC,iBAAiB,CAAC,GAAG,IAAI,EAAE,eAAe,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;YAC5G,cAAc,CAAC,gBAAgB,CAAC,GAAG,IAAI,EAAE,cAAc,CAAC;YACxD,cAAc,CAAC,mBAAmB,CAAC,GAAG,IAAI,EAAE,iBAAiB,CAAC;YAC9D,cAAc,CAAC,iBAAiB,CAAC,GAAG,IAAI,EAAE,eAAe,CAAC;YAC1D,cAAc,CAAC,eAAe,CAAC,GAAG,IAAI,EAAE,aAAa,CAAC;YACtD,cAAc,CAAC,iBAAiB,CAAC,GAAG,IAAI,EAAE,eAAe,CAAC;YAC1D,cAAc,CAAC,qBAAqB,CAAC,GAAG,IAAI,EAAE,mBAAmB,CAAC;YAClE,cAAc,CAAC,gBAAgB,CAAC,GAAG,SAAS,CAAC,OAAO,CAAC;YACrD,cAAc,CAAC,SAAS,CAAC,GAAG,SAAS,CAAC,OAAO,CAAC;YAC9C,cAAc,CAAC,iBAAiB,CAAC,GAAG,SAAS,CAAC,OAAO,CAAC;YACtD,cAAc,CAAC,iBAAiB,CAAC,GAAG,SAAS,CAAC,OAAO,CAAC;YACtD,cAAc,CAAC,mBAAmB,CAAC,GAAG,SAAS,CAAC,OAAO,CAAC;SAC3D;QACD,IAAI,GAAG,MAAM,CAAC,YAAY,CAAC,SAAS,CAAC,oBAAoB,EAAE,EAAE,IAAI,CAAC,CAAC;QACnE,MAAM,UAAU,GAAG,EAAE,uBAAuB,EAAE,CAAC,iBAAiB,CAAC,EAAE,CAAC;QACpE,IAAI,GAAG,MAAM,CAAC,YAAY,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC;QAC7C,KAAK,CAAC,iBAAiB,CAAC,YAAY,EAAE,IAAI,EAAE,cAAc,EAAE,IAAI,CAAC,CAAC;IACtE,CAAC;;AAjJL,8CAkJC;AApIG,gBAAgB;AACO,8BAAY,GAAG,+CAA+C,CAAC"}
1
+ {"version":3,"file":"locallySignedCert.js","sourceRoot":"","sources":["../locallySignedCert.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@pulumi/tls",
3
- "version": "5.3.0",
3
+ "version": "5.3.1",
4
4
  "description": "A Pulumi package to create TLS resources in Pulumi programs.",
5
5
  "keywords": [
6
6
  "pulumi",
@@ -22,6 +22,6 @@
22
22
  "pulumi": {
23
23
  "resource": true,
24
24
  "name": "tls",
25
- "version": "5.3.0"
25
+ "version": "5.3.1"
26
26
  }
27
27
  }
package/privateKey.d.ts CHANGED
@@ -1,4 +1,50 @@
1
1
  import * as pulumi from "@pulumi/pulumi";
2
+ /**
3
+ * > If the managed resource supports a write-only attribute for the private key (first introduced in Terraform 1.11), then the ephemeral variant of `tls.PrivateKey` should be used, when possible, to avoid storing the private key data in the plan or state file.
4
+ *
5
+ * Creates a PEM (and OpenSSH) formatted private key.
6
+ *
7
+ * Generates a secure private key and encodes it in [PEM (RFC 1421)](https://datatracker.ietf.org/doc/html/rfc1421) and [OpenSSH PEM (RFC 4716)](https://datatracker.ietf.org/doc/html/rfc4716) formats. This resource is primarily intended for easily bootstrapping throwaway development environments.
8
+ *
9
+ * > **Security Notice** The private key generated by this resource will
10
+ * be stored *unencrypted* in your Terraform state file. **Use of this resource
11
+ * for production deployments is *not* recommended**. Instead, generate
12
+ * a private key file outside of Terraform and distribute it securely
13
+ * to the system where Terraform will be run.
14
+ *
15
+ * This is a *logical resource*, so it contributes only to the current Terraform
16
+ * state and does not create any external managed resources.
17
+ *
18
+ * ## Example Usage
19
+ *
20
+ * ```typescript
21
+ * import * as pulumi from "@pulumi/pulumi";
22
+ * import * as tls from "@pulumi/tls";
23
+ *
24
+ * // ECDSA key with P384 elliptic curve
25
+ * const ecdsa_p384_example = new tls.PrivateKey("ecdsa-p384-example", {
26
+ * algorithm: "ECDSA",
27
+ * ecdsaCurve: "P384",
28
+ * });
29
+ * // RSA key of size 4096 bits
30
+ * const rsa_4096_example = new tls.PrivateKey("rsa-4096-example", {
31
+ * algorithm: "RSA",
32
+ * rsaBits: 4096,
33
+ * });
34
+ * // ED25519 key
35
+ * const ed25519_example = new tls.PrivateKey("ed25519-example", {algorithm: "ED25519"});
36
+ * ```
37
+ *
38
+ * ## Generating a New Key
39
+ *
40
+ * Since a private key is a logical resource that lives only in the Terraform state,
41
+ * it will persist until it is explicitly destroyed by the user.
42
+ *
43
+ * In order to force the generation of a new key within an existing state, the
44
+ * private key instance can be "tainted":
45
+ *
46
+ * A new key will then be generated on the next ``pulumi up``.
47
+ */
2
48
  export declare class PrivateKey extends pulumi.CustomResource {
3
49
  /**
4
50
  * Get an existing PrivateKey resource's state with the given name, ID, and optional extra
package/privateKey.js CHANGED
@@ -5,6 +5,52 @@ Object.defineProperty(exports, "__esModule", { value: true });
5
5
  exports.PrivateKey = void 0;
6
6
  const pulumi = require("@pulumi/pulumi");
7
7
  const utilities = require("./utilities");
8
+ /**
9
+ * > If the managed resource supports a write-only attribute for the private key (first introduced in Terraform 1.11), then the ephemeral variant of `tls.PrivateKey` should be used, when possible, to avoid storing the private key data in the plan or state file.
10
+ *
11
+ * Creates a PEM (and OpenSSH) formatted private key.
12
+ *
13
+ * Generates a secure private key and encodes it in [PEM (RFC 1421)](https://datatracker.ietf.org/doc/html/rfc1421) and [OpenSSH PEM (RFC 4716)](https://datatracker.ietf.org/doc/html/rfc4716) formats. This resource is primarily intended for easily bootstrapping throwaway development environments.
14
+ *
15
+ * > **Security Notice** The private key generated by this resource will
16
+ * be stored *unencrypted* in your Terraform state file. **Use of this resource
17
+ * for production deployments is *not* recommended**. Instead, generate
18
+ * a private key file outside of Terraform and distribute it securely
19
+ * to the system where Terraform will be run.
20
+ *
21
+ * This is a *logical resource*, so it contributes only to the current Terraform
22
+ * state and does not create any external managed resources.
23
+ *
24
+ * ## Example Usage
25
+ *
26
+ * ```typescript
27
+ * import * as pulumi from "@pulumi/pulumi";
28
+ * import * as tls from "@pulumi/tls";
29
+ *
30
+ * // ECDSA key with P384 elliptic curve
31
+ * const ecdsa_p384_example = new tls.PrivateKey("ecdsa-p384-example", {
32
+ * algorithm: "ECDSA",
33
+ * ecdsaCurve: "P384",
34
+ * });
35
+ * // RSA key of size 4096 bits
36
+ * const rsa_4096_example = new tls.PrivateKey("rsa-4096-example", {
37
+ * algorithm: "RSA",
38
+ * rsaBits: 4096,
39
+ * });
40
+ * // ED25519 key
41
+ * const ed25519_example = new tls.PrivateKey("ed25519-example", {algorithm: "ED25519"});
42
+ * ```
43
+ *
44
+ * ## Generating a New Key
45
+ *
46
+ * Since a private key is a logical resource that lives only in the Terraform state,
47
+ * it will persist until it is explicitly destroyed by the user.
48
+ *
49
+ * In order to force the generation of a new key within an existing state, the
50
+ * private key instance can be "tainted":
51
+ *
52
+ * A new key will then be generated on the next ``pulumi up``.
53
+ */
8
54
  class PrivateKey extends pulumi.CustomResource {
9
55
  /**
10
56
  * Get an existing PrivateKey resource's state with the given name, ID, and optional extra
package/privateKey.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"privateKey.js","sourceRoot":"","sources":["../privateKey.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"privateKey.js","sourceRoot":"","sources":["../privateKey.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,55 @@
1
1
  import * as pulumi from "@pulumi/pulumi";
2
2
  import * as inputs from "./types/input";
3
3
  import * as outputs from "./types/output";
4
+ /**
5
+ * Creates a **self-signed** TLS certificate in [PEM (RFC 1421)](https://datatracker.ietf.org/doc/html/rfc1421) format.
6
+ *
7
+ * > **Warning** Self-signed certificates are usually used only in development environments
8
+ * or applications deployed internally to an organization.
9
+ * Certificates of this type are generally not trusted by client software such
10
+ * as web browsers. Therefore clients are likely to generate trust warnings when
11
+ * connecting to a server that has a self-signed certificate.
12
+ *
13
+ * ## Example Usage
14
+ *
15
+ * ```typescript
16
+ * import * as pulumi from "@pulumi/pulumi";
17
+ * import * as std from "@pulumi/std";
18
+ * import * as tls from "@pulumi/tls";
19
+ *
20
+ * const example = new tls.SelfSignedCert("example", {
21
+ * privateKeyPem: std.file({
22
+ * input: "private_key.pem",
23
+ * }).then(invoke => invoke.result),
24
+ * subject: {
25
+ * commonName: "example.com",
26
+ * organization: "ACME Examples, Inc",
27
+ * },
28
+ * validityPeriodHours: 12,
29
+ * allowedUses: [
30
+ * "key_encipherment",
31
+ * "digital_signature",
32
+ * "server_auth",
33
+ * ],
34
+ * });
35
+ * ```
36
+ *
37
+ * ## Automatic Renewal
38
+ *
39
+ * This resource considers its instances to have been deleted after either their validity
40
+ * periods ends (i.e. beyond the `validityPeriodHours`)
41
+ * or the early renewal period is reached (i.e. within the `earlyRenewalHours`):
42
+ * when this happens, the `readyForRenewal` attribute will be `true`.
43
+ * At this time, applying the Terraform configuration will cause a new certificate to be
44
+ * generated for the instance.
45
+ *
46
+ * Therefore in a development environment with frequent deployments it may be convenient
47
+ * to set a relatively-short expiration time and use early renewal to automatically provision
48
+ * a new certificate when the current one is about to expire.
49
+ *
50
+ * The creation of a new certificate may of course cause dependent resources to be updated
51
+ * or replaced, depending on the lifecycle rules applying to those resources.
52
+ */
4
53
  export declare class SelfSignedCert extends pulumi.CustomResource {
5
54
  /**
6
55
  * Get an existing SelfSignedCert resource's state with the given name, ID, and optional extra
@@ -29,6 +78,9 @@ export declare class SelfSignedCert extends pulumi.CustomResource {
29
78
  * List of DNS names for which a certificate is being requested (i.e. certificate subjects).
30
79
  */
31
80
  readonly dnsNames: pulumi.Output<string[] | undefined>;
81
+ /**
82
+ * The resource will consider the certificate to have expired the given number of hours before its actual expiry time. This can be useful to deploy an updated certificate in advance of the expiration of the current certificate. However, the old certificate remains valid until its true expiration time, since this resource does not (and cannot) support certificate revocation. Also, this advance update can only be performed should the Terraform configuration be applied during the early renewal period. (default: `0`)
83
+ */
32
84
  readonly earlyRenewalHours: pulumi.Output<number>;
33
85
  /**
34
86
  * List of IP addresses for which a certificate is being requested (i.e. certificate subjects).
@@ -107,6 +159,9 @@ export interface SelfSignedCertState {
107
159
  * List of DNS names for which a certificate is being requested (i.e. certificate subjects).
108
160
  */
109
161
  dnsNames?: pulumi.Input<pulumi.Input<string>[]>;
162
+ /**
163
+ * The resource will consider the certificate to have expired the given number of hours before its actual expiry time. This can be useful to deploy an updated certificate in advance of the expiration of the current certificate. However, the old certificate remains valid until its true expiration time, since this resource does not (and cannot) support certificate revocation. Also, this advance update can only be performed should the Terraform configuration be applied during the early renewal period. (default: `0`)
164
+ */
110
165
  earlyRenewalHours?: pulumi.Input<number>;
111
166
  /**
112
167
  * List of IP addresses for which a certificate is being requested (i.e. certificate subjects).
@@ -173,6 +228,9 @@ export interface SelfSignedCertArgs {
173
228
  * List of DNS names for which a certificate is being requested (i.e. certificate subjects).
174
229
  */
175
230
  dnsNames?: pulumi.Input<pulumi.Input<string>[]>;
231
+ /**
232
+ * The resource will consider the certificate to have expired the given number of hours before its actual expiry time. This can be useful to deploy an updated certificate in advance of the expiration of the current certificate. However, the old certificate remains valid until its true expiration time, since this resource does not (and cannot) support certificate revocation. Also, this advance update can only be performed should the Terraform configuration be applied during the early renewal period. (default: `0`)
233
+ */
176
234
  earlyRenewalHours?: pulumi.Input<number>;
177
235
  /**
178
236
  * List of IP addresses for which a certificate is being requested (i.e. certificate subjects).
package/selfSignedCert.js CHANGED
@@ -5,6 +5,55 @@ Object.defineProperty(exports, "__esModule", { value: true });
5
5
  exports.SelfSignedCert = void 0;
6
6
  const pulumi = require("@pulumi/pulumi");
7
7
  const utilities = require("./utilities");
8
+ /**
9
+ * Creates a **self-signed** TLS certificate in [PEM (RFC 1421)](https://datatracker.ietf.org/doc/html/rfc1421) format.
10
+ *
11
+ * > **Warning** Self-signed certificates are usually used only in development environments
12
+ * or applications deployed internally to an organization.
13
+ * Certificates of this type are generally not trusted by client software such
14
+ * as web browsers. Therefore clients are likely to generate trust warnings when
15
+ * connecting to a server that has a self-signed certificate.
16
+ *
17
+ * ## Example Usage
18
+ *
19
+ * ```typescript
20
+ * import * as pulumi from "@pulumi/pulumi";
21
+ * import * as std from "@pulumi/std";
22
+ * import * as tls from "@pulumi/tls";
23
+ *
24
+ * const example = new tls.SelfSignedCert("example", {
25
+ * privateKeyPem: std.file({
26
+ * input: "private_key.pem",
27
+ * }).then(invoke => invoke.result),
28
+ * subject: {
29
+ * commonName: "example.com",
30
+ * organization: "ACME Examples, Inc",
31
+ * },
32
+ * validityPeriodHours: 12,
33
+ * allowedUses: [
34
+ * "key_encipherment",
35
+ * "digital_signature",
36
+ * "server_auth",
37
+ * ],
38
+ * });
39
+ * ```
40
+ *
41
+ * ## Automatic Renewal
42
+ *
43
+ * This resource considers its instances to have been deleted after either their validity
44
+ * periods ends (i.e. beyond the `validityPeriodHours`)
45
+ * or the early renewal period is reached (i.e. within the `earlyRenewalHours`):
46
+ * when this happens, the `readyForRenewal` attribute will be `true`.
47
+ * At this time, applying the Terraform configuration will cause a new certificate to be
48
+ * generated for the instance.
49
+ *
50
+ * Therefore in a development environment with frequent deployments it may be convenient
51
+ * to set a relatively-short expiration time and use early renewal to automatically provision
52
+ * a new certificate when the current one is about to expire.
53
+ *
54
+ * The creation of a new certificate may of course cause dependent resources to be updated
55
+ * or replaced, depending on the lifecycle rules applying to those resources.
56
+ */
8
57
  class SelfSignedCert extends pulumi.CustomResource {
9
58
  /**
10
59
  * Get an existing SelfSignedCert resource's state with the given name, ID, and optional extra
@@ -1 +1 @@
1
- {"version":3,"file":"selfSignedCert.js","sourceRoot":"","sources":["../selfSignedCert.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"selfSignedCert.js","sourceRoot":"","sources":["../selfSignedCert.ts"],"names":[],"mappings":"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"}