pulumi-tls 5.0.0a0__tar.gz → 5.0.2__tar.gz
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.
- {pulumi_tls-5.0.0a0 → pulumi_tls-5.0.2}/PKG-INFO +7 -6
- {pulumi_tls-5.0.0a0 → pulumi_tls-5.0.2}/pulumi_tls/_inputs.py +18 -0
- {pulumi_tls-5.0.0a0 → pulumi_tls-5.0.2}/pulumi_tls/_utilities.py +43 -2
- {pulumi_tls-5.0.0a0 → pulumi_tls-5.0.2}/pulumi_tls/cert_request.py +15 -41
- pulumi_tls-5.0.2/pulumi_tls/config/__init__.pyi +17 -0
- {pulumi_tls-5.0.0a0 → pulumi_tls-5.0.2}/pulumi_tls/config/outputs.py +18 -0
- {pulumi_tls-5.0.0a0 → pulumi_tls-5.0.2}/pulumi_tls/get_certificate.py +5 -5
- {pulumi_tls-5.0.0a0 → pulumi_tls-5.0.2}/pulumi_tls/get_public_key.py +18 -8
- {pulumi_tls-5.0.0a0 → pulumi_tls-5.0.2}/pulumi_tls/locally_signed_cert.py +4 -20
- {pulumi_tls-5.0.0a0 → pulumi_tls-5.0.2}/pulumi_tls/outputs.py +4 -0
- {pulumi_tls-5.0.0a0 → pulumi_tls-5.0.2}/pulumi_tls/private_key.py +8 -48
- {pulumi_tls-5.0.0a0 → pulumi_tls-5.0.2}/pulumi_tls/self_signed_cert.py +11 -41
- {pulumi_tls-5.0.0a0 → pulumi_tls-5.0.2}/pulumi_tls.egg-info/PKG-INFO +8 -7
- {pulumi_tls-5.0.0a0 → pulumi_tls-5.0.2}/pulumi_tls.egg-info/SOURCES.txt +2 -2
- pulumi_tls-5.0.2/pyproject.toml +22 -0
- pulumi_tls-5.0.0a0/pulumi_tls.egg-info/not-zip-safe +0 -1
- pulumi_tls-5.0.0a0/setup.py +0 -66
- {pulumi_tls-5.0.0a0 → pulumi_tls-5.0.2}/README.md +0 -0
- {pulumi_tls-5.0.0a0 → pulumi_tls-5.0.2}/pulumi_tls/__init__.py +0 -0
- {pulumi_tls-5.0.0a0 → pulumi_tls-5.0.2}/pulumi_tls/config/__init__.py +0 -0
- {pulumi_tls-5.0.0a0 → pulumi_tls-5.0.2}/pulumi_tls/config/vars.py +0 -0
- {pulumi_tls-5.0.0a0 → pulumi_tls-5.0.2}/pulumi_tls/provider.py +0 -0
- {pulumi_tls-5.0.0a0 → pulumi_tls-5.0.2}/pulumi_tls/pulumi-plugin.json +0 -0
- {pulumi_tls-5.0.0a0 → pulumi_tls-5.0.2}/pulumi_tls/py.typed +0 -0
- {pulumi_tls-5.0.0a0 → pulumi_tls-5.0.2}/pulumi_tls.egg-info/dependency_links.txt +0 -0
- {pulumi_tls-5.0.0a0 → pulumi_tls-5.0.2}/pulumi_tls.egg-info/requires.txt +0 -0
- {pulumi_tls-5.0.0a0 → pulumi_tls-5.0.2}/pulumi_tls.egg-info/top_level.txt +0 -0
- {pulumi_tls-5.0.0a0 → pulumi_tls-5.0.2}/setup.cfg +0 -0
@@ -1,13 +1,16 @@
|
|
1
1
|
Metadata-Version: 2.1
|
2
2
|
Name: pulumi_tls
|
3
|
-
Version: 5.0.
|
3
|
+
Version: 5.0.2
|
4
4
|
Summary: A Pulumi package to create TLS resources in Pulumi programs.
|
5
|
-
Home-page: https://pulumi.io
|
6
5
|
License: Apache-2.0
|
6
|
+
Project-URL: Homepage, https://pulumi.io
|
7
7
|
Project-URL: Repository, https://github.com/pulumi/pulumi-tls
|
8
|
-
Keywords: pulumi
|
9
|
-
|
8
|
+
Keywords: pulumi,tls
|
9
|
+
Requires-Python: >=3.8
|
10
10
|
Description-Content-Type: text/markdown
|
11
|
+
Requires-Dist: parver>=0.2.1
|
12
|
+
Requires-Dist: pulumi<4.0.0,>=3.0.0
|
13
|
+
Requires-Dist: semver>=2.8.1
|
11
14
|
|
12
15
|
[](https://github.com/pulumi/pulumi-tls/actions)
|
13
16
|
[](https://slack.pulumi.com)
|
@@ -63,5 +66,3 @@ and interact closely with TLS resources.
|
|
63
66
|
|
64
67
|
|
65
68
|
For further information, please visit [the TLS provider docs](https://www.pulumi.com/docs/intro/cloud-providers/tls) or for detailed reference documentation, please visit [the API docs](https://www.pulumi.com/docs/reference/pkg/tls).
|
66
|
-
|
67
|
-
|
@@ -173,6 +173,12 @@ class ProviderProxyArgs:
|
|
173
173
|
password: Optional[pulumi.Input[str]] = None,
|
174
174
|
url: Optional[pulumi.Input[str]] = None,
|
175
175
|
username: Optional[pulumi.Input[str]] = None):
|
176
|
+
"""
|
177
|
+
:param pulumi.Input[bool] from_env: When `true` the provider will discover the proxy configuration from environment variables. This is based upon [`http.ProxyFromEnvironment`](https://pkg.go.dev/net/http#ProxyFromEnvironment) and it supports the same environment variables (default: `true`).
|
178
|
+
:param pulumi.Input[str] password: Password used for Basic authentication against the Proxy.
|
179
|
+
:param pulumi.Input[str] url: URL used to connect to the Proxy. Accepted schemes are: `http`, `https`, `socks5`.
|
180
|
+
:param pulumi.Input[str] username: Username (or Token) used for Basic authentication against the Proxy.
|
181
|
+
"""
|
176
182
|
if from_env is not None:
|
177
183
|
pulumi.set(__self__, "from_env", from_env)
|
178
184
|
if password is not None:
|
@@ -185,6 +191,9 @@ class ProviderProxyArgs:
|
|
185
191
|
@property
|
186
192
|
@pulumi.getter(name="fromEnv")
|
187
193
|
def from_env(self) -> Optional[pulumi.Input[bool]]:
|
194
|
+
"""
|
195
|
+
When `true` the provider will discover the proxy configuration from environment variables. This is based upon [`http.ProxyFromEnvironment`](https://pkg.go.dev/net/http#ProxyFromEnvironment) and it supports the same environment variables (default: `true`).
|
196
|
+
"""
|
188
197
|
return pulumi.get(self, "from_env")
|
189
198
|
|
190
199
|
@from_env.setter
|
@@ -194,6 +203,9 @@ class ProviderProxyArgs:
|
|
194
203
|
@property
|
195
204
|
@pulumi.getter
|
196
205
|
def password(self) -> Optional[pulumi.Input[str]]:
|
206
|
+
"""
|
207
|
+
Password used for Basic authentication against the Proxy.
|
208
|
+
"""
|
197
209
|
return pulumi.get(self, "password")
|
198
210
|
|
199
211
|
@password.setter
|
@@ -203,6 +215,9 @@ class ProviderProxyArgs:
|
|
203
215
|
@property
|
204
216
|
@pulumi.getter
|
205
217
|
def url(self) -> Optional[pulumi.Input[str]]:
|
218
|
+
"""
|
219
|
+
URL used to connect to the Proxy. Accepted schemes are: `http`, `https`, `socks5`.
|
220
|
+
"""
|
206
221
|
return pulumi.get(self, "url")
|
207
222
|
|
208
223
|
@url.setter
|
@@ -212,6 +227,9 @@ class ProviderProxyArgs:
|
|
212
227
|
@property
|
213
228
|
@pulumi.getter
|
214
229
|
def username(self) -> Optional[pulumi.Input[str]]:
|
230
|
+
"""
|
231
|
+
Username (or Token) used for Basic authentication against the Proxy.
|
232
|
+
"""
|
215
233
|
return pulumi.get(self, "username")
|
216
234
|
|
217
235
|
@username.setter
|
@@ -3,16 +3,18 @@
|
|
3
3
|
# *** Do not edit by hand unless you're certain you know what you are doing! ***
|
4
4
|
|
5
5
|
|
6
|
+
import asyncio
|
7
|
+
import importlib.metadata
|
6
8
|
import importlib.util
|
7
9
|
import inspect
|
8
10
|
import json
|
9
11
|
import os
|
10
|
-
import pkg_resources
|
11
12
|
import sys
|
12
13
|
import typing
|
13
14
|
|
14
15
|
import pulumi
|
15
16
|
import pulumi.runtime
|
17
|
+
from pulumi.runtime.sync_await import _sync_await
|
16
18
|
|
17
19
|
from semver import VersionInfo as SemverVersion
|
18
20
|
from parver import Version as PEP440Version
|
@@ -70,7 +72,7 @@ def _get_semver_version():
|
|
70
72
|
# to receive a valid semver string when receiving requests from the language host, so it's our
|
71
73
|
# responsibility as the library to convert our own PEP440 version into a valid semver string.
|
72
74
|
|
73
|
-
pep440_version_string =
|
75
|
+
pep440_version_string = importlib.metadata.version(root_package)
|
74
76
|
pep440_version = PEP440Version.parse(pep440_version_string)
|
75
77
|
(major, minor, patch) = pep440_version.release
|
76
78
|
prerelease = None
|
@@ -246,5 +248,44 @@ def lift_output_func(func: typing.Any) -> typing.Callable[[_F], _F]:
|
|
246
248
|
|
247
249
|
return (lambda _: lifted_func)
|
248
250
|
|
251
|
+
|
252
|
+
def call_plain(
|
253
|
+
tok: str,
|
254
|
+
props: pulumi.Inputs,
|
255
|
+
res: typing.Optional[pulumi.Resource] = None,
|
256
|
+
typ: typing.Optional[type] = None,
|
257
|
+
) -> typing.Any:
|
258
|
+
"""
|
259
|
+
Wraps pulumi.runtime.plain to force the output and return it plainly.
|
260
|
+
"""
|
261
|
+
|
262
|
+
output = pulumi.runtime.call(tok, props, res, typ)
|
263
|
+
|
264
|
+
# Ingoring deps silently. They are typically non-empty, r.f() calls include r as a dependency.
|
265
|
+
result, known, secret, _ = _sync_await(asyncio.ensure_future(_await_output(output)))
|
266
|
+
|
267
|
+
problem = None
|
268
|
+
if not known:
|
269
|
+
problem = ' an unknown value'
|
270
|
+
elif secret:
|
271
|
+
problem = ' a secret value'
|
272
|
+
|
273
|
+
if problem:
|
274
|
+
raise AssertionError(
|
275
|
+
f"Plain resource method '{tok}' incorrectly returned {problem}. "
|
276
|
+
+ "This is an error in the provider, please report this to the provider developer."
|
277
|
+
)
|
278
|
+
|
279
|
+
return result
|
280
|
+
|
281
|
+
|
282
|
+
async def _await_output(o: pulumi.Output[typing.Any]) -> typing.Tuple[object, bool, bool, set]:
|
283
|
+
return (
|
284
|
+
await o._future,
|
285
|
+
await o._is_known,
|
286
|
+
await o._is_secret,
|
287
|
+
await o._resources,
|
288
|
+
)
|
289
|
+
|
249
290
|
def get_plugin_download_url():
|
250
291
|
return None
|
@@ -23,9 +23,7 @@ class CertRequestArgs:
|
|
23
23
|
uris: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None):
|
24
24
|
"""
|
25
25
|
The set of arguments for constructing a CertRequest resource.
|
26
|
-
:param pulumi.Input[str] private_key_pem: Private key in
|
27
|
-
to. This can be read from a separate file using the [`file`](https://www.terraform.io/language/functions/file)
|
28
|
-
interpolation function. Only an irreversible secure hash of the private key will be stored in the Terraform state.
|
26
|
+
:param pulumi.Input[str] private_key_pem: Private key in PEM (RFC 1421) interpolation function.
|
29
27
|
:param pulumi.Input[Sequence[pulumi.Input[str]]] dns_names: List of DNS names for which a certificate is being requested (i.e. certificate subjects).
|
30
28
|
:param pulumi.Input[Sequence[pulumi.Input[str]]] ip_addresses: List of IP addresses for which a certificate is being requested (i.e. certificate subjects).
|
31
29
|
:param pulumi.Input['CertRequestSubjectArgs'] subject: 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.
|
@@ -45,9 +43,7 @@ class CertRequestArgs:
|
|
45
43
|
@pulumi.getter(name="privateKeyPem")
|
46
44
|
def private_key_pem(self) -> pulumi.Input[str]:
|
47
45
|
"""
|
48
|
-
Private key in
|
49
|
-
to. This can be read from a separate file using the [`file`](https://www.terraform.io/language/functions/file)
|
50
|
-
interpolation function. Only an irreversible secure hash of the private key will be stored in the Terraform state.
|
46
|
+
Private key in PEM (RFC 1421) interpolation function.
|
51
47
|
"""
|
52
48
|
return pulumi.get(self, "private_key_pem")
|
53
49
|
|
@@ -116,17 +112,11 @@ class _CertRequestState:
|
|
116
112
|
uris: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None):
|
117
113
|
"""
|
118
114
|
Input properties used for looking up and filtering CertRequest resources.
|
119
|
-
:param pulumi.Input[str] cert_request_pem: The certificate request data in
|
120
|
-
[underlying](https://pkg.go.dev/encoding/pem#Encode)
|
121
|
-
[libraries](https://pkg.go.dev/golang.org/x/crypto/ssh#MarshalAuthorizedKey) that generate this value append a `\\n` at
|
122
|
-
the end of the PEM. In case this disrupts your use case, we recommend using
|
123
|
-
[`trimspace()`](https://www.terraform.io/language/functions/trimspace).
|
115
|
+
:param pulumi.Input[str] cert_request_pem: The certificate request data in PEM (RFC 1421).
|
124
116
|
:param pulumi.Input[Sequence[pulumi.Input[str]]] dns_names: List of DNS names for which a certificate is being requested (i.e. certificate subjects).
|
125
117
|
:param pulumi.Input[Sequence[pulumi.Input[str]]] ip_addresses: List of IP addresses for which a certificate is being requested (i.e. certificate subjects).
|
126
118
|
:param pulumi.Input[str] key_algorithm: Name of the algorithm used when generating the private key provided in `private_key_pem`.
|
127
|
-
:param pulumi.Input[str] private_key_pem: Private key in
|
128
|
-
to. This can be read from a separate file using the [`file`](https://www.terraform.io/language/functions/file)
|
129
|
-
interpolation function. Only an irreversible secure hash of the private key will be stored in the Terraform state.
|
119
|
+
:param pulumi.Input[str] private_key_pem: Private key in PEM (RFC 1421) interpolation function.
|
130
120
|
:param pulumi.Input['CertRequestSubjectArgs'] subject: 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.
|
131
121
|
:param pulumi.Input[Sequence[pulumi.Input[str]]] uris: List of URIs for which a certificate is being requested (i.e. certificate subjects).
|
132
122
|
"""
|
@@ -149,11 +139,7 @@ class _CertRequestState:
|
|
149
139
|
@pulumi.getter(name="certRequestPem")
|
150
140
|
def cert_request_pem(self) -> Optional[pulumi.Input[str]]:
|
151
141
|
"""
|
152
|
-
The certificate request data in
|
153
|
-
[underlying](https://pkg.go.dev/encoding/pem#Encode)
|
154
|
-
[libraries](https://pkg.go.dev/golang.org/x/crypto/ssh#MarshalAuthorizedKey) that generate this value append a `\\n` at
|
155
|
-
the end of the PEM. In case this disrupts your use case, we recommend using
|
156
|
-
[`trimspace()`](https://www.terraform.io/language/functions/trimspace).
|
142
|
+
The certificate request data in PEM (RFC 1421).
|
157
143
|
"""
|
158
144
|
return pulumi.get(self, "cert_request_pem")
|
159
145
|
|
@@ -201,9 +187,7 @@ class _CertRequestState:
|
|
201
187
|
@pulumi.getter(name="privateKeyPem")
|
202
188
|
def private_key_pem(self) -> Optional[pulumi.Input[str]]:
|
203
189
|
"""
|
204
|
-
Private key in
|
205
|
-
to. This can be read from a separate file using the [`file`](https://www.terraform.io/language/functions/file)
|
206
|
-
interpolation function. Only an irreversible secure hash of the private key will be stored in the Terraform state.
|
190
|
+
Private key in PEM (RFC 1421) interpolation function.
|
207
191
|
"""
|
208
192
|
return pulumi.get(self, "private_key_pem")
|
209
193
|
|
@@ -250,6 +234,7 @@ class CertRequest(pulumi.CustomResource):
|
|
250
234
|
"""
|
251
235
|
## Example Usage
|
252
236
|
|
237
|
+
<!--Start PulumiCodeChooser -->
|
253
238
|
```python
|
254
239
|
import pulumi
|
255
240
|
import pulumi_tls as tls
|
@@ -261,14 +246,13 @@ class CertRequest(pulumi.CustomResource):
|
|
261
246
|
organization="ACME Examples, Inc",
|
262
247
|
))
|
263
248
|
```
|
249
|
+
<!--End PulumiCodeChooser -->
|
264
250
|
|
265
251
|
:param str resource_name: The name of the resource.
|
266
252
|
:param pulumi.ResourceOptions opts: Options for the resource.
|
267
253
|
:param pulumi.Input[Sequence[pulumi.Input[str]]] dns_names: List of DNS names for which a certificate is being requested (i.e. certificate subjects).
|
268
254
|
:param pulumi.Input[Sequence[pulumi.Input[str]]] ip_addresses: List of IP addresses for which a certificate is being requested (i.e. certificate subjects).
|
269
|
-
:param pulumi.Input[str] private_key_pem: Private key in
|
270
|
-
to. This can be read from a separate file using the [`file`](https://www.terraform.io/language/functions/file)
|
271
|
-
interpolation function. Only an irreversible secure hash of the private key will be stored in the Terraform state.
|
255
|
+
:param pulumi.Input[str] private_key_pem: Private key in PEM (RFC 1421) interpolation function.
|
272
256
|
:param pulumi.Input[pulumi.InputType['CertRequestSubjectArgs']] subject: 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.
|
273
257
|
:param pulumi.Input[Sequence[pulumi.Input[str]]] uris: List of URIs for which a certificate is being requested (i.e. certificate subjects).
|
274
258
|
"""
|
@@ -281,6 +265,7 @@ class CertRequest(pulumi.CustomResource):
|
|
281
265
|
"""
|
282
266
|
## Example Usage
|
283
267
|
|
268
|
+
<!--Start PulumiCodeChooser -->
|
284
269
|
```python
|
285
270
|
import pulumi
|
286
271
|
import pulumi_tls as tls
|
@@ -292,6 +277,7 @@ class CertRequest(pulumi.CustomResource):
|
|
292
277
|
organization="ACME Examples, Inc",
|
293
278
|
))
|
294
279
|
```
|
280
|
+
<!--End PulumiCodeChooser -->
|
295
281
|
|
296
282
|
:param str resource_name: The name of the resource.
|
297
283
|
:param CertRequestArgs args: The arguments to use to populate this resource's properties.
|
@@ -357,17 +343,11 @@ class CertRequest(pulumi.CustomResource):
|
|
357
343
|
:param str resource_name: The unique name of the resulting resource.
|
358
344
|
:param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
|
359
345
|
:param pulumi.ResourceOptions opts: Options for the resource.
|
360
|
-
:param pulumi.Input[str] cert_request_pem: The certificate request data in
|
361
|
-
[underlying](https://pkg.go.dev/encoding/pem#Encode)
|
362
|
-
[libraries](https://pkg.go.dev/golang.org/x/crypto/ssh#MarshalAuthorizedKey) that generate this value append a `\\n` at
|
363
|
-
the end of the PEM. In case this disrupts your use case, we recommend using
|
364
|
-
[`trimspace()`](https://www.terraform.io/language/functions/trimspace).
|
346
|
+
:param pulumi.Input[str] cert_request_pem: The certificate request data in PEM (RFC 1421).
|
365
347
|
:param pulumi.Input[Sequence[pulumi.Input[str]]] dns_names: List of DNS names for which a certificate is being requested (i.e. certificate subjects).
|
366
348
|
:param pulumi.Input[Sequence[pulumi.Input[str]]] ip_addresses: List of IP addresses for which a certificate is being requested (i.e. certificate subjects).
|
367
349
|
:param pulumi.Input[str] key_algorithm: Name of the algorithm used when generating the private key provided in `private_key_pem`.
|
368
|
-
:param pulumi.Input[str] private_key_pem: Private key in
|
369
|
-
to. This can be read from a separate file using the [`file`](https://www.terraform.io/language/functions/file)
|
370
|
-
interpolation function. Only an irreversible secure hash of the private key will be stored in the Terraform state.
|
350
|
+
:param pulumi.Input[str] private_key_pem: Private key in PEM (RFC 1421) interpolation function.
|
371
351
|
:param pulumi.Input[pulumi.InputType['CertRequestSubjectArgs']] subject: 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.
|
372
352
|
:param pulumi.Input[Sequence[pulumi.Input[str]]] uris: List of URIs for which a certificate is being requested (i.e. certificate subjects).
|
373
353
|
"""
|
@@ -388,11 +368,7 @@ class CertRequest(pulumi.CustomResource):
|
|
388
368
|
@pulumi.getter(name="certRequestPem")
|
389
369
|
def cert_request_pem(self) -> pulumi.Output[str]:
|
390
370
|
"""
|
391
|
-
The certificate request data in
|
392
|
-
[underlying](https://pkg.go.dev/encoding/pem#Encode)
|
393
|
-
[libraries](https://pkg.go.dev/golang.org/x/crypto/ssh#MarshalAuthorizedKey) that generate this value append a `\\n` at
|
394
|
-
the end of the PEM. In case this disrupts your use case, we recommend using
|
395
|
-
[`trimspace()`](https://www.terraform.io/language/functions/trimspace).
|
371
|
+
The certificate request data in PEM (RFC 1421).
|
396
372
|
"""
|
397
373
|
return pulumi.get(self, "cert_request_pem")
|
398
374
|
|
@@ -424,9 +400,7 @@ class CertRequest(pulumi.CustomResource):
|
|
424
400
|
@pulumi.getter(name="privateKeyPem")
|
425
401
|
def private_key_pem(self) -> pulumi.Output[str]:
|
426
402
|
"""
|
427
|
-
Private key in
|
428
|
-
to. This can be read from a separate file using the [`file`](https://www.terraform.io/language/functions/file)
|
429
|
-
interpolation function. Only an irreversible secure hash of the private key will be stored in the Terraform state.
|
403
|
+
Private key in PEM (RFC 1421) interpolation function.
|
430
404
|
"""
|
431
405
|
return pulumi.get(self, "private_key_pem")
|
432
406
|
|
@@ -0,0 +1,17 @@
|
|
1
|
+
# coding=utf-8
|
2
|
+
# *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. ***
|
3
|
+
# *** Do not edit by hand unless you're certain you know what you are doing! ***
|
4
|
+
|
5
|
+
import copy
|
6
|
+
import warnings
|
7
|
+
import pulumi
|
8
|
+
import pulumi.runtime
|
9
|
+
from typing import Any, Mapping, Optional, Sequence, Union, overload
|
10
|
+
from .. import _utilities
|
11
|
+
from . import outputs
|
12
|
+
|
13
|
+
proxy: Optional[str]
|
14
|
+
"""
|
15
|
+
Proxy used by resources and data sources that connect to external endpoints.
|
16
|
+
"""
|
17
|
+
|
@@ -20,6 +20,12 @@ class Proxy(dict):
|
|
20
20
|
password: Optional[str] = None,
|
21
21
|
url: Optional[str] = None,
|
22
22
|
username: Optional[str] = None):
|
23
|
+
"""
|
24
|
+
:param bool from_env: When `true` the provider will discover the proxy configuration from environment variables. This is based upon [`http.ProxyFromEnvironment`](https://pkg.go.dev/net/http#ProxyFromEnvironment) and it supports the same environment variables (default: `true`).
|
25
|
+
:param str password: Password used for Basic authentication against the Proxy.
|
26
|
+
:param str url: URL used to connect to the Proxy. Accepted schemes are: `http`, `https`, `socks5`.
|
27
|
+
:param str username: Username (or Token) used for Basic authentication against the Proxy.
|
28
|
+
"""
|
23
29
|
if from_env is not None:
|
24
30
|
pulumi.set(__self__, "from_env", from_env)
|
25
31
|
if password is not None:
|
@@ -32,21 +38,33 @@ class Proxy(dict):
|
|
32
38
|
@property
|
33
39
|
@pulumi.getter(name="fromEnv")
|
34
40
|
def from_env(self) -> Optional[bool]:
|
41
|
+
"""
|
42
|
+
When `true` the provider will discover the proxy configuration from environment variables. This is based upon [`http.ProxyFromEnvironment`](https://pkg.go.dev/net/http#ProxyFromEnvironment) and it supports the same environment variables (default: `true`).
|
43
|
+
"""
|
35
44
|
return pulumi.get(self, "from_env")
|
36
45
|
|
37
46
|
@property
|
38
47
|
@pulumi.getter
|
39
48
|
def password(self) -> Optional[str]:
|
49
|
+
"""
|
50
|
+
Password used for Basic authentication against the Proxy.
|
51
|
+
"""
|
40
52
|
return pulumi.get(self, "password")
|
41
53
|
|
42
54
|
@property
|
43
55
|
@pulumi.getter
|
44
56
|
def url(self) -> Optional[str]:
|
57
|
+
"""
|
58
|
+
URL used to connect to the Proxy. Accepted schemes are: `http`, `https`, `socks5`.
|
59
|
+
"""
|
45
60
|
return pulumi.get(self, "url")
|
46
61
|
|
47
62
|
@property
|
48
63
|
@pulumi.getter
|
49
64
|
def username(self) -> Optional[str]:
|
65
|
+
"""
|
66
|
+
Username (or Token) used for Basic authentication against the Proxy.
|
67
|
+
"""
|
50
68
|
return pulumi.get(self, "username")
|
51
69
|
|
52
70
|
|
@@ -112,11 +112,11 @@ def get_certificate(content: Optional[str] = None,
|
|
112
112
|
__ret__ = pulumi.runtime.invoke('tls:index/getCertificate:getCertificate', __args__, opts=opts, typ=GetCertificateResult).value
|
113
113
|
|
114
114
|
return AwaitableGetCertificateResult(
|
115
|
-
certificates=__ret__
|
116
|
-
content=__ret__
|
117
|
-
id=__ret__
|
118
|
-
url=__ret__
|
119
|
-
verify_chain=__ret__
|
115
|
+
certificates=pulumi.get(__ret__, 'certificates'),
|
116
|
+
content=pulumi.get(__ret__, 'content'),
|
117
|
+
id=pulumi.get(__ret__, 'id'),
|
118
|
+
url=pulumi.get(__ret__, 'url'),
|
119
|
+
verify_chain=pulumi.get(__ret__, 'verify_chain'))
|
120
120
|
|
121
121
|
|
122
122
|
@_utilities.lift_output_func(get_certificate)
|
@@ -98,11 +98,17 @@ class GetPublicKeyResult:
|
|
98
98
|
@property
|
99
99
|
@pulumi.getter(name="publicKeyOpenssh")
|
100
100
|
def public_key_openssh(self) -> str:
|
101
|
+
"""
|
102
|
+
The public key, in OpenSSH PEM (RFC 4716).
|
103
|
+
"""
|
101
104
|
return pulumi.get(self, "public_key_openssh")
|
102
105
|
|
103
106
|
@property
|
104
107
|
@pulumi.getter(name="publicKeyPem")
|
105
108
|
def public_key_pem(self) -> str:
|
109
|
+
"""
|
110
|
+
The public key, in PEM (RFC 1421).
|
111
|
+
"""
|
106
112
|
return pulumi.get(self, "public_key_pem")
|
107
113
|
|
108
114
|
|
@@ -132,6 +138,7 @@ def get_public_key(private_key_openssh: Optional[str] = None,
|
|
132
138
|
|
133
139
|
## Example Usage
|
134
140
|
|
141
|
+
<!--Start PulumiCodeChooser -->
|
135
142
|
```python
|
136
143
|
import pulumi
|
137
144
|
import pulumi_tls as tls
|
@@ -140,6 +147,7 @@ def get_public_key(private_key_openssh: Optional[str] = None,
|
|
140
147
|
private_key_pem_example = tls.get_public_key_output(private_key_pem=ed25519_example.private_key_pem)
|
141
148
|
private_key_openssh_example = tls.get_public_key(private_key_openssh=(lambda path: open(path).read())("~/.ssh/id_rsa_rfc4716"))
|
142
149
|
```
|
150
|
+
<!--End PulumiCodeChooser -->
|
143
151
|
|
144
152
|
|
145
153
|
:param str private_key_openssh: The private key (in [OpenSSH PEM (RFC 4716)](https://datatracker.ietf.org/doc/html/rfc4716) format) to extract the public key from. This is *mutually exclusive* with `private_key_pem`. Currently-supported algorithms for keys are: `RSA`, `ECDSA`, `ED25519`.
|
@@ -152,14 +160,14 @@ def get_public_key(private_key_openssh: Optional[str] = None,
|
|
152
160
|
__ret__ = pulumi.runtime.invoke('tls:index/getPublicKey:getPublicKey', __args__, opts=opts, typ=GetPublicKeyResult).value
|
153
161
|
|
154
162
|
return AwaitableGetPublicKeyResult(
|
155
|
-
algorithm=__ret__
|
156
|
-
id=__ret__
|
157
|
-
private_key_openssh=__ret__
|
158
|
-
private_key_pem=__ret__
|
159
|
-
public_key_fingerprint_md5=__ret__
|
160
|
-
public_key_fingerprint_sha256=__ret__
|
161
|
-
public_key_openssh=__ret__
|
162
|
-
public_key_pem=__ret__
|
163
|
+
algorithm=pulumi.get(__ret__, 'algorithm'),
|
164
|
+
id=pulumi.get(__ret__, 'id'),
|
165
|
+
private_key_openssh=pulumi.get(__ret__, 'private_key_openssh'),
|
166
|
+
private_key_pem=pulumi.get(__ret__, 'private_key_pem'),
|
167
|
+
public_key_fingerprint_md5=pulumi.get(__ret__, 'public_key_fingerprint_md5'),
|
168
|
+
public_key_fingerprint_sha256=pulumi.get(__ret__, 'public_key_fingerprint_sha256'),
|
169
|
+
public_key_openssh=pulumi.get(__ret__, 'public_key_openssh'),
|
170
|
+
public_key_pem=pulumi.get(__ret__, 'public_key_pem'))
|
163
171
|
|
164
172
|
|
165
173
|
@_utilities.lift_output_func(get_public_key)
|
@@ -173,6 +181,7 @@ def get_public_key_output(private_key_openssh: Optional[pulumi.Input[Optional[st
|
|
173
181
|
|
174
182
|
## Example Usage
|
175
183
|
|
184
|
+
<!--Start PulumiCodeChooser -->
|
176
185
|
```python
|
177
186
|
import pulumi
|
178
187
|
import pulumi_tls as tls
|
@@ -181,6 +190,7 @@ def get_public_key_output(private_key_openssh: Optional[pulumi.Input[Optional[st
|
|
181
190
|
private_key_pem_example = tls.get_public_key_output(private_key_pem=ed25519_example.private_key_pem)
|
182
191
|
private_key_openssh_example = tls.get_public_key(private_key_openssh=(lambda path: open(path).read())("~/.ssh/id_rsa_rfc4716"))
|
183
192
|
```
|
193
|
+
<!--End PulumiCodeChooser -->
|
184
194
|
|
185
195
|
|
186
196
|
:param str private_key_openssh: The private key (in [OpenSSH PEM (RFC 4716)](https://datatracker.ietf.org/doc/html/rfc4716) format) to extract the public key from. This is *mutually exclusive* with `private_key_pem`. Currently-supported algorithms for keys are: `RSA`, `ECDSA`, `ED25519`.
|
@@ -172,11 +172,7 @@ class _LocallySignedCertState:
|
|
172
172
|
:param pulumi.Input[str] ca_cert_pem: Certificate data of the Certificate Authority (CA) in [PEM (RFC 1421)](https://datatracker.ietf.org/doc/html/rfc1421) format.
|
173
173
|
:param pulumi.Input[str] ca_key_algorithm: Name of the algorithm used when generating the private key provided in `ca_private_key_pem`.
|
174
174
|
:param pulumi.Input[str] ca_private_key_pem: Private key of the Certificate Authority (CA) used to sign the certificate, in [PEM (RFC 1421)](https://datatracker.ietf.org/doc/html/rfc1421) format.
|
175
|
-
:param pulumi.Input[str] cert_pem: Certificate data in
|
176
|
-
[underlying](https://pkg.go.dev/encoding/pem#Encode)
|
177
|
-
[libraries](https://pkg.go.dev/golang.org/x/crypto/ssh#MarshalAuthorizedKey) that generate this value append a `\\n` at
|
178
|
-
the end of the PEM. In case this disrupts your use case, we recommend using
|
179
|
-
[`trimspace()`](https://www.terraform.io/language/functions/trimspace).
|
175
|
+
:param pulumi.Input[str] cert_pem: Certificate data in PEM (RFC 1421).
|
180
176
|
:param pulumi.Input[str] cert_request_pem: Certificate request data in [PEM (RFC 1421)](https://datatracker.ietf.org/doc/html/rfc1421) format.
|
181
177
|
:param pulumi.Input[int] early_renewal_hours: The resource will consider the certificate to have expired the given number of hours before its actual expiry time. This
|
182
178
|
can be useful to deploy an updated certificate in advance of the expiration of the current certificate. However, the old
|
@@ -269,11 +265,7 @@ class _LocallySignedCertState:
|
|
269
265
|
@pulumi.getter(name="certPem")
|
270
266
|
def cert_pem(self) -> Optional[pulumi.Input[str]]:
|
271
267
|
"""
|
272
|
-
Certificate data in
|
273
|
-
[underlying](https://pkg.go.dev/encoding/pem#Encode)
|
274
|
-
[libraries](https://pkg.go.dev/golang.org/x/crypto/ssh#MarshalAuthorizedKey) that generate this value append a `\\n` at
|
275
|
-
the end of the PEM. In case this disrupts your use case, we recommend using
|
276
|
-
[`trimspace()`](https://www.terraform.io/language/functions/trimspace).
|
268
|
+
Certificate data in PEM (RFC 1421).
|
277
269
|
"""
|
278
270
|
return pulumi.get(self, "cert_pem")
|
279
271
|
|
@@ -512,11 +504,7 @@ class LocallySignedCert(pulumi.CustomResource):
|
|
512
504
|
:param pulumi.Input[str] ca_cert_pem: Certificate data of the Certificate Authority (CA) in [PEM (RFC 1421)](https://datatracker.ietf.org/doc/html/rfc1421) format.
|
513
505
|
:param pulumi.Input[str] ca_key_algorithm: Name of the algorithm used when generating the private key provided in `ca_private_key_pem`.
|
514
506
|
:param pulumi.Input[str] ca_private_key_pem: Private key of the Certificate Authority (CA) used to sign the certificate, in [PEM (RFC 1421)](https://datatracker.ietf.org/doc/html/rfc1421) format.
|
515
|
-
:param pulumi.Input[str] cert_pem: Certificate data in
|
516
|
-
[underlying](https://pkg.go.dev/encoding/pem#Encode)
|
517
|
-
[libraries](https://pkg.go.dev/golang.org/x/crypto/ssh#MarshalAuthorizedKey) that generate this value append a `\\n` at
|
518
|
-
the end of the PEM. In case this disrupts your use case, we recommend using
|
519
|
-
[`trimspace()`](https://www.terraform.io/language/functions/trimspace).
|
507
|
+
:param pulumi.Input[str] cert_pem: Certificate data in PEM (RFC 1421).
|
520
508
|
:param pulumi.Input[str] cert_request_pem: Certificate request data in [PEM (RFC 1421)](https://datatracker.ietf.org/doc/html/rfc1421) format.
|
521
509
|
:param pulumi.Input[int] early_renewal_hours: The resource will consider the certificate to have expired the given number of hours before its actual expiry time. This
|
522
510
|
can be useful to deploy an updated certificate in advance of the expiration of the current certificate. However, the old
|
@@ -585,11 +573,7 @@ class LocallySignedCert(pulumi.CustomResource):
|
|
585
573
|
@pulumi.getter(name="certPem")
|
586
574
|
def cert_pem(self) -> pulumi.Output[str]:
|
587
575
|
"""
|
588
|
-
Certificate data in
|
589
|
-
[underlying](https://pkg.go.dev/encoding/pem#Encode)
|
590
|
-
[libraries](https://pkg.go.dev/golang.org/x/crypto/ssh#MarshalAuthorizedKey) that generate this value append a `\\n` at
|
591
|
-
the end of the PEM. In case this disrupts your use case, we recommend using
|
592
|
-
[`trimspace()`](https://www.terraform.io/language/functions/trimspace).
|
576
|
+
Certificate data in PEM (RFC 1421).
|
593
577
|
"""
|
594
578
|
return pulumi.get(self, "cert_pem")
|
595
579
|
|
@@ -310,6 +310,7 @@ class GetCertificateCertificateResult(dict):
|
|
310
310
|
subject: str,
|
311
311
|
version: int):
|
312
312
|
"""
|
313
|
+
:param str cert_pem: Certificate data in PEM (RFC 1421).
|
313
314
|
:param bool is_ca: `true` if the certificate is of a CA (Certificate Authority).
|
314
315
|
:param str issuer: Who verified and signed the certificate, roughly following [RFC2253](https://tools.ietf.org/html/rfc2253).
|
315
316
|
:param str not_after: The time until which the certificate is invalid, as an [RFC3339](https://tools.ietf.org/html/rfc3339) timestamp.
|
@@ -337,6 +338,9 @@ class GetCertificateCertificateResult(dict):
|
|
337
338
|
@property
|
338
339
|
@pulumi.getter(name="certPem")
|
339
340
|
def cert_pem(self) -> str:
|
341
|
+
"""
|
342
|
+
Certificate data in PEM (RFC 1421).
|
343
|
+
"""
|
340
344
|
return pulumi.get(self, "cert_pem")
|
341
345
|
|
342
346
|
@property
|
@@ -88,18 +88,8 @@ class _PrivateKeyState:
|
|
88
88
|
:param pulumi.Input[str] private_key_pem_pkcs8: Private key data in [PKCS#8 PEM (RFC 5208)](https://datatracker.ietf.org/doc/html/rfc5208) format.
|
89
89
|
:param pulumi.Input[str] public_key_fingerprint_md5: The fingerprint of the public key data in OpenSSH MD5 hash format, e.g. `aa:bb:cc:...`. Only available if the selected private key format is compatible, similarly to `public_key_openssh` and the ECDSA P224 limitations.
|
90
90
|
:param pulumi.Input[str] public_key_fingerprint_sha256: The fingerprint of the public key data in OpenSSH SHA256 hash format, e.g. `SHA256:...`. Only available if the selected private key format is compatible, similarly to `public_key_openssh` and the ECDSA P224 limitations.
|
91
|
-
:param pulumi.Input[str] public_key_openssh: The public key data in
|
92
|
-
|
93
|
-
populated for `ECDSA` with curve `P224`, as it is [not supported](../../docs#limitations). **NOTE**: the
|
94
|
-
[underlying](https://pkg.go.dev/encoding/pem#Encode)
|
95
|
-
[libraries](https://pkg.go.dev/golang.org/x/crypto/ssh#MarshalAuthorizedKey) that generate this value append a `\\n` at
|
96
|
-
the end of the PEM. In case this disrupts your use case, we recommend using
|
97
|
-
[`trimspace()`](https://www.terraform.io/language/functions/trimspace).
|
98
|
-
:param pulumi.Input[str] public_key_pem: Public key data in [PEM (RFC 1421)](https://datatracker.ietf.org/doc/html/rfc1421) format. **NOTE**: the
|
99
|
-
[underlying](https://pkg.go.dev/encoding/pem#Encode)
|
100
|
-
[libraries](https://pkg.go.dev/golang.org/x/crypto/ssh#MarshalAuthorizedKey) that generate this value append a `\\n` at
|
101
|
-
the end of the PEM. In case this disrupts your use case, we recommend using
|
102
|
-
[`trimspace()`](https://www.terraform.io/language/functions/trimspace).
|
91
|
+
:param pulumi.Input[str] public_key_openssh: The public key data in "Authorized Keys".
|
92
|
+
:param pulumi.Input[str] public_key_pem: Public key data in PEM (RFC 1421).
|
103
93
|
:param pulumi.Input[int] rsa_bits: When `algorithm` is `RSA`, the size of the generated RSA key, in bits (default: `2048`).
|
104
94
|
"""
|
105
95
|
if algorithm is not None:
|
@@ -211,13 +201,7 @@ class _PrivateKeyState:
|
|
211
201
|
@pulumi.getter(name="publicKeyOpenssh")
|
212
202
|
def public_key_openssh(self) -> Optional[pulumi.Input[str]]:
|
213
203
|
"""
|
214
|
-
The public key data in
|
215
|
-
Keys"](https://www.ssh.com/academy/ssh/authorized_keys/openssh#format-of-the-authorized-keys-file) format. This is not
|
216
|
-
populated for `ECDSA` with curve `P224`, as it is [not supported](../../docs#limitations). **NOTE**: the
|
217
|
-
[underlying](https://pkg.go.dev/encoding/pem#Encode)
|
218
|
-
[libraries](https://pkg.go.dev/golang.org/x/crypto/ssh#MarshalAuthorizedKey) that generate this value append a `\\n` at
|
219
|
-
the end of the PEM. In case this disrupts your use case, we recommend using
|
220
|
-
[`trimspace()`](https://www.terraform.io/language/functions/trimspace).
|
204
|
+
The public key data in "Authorized Keys".
|
221
205
|
"""
|
222
206
|
return pulumi.get(self, "public_key_openssh")
|
223
207
|
|
@@ -229,11 +213,7 @@ class _PrivateKeyState:
|
|
229
213
|
@pulumi.getter(name="publicKeyPem")
|
230
214
|
def public_key_pem(self) -> Optional[pulumi.Input[str]]:
|
231
215
|
"""
|
232
|
-
Public key data in
|
233
|
-
[underlying](https://pkg.go.dev/encoding/pem#Encode)
|
234
|
-
[libraries](https://pkg.go.dev/golang.org/x/crypto/ssh#MarshalAuthorizedKey) that generate this value append a `\\n` at
|
235
|
-
the end of the PEM. In case this disrupts your use case, we recommend using
|
236
|
-
[`trimspace()`](https://www.terraform.io/language/functions/trimspace).
|
216
|
+
Public key data in PEM (RFC 1421).
|
237
217
|
"""
|
238
218
|
return pulumi.get(self, "public_key_pem")
|
239
219
|
|
@@ -354,18 +334,8 @@ class PrivateKey(pulumi.CustomResource):
|
|
354
334
|
:param pulumi.Input[str] private_key_pem_pkcs8: Private key data in [PKCS#8 PEM (RFC 5208)](https://datatracker.ietf.org/doc/html/rfc5208) format.
|
355
335
|
:param pulumi.Input[str] public_key_fingerprint_md5: The fingerprint of the public key data in OpenSSH MD5 hash format, e.g. `aa:bb:cc:...`. Only available if the selected private key format is compatible, similarly to `public_key_openssh` and the ECDSA P224 limitations.
|
356
336
|
:param pulumi.Input[str] public_key_fingerprint_sha256: The fingerprint of the public key data in OpenSSH SHA256 hash format, e.g. `SHA256:...`. Only available if the selected private key format is compatible, similarly to `public_key_openssh` and the ECDSA P224 limitations.
|
357
|
-
:param pulumi.Input[str] public_key_openssh: The public key data in
|
358
|
-
|
359
|
-
populated for `ECDSA` with curve `P224`, as it is [not supported](../../docs#limitations). **NOTE**: the
|
360
|
-
[underlying](https://pkg.go.dev/encoding/pem#Encode)
|
361
|
-
[libraries](https://pkg.go.dev/golang.org/x/crypto/ssh#MarshalAuthorizedKey) that generate this value append a `\\n` at
|
362
|
-
the end of the PEM. In case this disrupts your use case, we recommend using
|
363
|
-
[`trimspace()`](https://www.terraform.io/language/functions/trimspace).
|
364
|
-
:param pulumi.Input[str] public_key_pem: Public key data in [PEM (RFC 1421)](https://datatracker.ietf.org/doc/html/rfc1421) format. **NOTE**: the
|
365
|
-
[underlying](https://pkg.go.dev/encoding/pem#Encode)
|
366
|
-
[libraries](https://pkg.go.dev/golang.org/x/crypto/ssh#MarshalAuthorizedKey) that generate this value append a `\\n` at
|
367
|
-
the end of the PEM. In case this disrupts your use case, we recommend using
|
368
|
-
[`trimspace()`](https://www.terraform.io/language/functions/trimspace).
|
337
|
+
:param pulumi.Input[str] public_key_openssh: The public key data in "Authorized Keys".
|
338
|
+
:param pulumi.Input[str] public_key_pem: Public key data in PEM (RFC 1421).
|
369
339
|
:param pulumi.Input[int] rsa_bits: When `algorithm` is `RSA`, the size of the generated RSA key, in bits (default: `2048`).
|
370
340
|
"""
|
371
341
|
opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
|
@@ -444,13 +414,7 @@ class PrivateKey(pulumi.CustomResource):
|
|
444
414
|
@pulumi.getter(name="publicKeyOpenssh")
|
445
415
|
def public_key_openssh(self) -> pulumi.Output[str]:
|
446
416
|
"""
|
447
|
-
The public key data in
|
448
|
-
Keys"](https://www.ssh.com/academy/ssh/authorized_keys/openssh#format-of-the-authorized-keys-file) format. This is not
|
449
|
-
populated for `ECDSA` with curve `P224`, as it is [not supported](../../docs#limitations). **NOTE**: the
|
450
|
-
[underlying](https://pkg.go.dev/encoding/pem#Encode)
|
451
|
-
[libraries](https://pkg.go.dev/golang.org/x/crypto/ssh#MarshalAuthorizedKey) that generate this value append a `\\n` at
|
452
|
-
the end of the PEM. In case this disrupts your use case, we recommend using
|
453
|
-
[`trimspace()`](https://www.terraform.io/language/functions/trimspace).
|
417
|
+
The public key data in "Authorized Keys".
|
454
418
|
"""
|
455
419
|
return pulumi.get(self, "public_key_openssh")
|
456
420
|
|
@@ -458,11 +422,7 @@ class PrivateKey(pulumi.CustomResource):
|
|
458
422
|
@pulumi.getter(name="publicKeyPem")
|
459
423
|
def public_key_pem(self) -> pulumi.Output[str]:
|
460
424
|
"""
|
461
|
-
Public key data in
|
462
|
-
[underlying](https://pkg.go.dev/encoding/pem#Encode)
|
463
|
-
[libraries](https://pkg.go.dev/golang.org/x/crypto/ssh#MarshalAuthorizedKey) that generate this value append a `\\n` at
|
464
|
-
the end of the PEM. In case this disrupts your use case, we recommend using
|
465
|
-
[`trimspace()`](https://www.terraform.io/language/functions/trimspace).
|
425
|
+
Public key data in PEM (RFC 1421).
|
466
426
|
"""
|
467
427
|
return pulumi.get(self, "public_key_pem")
|
468
428
|
|
@@ -30,9 +30,7 @@ class SelfSignedCertArgs:
|
|
30
30
|
"""
|
31
31
|
The set of arguments for constructing a SelfSignedCert resource.
|
32
32
|
:param pulumi.Input[Sequence[pulumi.Input[str]]] allowed_uses: List of key usages allowed for the issued certificate. Values are defined in [RFC 5280](https://datatracker.ietf.org/doc/html/rfc5280) and combine flags defined by both [Key Usages](https://datatracker.ietf.org/doc/html/rfc5280#section-4.2.1.3) and [Extended Key Usages](https://datatracker.ietf.org/doc/html/rfc5280#section-4.2.1.12). Accepted values: `any_extended`, `cert_signing`, `client_auth`, `code_signing`, `content_commitment`, `crl_signing`, `data_encipherment`, `decipher_only`, `digital_signature`, `email_protection`, `encipher_only`, `ipsec_end_system`, `ipsec_tunnel`, `ipsec_user`, `key_agreement`, `key_encipherment`, `microsoft_commercial_code_signing`, `microsoft_kernel_code_signing`, `microsoft_server_gated_crypto`, `netscape_server_gated_crypto`, `ocsp_signing`, `server_auth`, `timestamping`.
|
33
|
-
:param pulumi.Input[str] private_key_pem: Private key in
|
34
|
-
to. This can be read from a separate file using the [`file`](https://www.terraform.io/language/functions/file)
|
35
|
-
interpolation function. Only an irreversible secure hash of the private key will be stored in the Terraform state.
|
33
|
+
:param pulumi.Input[str] private_key_pem: Private key in PEM (RFC 1421) interpolation function.
|
36
34
|
:param pulumi.Input[int] validity_period_hours: Number of hours, after initial issuing, that the certificate will remain valid for.
|
37
35
|
:param pulumi.Input[Sequence[pulumi.Input[str]]] dns_names: List of DNS names for which a certificate is being requested (i.e. certificate subjects).
|
38
36
|
:param pulumi.Input[int] early_renewal_hours: The resource will consider the certificate to have expired the given number of hours before its actual expiry time. This
|
@@ -83,9 +81,7 @@ class SelfSignedCertArgs:
|
|
83
81
|
@pulumi.getter(name="privateKeyPem")
|
84
82
|
def private_key_pem(self) -> pulumi.Input[str]:
|
85
83
|
"""
|
86
|
-
Private key in
|
87
|
-
to. This can be read from a separate file using the [`file`](https://www.terraform.io/language/functions/file)
|
88
|
-
interpolation function. Only an irreversible secure hash of the private key will be stored in the Terraform state.
|
84
|
+
Private key in PEM (RFC 1421) interpolation function.
|
89
85
|
"""
|
90
86
|
return pulumi.get(self, "private_key_pem")
|
91
87
|
|
@@ -228,11 +224,7 @@ class _SelfSignedCertState:
|
|
228
224
|
"""
|
229
225
|
Input properties used for looking up and filtering SelfSignedCert resources.
|
230
226
|
:param pulumi.Input[Sequence[pulumi.Input[str]]] allowed_uses: List of key usages allowed for the issued certificate. Values are defined in [RFC 5280](https://datatracker.ietf.org/doc/html/rfc5280) and combine flags defined by both [Key Usages](https://datatracker.ietf.org/doc/html/rfc5280#section-4.2.1.3) and [Extended Key Usages](https://datatracker.ietf.org/doc/html/rfc5280#section-4.2.1.12). Accepted values: `any_extended`, `cert_signing`, `client_auth`, `code_signing`, `content_commitment`, `crl_signing`, `data_encipherment`, `decipher_only`, `digital_signature`, `email_protection`, `encipher_only`, `ipsec_end_system`, `ipsec_tunnel`, `ipsec_user`, `key_agreement`, `key_encipherment`, `microsoft_commercial_code_signing`, `microsoft_kernel_code_signing`, `microsoft_server_gated_crypto`, `netscape_server_gated_crypto`, `ocsp_signing`, `server_auth`, `timestamping`.
|
231
|
-
:param pulumi.Input[str] cert_pem: Certificate data in
|
232
|
-
[underlying](https://pkg.go.dev/encoding/pem#Encode)
|
233
|
-
[libraries](https://pkg.go.dev/golang.org/x/crypto/ssh#MarshalAuthorizedKey) that generate this value append a `\\n` at
|
234
|
-
the end of the PEM. In case this disrupts your use case, we recommend using
|
235
|
-
[`trimspace()`](https://www.terraform.io/language/functions/trimspace).
|
227
|
+
:param pulumi.Input[str] cert_pem: Certificate data in PEM (RFC 1421).
|
236
228
|
:param pulumi.Input[Sequence[pulumi.Input[str]]] dns_names: List of DNS names for which a certificate is being requested (i.e. certificate subjects).
|
237
229
|
:param pulumi.Input[int] early_renewal_hours: The resource will consider the certificate to have expired the given number of hours before its actual expiry time. This
|
238
230
|
can be useful to deploy an updated certificate in advance of the expiration of the current certificate. However, the old
|
@@ -242,9 +234,7 @@ class _SelfSignedCertState:
|
|
242
234
|
:param pulumi.Input[Sequence[pulumi.Input[str]]] ip_addresses: List of IP addresses for which a certificate is being requested (i.e. certificate subjects).
|
243
235
|
:param pulumi.Input[bool] is_ca_certificate: Is the generated certificate representing a Certificate Authority (CA) (default: `false`).
|
244
236
|
:param pulumi.Input[str] key_algorithm: Name of the algorithm used when generating the private key provided in `private_key_pem`.
|
245
|
-
:param pulumi.Input[str] private_key_pem: Private key in
|
246
|
-
to. This can be read from a separate file using the [`file`](https://www.terraform.io/language/functions/file)
|
247
|
-
interpolation function. Only an irreversible secure hash of the private key will be stored in the Terraform state.
|
237
|
+
:param pulumi.Input[str] private_key_pem: Private key in PEM (RFC 1421) interpolation function.
|
248
238
|
:param pulumi.Input[bool] ready_for_renewal: Is the certificate either expired (i.e. beyond the `validity_period_hours`) or ready for an early renewal (i.e. within the `early_renewal_hours`)?
|
249
239
|
:param pulumi.Input[bool] set_authority_key_id: Should the generated certificate include an [authority key identifier](https://datatracker.ietf.org/doc/html/rfc5280#section-4.2.1.1): for self-signed certificates this is the same value as the [subject key identifier](https://datatracker.ietf.org/doc/html/rfc5280#section-4.2.1.2) (default: `false`).
|
250
240
|
:param pulumi.Input[bool] set_subject_key_id: Should the generated certificate include a [subject key identifier](https://datatracker.ietf.org/doc/html/rfc5280#section-4.2.1.2) (default: `false`).
|
@@ -303,11 +293,7 @@ class _SelfSignedCertState:
|
|
303
293
|
@pulumi.getter(name="certPem")
|
304
294
|
def cert_pem(self) -> Optional[pulumi.Input[str]]:
|
305
295
|
"""
|
306
|
-
Certificate data in
|
307
|
-
[underlying](https://pkg.go.dev/encoding/pem#Encode)
|
308
|
-
[libraries](https://pkg.go.dev/golang.org/x/crypto/ssh#MarshalAuthorizedKey) that generate this value append a `\\n` at
|
309
|
-
the end of the PEM. In case this disrupts your use case, we recommend using
|
310
|
-
[`trimspace()`](https://www.terraform.io/language/functions/trimspace).
|
296
|
+
Certificate data in PEM (RFC 1421).
|
311
297
|
"""
|
312
298
|
return pulumi.get(self, "cert_pem")
|
313
299
|
|
@@ -383,9 +369,7 @@ class _SelfSignedCertState:
|
|
383
369
|
@pulumi.getter(name="privateKeyPem")
|
384
370
|
def private_key_pem(self) -> Optional[pulumi.Input[str]]:
|
385
371
|
"""
|
386
|
-
Private key in
|
387
|
-
to. This can be read from a separate file using the [`file`](https://www.terraform.io/language/functions/file)
|
388
|
-
interpolation function. Only an irreversible secure hash of the private key will be stored in the Terraform state.
|
372
|
+
Private key in PEM (RFC 1421) interpolation function.
|
389
373
|
"""
|
390
374
|
return pulumi.get(self, "private_key_pem")
|
391
375
|
|
@@ -520,9 +504,7 @@ class SelfSignedCert(pulumi.CustomResource):
|
|
520
504
|
early renewal period. (default: `0`)
|
521
505
|
:param pulumi.Input[Sequence[pulumi.Input[str]]] ip_addresses: List of IP addresses for which a certificate is being requested (i.e. certificate subjects).
|
522
506
|
:param pulumi.Input[bool] is_ca_certificate: Is the generated certificate representing a Certificate Authority (CA) (default: `false`).
|
523
|
-
:param pulumi.Input[str] private_key_pem: Private key in
|
524
|
-
to. This can be read from a separate file using the [`file`](https://www.terraform.io/language/functions/file)
|
525
|
-
interpolation function. Only an irreversible secure hash of the private key will be stored in the Terraform state.
|
507
|
+
:param pulumi.Input[str] private_key_pem: Private key in PEM (RFC 1421) interpolation function.
|
526
508
|
:param pulumi.Input[bool] set_authority_key_id: Should the generated certificate include an [authority key identifier](https://datatracker.ietf.org/doc/html/rfc5280#section-4.2.1.1): for self-signed certificates this is the same value as the [subject key identifier](https://datatracker.ietf.org/doc/html/rfc5280#section-4.2.1.2) (default: `false`).
|
527
509
|
:param pulumi.Input[bool] set_subject_key_id: Should the generated certificate include a [subject key identifier](https://datatracker.ietf.org/doc/html/rfc5280#section-4.2.1.2) (default: `false`).
|
528
510
|
:param pulumi.Input[pulumi.InputType['SelfSignedCertSubjectArgs']] subject: 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.
|
@@ -630,11 +612,7 @@ class SelfSignedCert(pulumi.CustomResource):
|
|
630
612
|
:param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
|
631
613
|
:param pulumi.ResourceOptions opts: Options for the resource.
|
632
614
|
:param pulumi.Input[Sequence[pulumi.Input[str]]] allowed_uses: List of key usages allowed for the issued certificate. Values are defined in [RFC 5280](https://datatracker.ietf.org/doc/html/rfc5280) and combine flags defined by both [Key Usages](https://datatracker.ietf.org/doc/html/rfc5280#section-4.2.1.3) and [Extended Key Usages](https://datatracker.ietf.org/doc/html/rfc5280#section-4.2.1.12). Accepted values: `any_extended`, `cert_signing`, `client_auth`, `code_signing`, `content_commitment`, `crl_signing`, `data_encipherment`, `decipher_only`, `digital_signature`, `email_protection`, `encipher_only`, `ipsec_end_system`, `ipsec_tunnel`, `ipsec_user`, `key_agreement`, `key_encipherment`, `microsoft_commercial_code_signing`, `microsoft_kernel_code_signing`, `microsoft_server_gated_crypto`, `netscape_server_gated_crypto`, `ocsp_signing`, `server_auth`, `timestamping`.
|
633
|
-
:param pulumi.Input[str] cert_pem: Certificate data in
|
634
|
-
[underlying](https://pkg.go.dev/encoding/pem#Encode)
|
635
|
-
[libraries](https://pkg.go.dev/golang.org/x/crypto/ssh#MarshalAuthorizedKey) that generate this value append a `\\n` at
|
636
|
-
the end of the PEM. In case this disrupts your use case, we recommend using
|
637
|
-
[`trimspace()`](https://www.terraform.io/language/functions/trimspace).
|
615
|
+
:param pulumi.Input[str] cert_pem: Certificate data in PEM (RFC 1421).
|
638
616
|
:param pulumi.Input[Sequence[pulumi.Input[str]]] dns_names: List of DNS names for which a certificate is being requested (i.e. certificate subjects).
|
639
617
|
:param pulumi.Input[int] early_renewal_hours: The resource will consider the certificate to have expired the given number of hours before its actual expiry time. This
|
640
618
|
can be useful to deploy an updated certificate in advance of the expiration of the current certificate. However, the old
|
@@ -644,9 +622,7 @@ class SelfSignedCert(pulumi.CustomResource):
|
|
644
622
|
:param pulumi.Input[Sequence[pulumi.Input[str]]] ip_addresses: List of IP addresses for which a certificate is being requested (i.e. certificate subjects).
|
645
623
|
:param pulumi.Input[bool] is_ca_certificate: Is the generated certificate representing a Certificate Authority (CA) (default: `false`).
|
646
624
|
:param pulumi.Input[str] key_algorithm: Name of the algorithm used when generating the private key provided in `private_key_pem`.
|
647
|
-
:param pulumi.Input[str] private_key_pem: Private key in
|
648
|
-
to. This can be read from a separate file using the [`file`](https://www.terraform.io/language/functions/file)
|
649
|
-
interpolation function. Only an irreversible secure hash of the private key will be stored in the Terraform state.
|
625
|
+
:param pulumi.Input[str] private_key_pem: Private key in PEM (RFC 1421) interpolation function.
|
650
626
|
:param pulumi.Input[bool] ready_for_renewal: Is the certificate either expired (i.e. beyond the `validity_period_hours`) or ready for an early renewal (i.e. within the `early_renewal_hours`)?
|
651
627
|
:param pulumi.Input[bool] set_authority_key_id: Should the generated certificate include an [authority key identifier](https://datatracker.ietf.org/doc/html/rfc5280#section-4.2.1.1): for self-signed certificates this is the same value as the [subject key identifier](https://datatracker.ietf.org/doc/html/rfc5280#section-4.2.1.2) (default: `false`).
|
652
628
|
:param pulumi.Input[bool] set_subject_key_id: Should the generated certificate include a [subject key identifier](https://datatracker.ietf.org/doc/html/rfc5280#section-4.2.1.2) (default: `false`).
|
@@ -690,11 +666,7 @@ class SelfSignedCert(pulumi.CustomResource):
|
|
690
666
|
@pulumi.getter(name="certPem")
|
691
667
|
def cert_pem(self) -> pulumi.Output[str]:
|
692
668
|
"""
|
693
|
-
Certificate data in
|
694
|
-
[underlying](https://pkg.go.dev/encoding/pem#Encode)
|
695
|
-
[libraries](https://pkg.go.dev/golang.org/x/crypto/ssh#MarshalAuthorizedKey) that generate this value append a `\\n` at
|
696
|
-
the end of the PEM. In case this disrupts your use case, we recommend using
|
697
|
-
[`trimspace()`](https://www.terraform.io/language/functions/trimspace).
|
669
|
+
Certificate data in PEM (RFC 1421).
|
698
670
|
"""
|
699
671
|
return pulumi.get(self, "cert_pem")
|
700
672
|
|
@@ -746,9 +718,7 @@ class SelfSignedCert(pulumi.CustomResource):
|
|
746
718
|
@pulumi.getter(name="privateKeyPem")
|
747
719
|
def private_key_pem(self) -> pulumi.Output[str]:
|
748
720
|
"""
|
749
|
-
Private key in
|
750
|
-
to. This can be read from a separate file using the [`file`](https://www.terraform.io/language/functions/file)
|
751
|
-
interpolation function. Only an irreversible secure hash of the private key will be stored in the Terraform state.
|
721
|
+
Private key in PEM (RFC 1421) interpolation function.
|
752
722
|
"""
|
753
723
|
return pulumi.get(self, "private_key_pem")
|
754
724
|
|
@@ -1,13 +1,16 @@
|
|
1
1
|
Metadata-Version: 2.1
|
2
|
-
Name:
|
3
|
-
Version: 5.0.
|
2
|
+
Name: pulumi_tls
|
3
|
+
Version: 5.0.2
|
4
4
|
Summary: A Pulumi package to create TLS resources in Pulumi programs.
|
5
|
-
Home-page: https://pulumi.io
|
6
5
|
License: Apache-2.0
|
6
|
+
Project-URL: Homepage, https://pulumi.io
|
7
7
|
Project-URL: Repository, https://github.com/pulumi/pulumi-tls
|
8
|
-
Keywords: pulumi
|
9
|
-
|
8
|
+
Keywords: pulumi,tls
|
9
|
+
Requires-Python: >=3.8
|
10
10
|
Description-Content-Type: text/markdown
|
11
|
+
Requires-Dist: parver>=0.2.1
|
12
|
+
Requires-Dist: pulumi<4.0.0,>=3.0.0
|
13
|
+
Requires-Dist: semver>=2.8.1
|
11
14
|
|
12
15
|
[](https://github.com/pulumi/pulumi-tls/actions)
|
13
16
|
[](https://slack.pulumi.com)
|
@@ -63,5 +66,3 @@ and interact closely with TLS resources.
|
|
63
66
|
|
64
67
|
|
65
68
|
For further information, please visit [the TLS provider docs](https://www.pulumi.com/docs/intro/cloud-providers/tls) or for detailed reference documentation, please visit [the API docs](https://www.pulumi.com/docs/reference/pkg/tls).
|
66
|
-
|
67
|
-
|
@@ -1,5 +1,5 @@
|
|
1
1
|
README.md
|
2
|
-
|
2
|
+
pyproject.toml
|
3
3
|
pulumi_tls/__init__.py
|
4
4
|
pulumi_tls/_inputs.py
|
5
5
|
pulumi_tls/_utilities.py
|
@@ -16,9 +16,9 @@ pulumi_tls/self_signed_cert.py
|
|
16
16
|
pulumi_tls.egg-info/PKG-INFO
|
17
17
|
pulumi_tls.egg-info/SOURCES.txt
|
18
18
|
pulumi_tls.egg-info/dependency_links.txt
|
19
|
-
pulumi_tls.egg-info/not-zip-safe
|
20
19
|
pulumi_tls.egg-info/requires.txt
|
21
20
|
pulumi_tls.egg-info/top_level.txt
|
22
21
|
pulumi_tls/config/__init__.py
|
22
|
+
pulumi_tls/config/__init__.pyi
|
23
23
|
pulumi_tls/config/outputs.py
|
24
24
|
pulumi_tls/config/vars.py
|
@@ -0,0 +1,22 @@
|
|
1
|
+
[project]
|
2
|
+
name = "pulumi_tls"
|
3
|
+
description = "A Pulumi package to create TLS resources in Pulumi programs."
|
4
|
+
dependencies = ["parver>=0.2.1", "pulumi>=3.0.0,<4.0.0", "semver>=2.8.1"]
|
5
|
+
keywords = ["pulumi", "tls"]
|
6
|
+
readme = "README.md"
|
7
|
+
requires-python = ">=3.8"
|
8
|
+
version = "5.0.2"
|
9
|
+
[project.license]
|
10
|
+
text = "Apache-2.0"
|
11
|
+
[project.urls]
|
12
|
+
Homepage = "https://pulumi.io"
|
13
|
+
Repository = "https://github.com/pulumi/pulumi-tls"
|
14
|
+
|
15
|
+
[build-system]
|
16
|
+
requires = ["setuptools>=61.0"]
|
17
|
+
build-backend = "setuptools.build_meta"
|
18
|
+
|
19
|
+
[tool]
|
20
|
+
[tool.setuptools]
|
21
|
+
[tool.setuptools.package-data]
|
22
|
+
pulumi_tls = ["py.typed", "pulumi-plugin.json"]
|
@@ -1 +0,0 @@
|
|
1
|
-
|
pulumi_tls-5.0.0a0/setup.py
DELETED
@@ -1,66 +0,0 @@
|
|
1
|
-
# coding=utf-8
|
2
|
-
# *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. ***
|
3
|
-
# *** Do not edit by hand unless you're certain you know what you are doing! ***
|
4
|
-
|
5
|
-
import errno
|
6
|
-
from setuptools import setup, find_packages
|
7
|
-
from setuptools.command.install import install
|
8
|
-
from subprocess import check_call
|
9
|
-
|
10
|
-
|
11
|
-
VERSION = "5.0.0a0"
|
12
|
-
PLUGIN_VERSION = "5.0.0-alpha.0+7c9d3d42"
|
13
|
-
|
14
|
-
class InstallPluginCommand(install):
|
15
|
-
def run(self):
|
16
|
-
install.run(self)
|
17
|
-
try:
|
18
|
-
check_call(['pulumi', 'plugin', 'install', 'resource', 'tls', PLUGIN_VERSION])
|
19
|
-
except OSError as error:
|
20
|
-
if error.errno == errno.ENOENT:
|
21
|
-
print(f"""
|
22
|
-
There was an error installing the tls resource provider plugin.
|
23
|
-
It looks like `pulumi` is not installed on your system.
|
24
|
-
Please visit https://pulumi.com/ to install the Pulumi CLI.
|
25
|
-
You may try manually installing the plugin by running
|
26
|
-
`pulumi plugin install resource tls {PLUGIN_VERSION}`
|
27
|
-
""")
|
28
|
-
else:
|
29
|
-
raise
|
30
|
-
|
31
|
-
|
32
|
-
def readme():
|
33
|
-
try:
|
34
|
-
with open('README.md', encoding='utf-8') as f:
|
35
|
-
return f.read()
|
36
|
-
except FileNotFoundError:
|
37
|
-
return "tls Pulumi Package - Development Version"
|
38
|
-
|
39
|
-
|
40
|
-
setup(name='pulumi_tls',
|
41
|
-
version=VERSION,
|
42
|
-
description="A Pulumi package to create TLS resources in Pulumi programs.",
|
43
|
-
long_description=readme(),
|
44
|
-
long_description_content_type='text/markdown',
|
45
|
-
cmdclass={
|
46
|
-
'install': InstallPluginCommand,
|
47
|
-
},
|
48
|
-
keywords='pulumi tls',
|
49
|
-
url='https://pulumi.io',
|
50
|
-
project_urls={
|
51
|
-
'Repository': 'https://github.com/pulumi/pulumi-tls'
|
52
|
-
},
|
53
|
-
license='Apache-2.0',
|
54
|
-
packages=find_packages(),
|
55
|
-
package_data={
|
56
|
-
'pulumi_tls': [
|
57
|
-
'py.typed',
|
58
|
-
'pulumi-plugin.json',
|
59
|
-
]
|
60
|
-
},
|
61
|
-
install_requires=[
|
62
|
-
'parver>=0.2.1',
|
63
|
-
'pulumi>=3.0.0,<4.0.0',
|
64
|
-
'semver>=2.8.1'
|
65
|
-
],
|
66
|
-
zip_safe=False)
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|