pulumiverse-scaleway 1.31.0__py3-none-any.whl → 1.32.0__py3-none-any.whl
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.
- pulumiverse_scaleway/__init__.py +9 -0
- pulumiverse_scaleway/_inputs.py +142 -36
- pulumiverse_scaleway/apple_silicon_server.py +46 -8
- pulumiverse_scaleway/applesilicon/_inputs.py +18 -18
- pulumiverse_scaleway/applesilicon/outputs.py +12 -12
- pulumiverse_scaleway/applesilicon/server.py +46 -8
- pulumiverse_scaleway/block/_inputs.py +58 -6
- pulumiverse_scaleway/block/get_snapshot.py +12 -1
- pulumiverse_scaleway/block/outputs.py +60 -0
- pulumiverse_scaleway/block/snapshot.py +54 -7
- pulumiverse_scaleway/block/volume.py +14 -14
- pulumiverse_scaleway/block_snapshot.py +54 -7
- pulumiverse_scaleway/block_volume.py +14 -14
- pulumiverse_scaleway/domain/get_record.py +1 -12
- pulumiverse_scaleway/domain/record.py +0 -47
- pulumiverse_scaleway/domain_record.py +0 -47
- pulumiverse_scaleway/get_block_snapshot.py +12 -1
- pulumiverse_scaleway/get_domain_record.py +1 -12
- pulumiverse_scaleway/get_iam_user.py +2 -2
- pulumiverse_scaleway/get_lb_frontend.py +37 -4
- pulumiverse_scaleway/get_mongo_db_instance.py +12 -1
- pulumiverse_scaleway/iam/get_user.py +2 -2
- pulumiverse_scaleway/key_manager_key.py +831 -0
- pulumiverse_scaleway/kubernetes/cluster.py +6 -6
- pulumiverse_scaleway/kubernetes_cluster.py +6 -6
- pulumiverse_scaleway/loadbalancer_frontend.py +105 -2
- pulumiverse_scaleway/loadbalancers/_inputs.py +12 -12
- pulumiverse_scaleway/loadbalancers/frontend.py +105 -2
- pulumiverse_scaleway/loadbalancers/get_frontend.py +37 -4
- pulumiverse_scaleway/loadbalancers/outputs.py +32 -10
- pulumiverse_scaleway/mongo_db_instance.py +28 -0
- pulumiverse_scaleway/mongodb/get_instance.py +12 -1
- pulumiverse_scaleway/mongodb/instance.py +28 -0
- pulumiverse_scaleway/network/acl.py +35 -37
- pulumiverse_scaleway/outputs.py +159 -26
- pulumiverse_scaleway/pulumi-plugin.json +1 -1
- {pulumiverse_scaleway-1.31.0.dist-info → pulumiverse_scaleway-1.32.0.dist-info}/METADATA +1 -1
- {pulumiverse_scaleway-1.31.0.dist-info → pulumiverse_scaleway-1.32.0.dist-info}/RECORD +40 -39
- {pulumiverse_scaleway-1.31.0.dist-info → pulumiverse_scaleway-1.32.0.dist-info}/WHEEL +0 -0
- {pulumiverse_scaleway-1.31.0.dist-info → pulumiverse_scaleway-1.32.0.dist-info}/top_level.txt +0 -0
@@ -0,0 +1,831 @@
|
|
1
|
+
# coding=utf-8
|
2
|
+
# *** WARNING: this file was generated by pulumi-language-python. ***
|
3
|
+
# *** Do not edit by hand unless you're certain you know what you are doing! ***
|
4
|
+
|
5
|
+
import builtins
|
6
|
+
import copy
|
7
|
+
import warnings
|
8
|
+
import sys
|
9
|
+
import pulumi
|
10
|
+
import pulumi.runtime
|
11
|
+
from typing import Any, Mapping, Optional, Sequence, Union, overload
|
12
|
+
if sys.version_info >= (3, 11):
|
13
|
+
from typing import NotRequired, TypedDict, TypeAlias
|
14
|
+
else:
|
15
|
+
from typing_extensions import NotRequired, TypedDict, TypeAlias
|
16
|
+
from . import _utilities
|
17
|
+
from . import outputs
|
18
|
+
from ._inputs import *
|
19
|
+
|
20
|
+
__all__ = ['KeyManagerKeyArgs', 'KeyManagerKey']
|
21
|
+
|
22
|
+
@pulumi.input_type
|
23
|
+
class KeyManagerKeyArgs:
|
24
|
+
def __init__(__self__, *,
|
25
|
+
usage: pulumi.Input[builtins.str],
|
26
|
+
description: Optional[pulumi.Input[builtins.str]] = None,
|
27
|
+
name: Optional[pulumi.Input[builtins.str]] = None,
|
28
|
+
origin: Optional[pulumi.Input[builtins.str]] = None,
|
29
|
+
project_id: Optional[pulumi.Input[builtins.str]] = None,
|
30
|
+
region: Optional[pulumi.Input[builtins.str]] = None,
|
31
|
+
rotation_policy: Optional[pulumi.Input['KeyManagerKeyRotationPolicyArgs']] = None,
|
32
|
+
tags: Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]] = None,
|
33
|
+
unprotected: Optional[pulumi.Input[builtins.bool]] = None):
|
34
|
+
"""
|
35
|
+
The set of arguments for constructing a KeyManagerKey resource.
|
36
|
+
:param pulumi.Input[builtins.str] usage: – The usage of the key. Valid values are:
|
37
|
+
:param pulumi.Input[builtins.str] description: – A description for the key.
|
38
|
+
:param pulumi.Input[builtins.str] name: The name of the key.
|
39
|
+
:param pulumi.Input[builtins.str] origin: – The origin of the key. Valid values are:
|
40
|
+
:param pulumi.Input[builtins.str] project_id: – The ID of the project the key belongs to.
|
41
|
+
:param pulumi.Input[builtins.str] region: The region in which to create the key (e.g., `fr-par`).
|
42
|
+
:param pulumi.Input['KeyManagerKeyRotationPolicyArgs'] rotation_policy: – Rotation policy for the key:
|
43
|
+
:param pulumi.Input[Sequence[pulumi.Input[builtins.str]]] tags: – A list of tags to assign to the key.
|
44
|
+
:param pulumi.Input[builtins.bool] unprotected: – If `true`, the key can be deleted. Defaults to `false` (protected).
|
45
|
+
"""
|
46
|
+
pulumi.set(__self__, "usage", usage)
|
47
|
+
if description is not None:
|
48
|
+
pulumi.set(__self__, "description", description)
|
49
|
+
if name is not None:
|
50
|
+
pulumi.set(__self__, "name", name)
|
51
|
+
if origin is not None:
|
52
|
+
pulumi.set(__self__, "origin", origin)
|
53
|
+
if project_id is not None:
|
54
|
+
pulumi.set(__self__, "project_id", project_id)
|
55
|
+
if region is not None:
|
56
|
+
pulumi.set(__self__, "region", region)
|
57
|
+
if rotation_policy is not None:
|
58
|
+
pulumi.set(__self__, "rotation_policy", rotation_policy)
|
59
|
+
if tags is not None:
|
60
|
+
pulumi.set(__self__, "tags", tags)
|
61
|
+
if unprotected is not None:
|
62
|
+
pulumi.set(__self__, "unprotected", unprotected)
|
63
|
+
|
64
|
+
@property
|
65
|
+
@pulumi.getter
|
66
|
+
def usage(self) -> pulumi.Input[builtins.str]:
|
67
|
+
"""
|
68
|
+
– The usage of the key. Valid values are:
|
69
|
+
"""
|
70
|
+
return pulumi.get(self, "usage")
|
71
|
+
|
72
|
+
@usage.setter
|
73
|
+
def usage(self, value: pulumi.Input[builtins.str]):
|
74
|
+
pulumi.set(self, "usage", value)
|
75
|
+
|
76
|
+
@property
|
77
|
+
@pulumi.getter
|
78
|
+
def description(self) -> Optional[pulumi.Input[builtins.str]]:
|
79
|
+
"""
|
80
|
+
– A description for the key.
|
81
|
+
"""
|
82
|
+
return pulumi.get(self, "description")
|
83
|
+
|
84
|
+
@description.setter
|
85
|
+
def description(self, value: Optional[pulumi.Input[builtins.str]]):
|
86
|
+
pulumi.set(self, "description", value)
|
87
|
+
|
88
|
+
@property
|
89
|
+
@pulumi.getter
|
90
|
+
def name(self) -> Optional[pulumi.Input[builtins.str]]:
|
91
|
+
"""
|
92
|
+
The name of the key.
|
93
|
+
"""
|
94
|
+
return pulumi.get(self, "name")
|
95
|
+
|
96
|
+
@name.setter
|
97
|
+
def name(self, value: Optional[pulumi.Input[builtins.str]]):
|
98
|
+
pulumi.set(self, "name", value)
|
99
|
+
|
100
|
+
@property
|
101
|
+
@pulumi.getter
|
102
|
+
def origin(self) -> Optional[pulumi.Input[builtins.str]]:
|
103
|
+
"""
|
104
|
+
– The origin of the key. Valid values are:
|
105
|
+
"""
|
106
|
+
return pulumi.get(self, "origin")
|
107
|
+
|
108
|
+
@origin.setter
|
109
|
+
def origin(self, value: Optional[pulumi.Input[builtins.str]]):
|
110
|
+
pulumi.set(self, "origin", value)
|
111
|
+
|
112
|
+
@property
|
113
|
+
@pulumi.getter(name="projectId")
|
114
|
+
def project_id(self) -> Optional[pulumi.Input[builtins.str]]:
|
115
|
+
"""
|
116
|
+
– The ID of the project the key belongs to.
|
117
|
+
"""
|
118
|
+
return pulumi.get(self, "project_id")
|
119
|
+
|
120
|
+
@project_id.setter
|
121
|
+
def project_id(self, value: Optional[pulumi.Input[builtins.str]]):
|
122
|
+
pulumi.set(self, "project_id", value)
|
123
|
+
|
124
|
+
@property
|
125
|
+
@pulumi.getter
|
126
|
+
def region(self) -> Optional[pulumi.Input[builtins.str]]:
|
127
|
+
"""
|
128
|
+
The region in which to create the key (e.g., `fr-par`).
|
129
|
+
"""
|
130
|
+
return pulumi.get(self, "region")
|
131
|
+
|
132
|
+
@region.setter
|
133
|
+
def region(self, value: Optional[pulumi.Input[builtins.str]]):
|
134
|
+
pulumi.set(self, "region", value)
|
135
|
+
|
136
|
+
@property
|
137
|
+
@pulumi.getter(name="rotationPolicy")
|
138
|
+
def rotation_policy(self) -> Optional[pulumi.Input['KeyManagerKeyRotationPolicyArgs']]:
|
139
|
+
"""
|
140
|
+
– Rotation policy for the key:
|
141
|
+
"""
|
142
|
+
return pulumi.get(self, "rotation_policy")
|
143
|
+
|
144
|
+
@rotation_policy.setter
|
145
|
+
def rotation_policy(self, value: Optional[pulumi.Input['KeyManagerKeyRotationPolicyArgs']]):
|
146
|
+
pulumi.set(self, "rotation_policy", value)
|
147
|
+
|
148
|
+
@property
|
149
|
+
@pulumi.getter
|
150
|
+
def tags(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]]:
|
151
|
+
"""
|
152
|
+
– A list of tags to assign to the key.
|
153
|
+
"""
|
154
|
+
return pulumi.get(self, "tags")
|
155
|
+
|
156
|
+
@tags.setter
|
157
|
+
def tags(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]]):
|
158
|
+
pulumi.set(self, "tags", value)
|
159
|
+
|
160
|
+
@property
|
161
|
+
@pulumi.getter
|
162
|
+
def unprotected(self) -> Optional[pulumi.Input[builtins.bool]]:
|
163
|
+
"""
|
164
|
+
– If `true`, the key can be deleted. Defaults to `false` (protected).
|
165
|
+
"""
|
166
|
+
return pulumi.get(self, "unprotected")
|
167
|
+
|
168
|
+
@unprotected.setter
|
169
|
+
def unprotected(self, value: Optional[pulumi.Input[builtins.bool]]):
|
170
|
+
pulumi.set(self, "unprotected", value)
|
171
|
+
|
172
|
+
|
173
|
+
@pulumi.input_type
|
174
|
+
class _KeyManagerKeyState:
|
175
|
+
def __init__(__self__, *,
|
176
|
+
created_at: Optional[pulumi.Input[builtins.str]] = None,
|
177
|
+
description: Optional[pulumi.Input[builtins.str]] = None,
|
178
|
+
locked: Optional[pulumi.Input[builtins.bool]] = None,
|
179
|
+
name: Optional[pulumi.Input[builtins.str]] = None,
|
180
|
+
origin: Optional[pulumi.Input[builtins.str]] = None,
|
181
|
+
project_id: Optional[pulumi.Input[builtins.str]] = None,
|
182
|
+
protected: Optional[pulumi.Input[builtins.bool]] = None,
|
183
|
+
region: Optional[pulumi.Input[builtins.str]] = None,
|
184
|
+
rotated_at: Optional[pulumi.Input[builtins.str]] = None,
|
185
|
+
rotation_count: Optional[pulumi.Input[builtins.int]] = None,
|
186
|
+
rotation_policy: Optional[pulumi.Input['KeyManagerKeyRotationPolicyArgs']] = None,
|
187
|
+
state: Optional[pulumi.Input[builtins.str]] = None,
|
188
|
+
tags: Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]] = None,
|
189
|
+
unprotected: Optional[pulumi.Input[builtins.bool]] = None,
|
190
|
+
updated_at: Optional[pulumi.Input[builtins.str]] = None,
|
191
|
+
usage: Optional[pulumi.Input[builtins.str]] = None):
|
192
|
+
"""
|
193
|
+
Input properties used for looking up and filtering KeyManagerKey resources.
|
194
|
+
:param pulumi.Input[builtins.str] created_at: The date and time when the key was created.
|
195
|
+
:param pulumi.Input[builtins.str] description: – A description for the key.
|
196
|
+
:param pulumi.Input[builtins.bool] locked: Whether the key is locked.
|
197
|
+
:param pulumi.Input[builtins.str] name: The name of the key.
|
198
|
+
:param pulumi.Input[builtins.str] origin: – The origin of the key. Valid values are:
|
199
|
+
:param pulumi.Input[builtins.str] project_id: – The ID of the project the key belongs to.
|
200
|
+
:param pulumi.Input[builtins.bool] protected: Whether the key is protected from deletion.
|
201
|
+
:param pulumi.Input[builtins.str] region: The region in which to create the key (e.g., `fr-par`).
|
202
|
+
:param pulumi.Input[builtins.str] rotated_at: The date and time when the key was last rotated.
|
203
|
+
:param pulumi.Input[builtins.int] rotation_count: The number of times the key has been rotated.
|
204
|
+
:param pulumi.Input['KeyManagerKeyRotationPolicyArgs'] rotation_policy: – Rotation policy for the key:
|
205
|
+
:param pulumi.Input[builtins.str] state: The state of the key (e.g., `enabled`).
|
206
|
+
:param pulumi.Input[Sequence[pulumi.Input[builtins.str]]] tags: – A list of tags to assign to the key.
|
207
|
+
:param pulumi.Input[builtins.bool] unprotected: – If `true`, the key can be deleted. Defaults to `false` (protected).
|
208
|
+
:param pulumi.Input[builtins.str] updated_at: The date and time when the key was last updated.
|
209
|
+
:param pulumi.Input[builtins.str] usage: – The usage of the key. Valid values are:
|
210
|
+
"""
|
211
|
+
if created_at is not None:
|
212
|
+
pulumi.set(__self__, "created_at", created_at)
|
213
|
+
if description is not None:
|
214
|
+
pulumi.set(__self__, "description", description)
|
215
|
+
if locked is not None:
|
216
|
+
pulumi.set(__self__, "locked", locked)
|
217
|
+
if name is not None:
|
218
|
+
pulumi.set(__self__, "name", name)
|
219
|
+
if origin is not None:
|
220
|
+
pulumi.set(__self__, "origin", origin)
|
221
|
+
if project_id is not None:
|
222
|
+
pulumi.set(__self__, "project_id", project_id)
|
223
|
+
if protected is not None:
|
224
|
+
pulumi.set(__self__, "protected", protected)
|
225
|
+
if region is not None:
|
226
|
+
pulumi.set(__self__, "region", region)
|
227
|
+
if rotated_at is not None:
|
228
|
+
pulumi.set(__self__, "rotated_at", rotated_at)
|
229
|
+
if rotation_count is not None:
|
230
|
+
pulumi.set(__self__, "rotation_count", rotation_count)
|
231
|
+
if rotation_policy is not None:
|
232
|
+
pulumi.set(__self__, "rotation_policy", rotation_policy)
|
233
|
+
if state is not None:
|
234
|
+
pulumi.set(__self__, "state", state)
|
235
|
+
if tags is not None:
|
236
|
+
pulumi.set(__self__, "tags", tags)
|
237
|
+
if unprotected is not None:
|
238
|
+
pulumi.set(__self__, "unprotected", unprotected)
|
239
|
+
if updated_at is not None:
|
240
|
+
pulumi.set(__self__, "updated_at", updated_at)
|
241
|
+
if usage is not None:
|
242
|
+
pulumi.set(__self__, "usage", usage)
|
243
|
+
|
244
|
+
@property
|
245
|
+
@pulumi.getter(name="createdAt")
|
246
|
+
def created_at(self) -> Optional[pulumi.Input[builtins.str]]:
|
247
|
+
"""
|
248
|
+
The date and time when the key was created.
|
249
|
+
"""
|
250
|
+
return pulumi.get(self, "created_at")
|
251
|
+
|
252
|
+
@created_at.setter
|
253
|
+
def created_at(self, value: Optional[pulumi.Input[builtins.str]]):
|
254
|
+
pulumi.set(self, "created_at", value)
|
255
|
+
|
256
|
+
@property
|
257
|
+
@pulumi.getter
|
258
|
+
def description(self) -> Optional[pulumi.Input[builtins.str]]:
|
259
|
+
"""
|
260
|
+
– A description for the key.
|
261
|
+
"""
|
262
|
+
return pulumi.get(self, "description")
|
263
|
+
|
264
|
+
@description.setter
|
265
|
+
def description(self, value: Optional[pulumi.Input[builtins.str]]):
|
266
|
+
pulumi.set(self, "description", value)
|
267
|
+
|
268
|
+
@property
|
269
|
+
@pulumi.getter
|
270
|
+
def locked(self) -> Optional[pulumi.Input[builtins.bool]]:
|
271
|
+
"""
|
272
|
+
Whether the key is locked.
|
273
|
+
"""
|
274
|
+
return pulumi.get(self, "locked")
|
275
|
+
|
276
|
+
@locked.setter
|
277
|
+
def locked(self, value: Optional[pulumi.Input[builtins.bool]]):
|
278
|
+
pulumi.set(self, "locked", value)
|
279
|
+
|
280
|
+
@property
|
281
|
+
@pulumi.getter
|
282
|
+
def name(self) -> Optional[pulumi.Input[builtins.str]]:
|
283
|
+
"""
|
284
|
+
The name of the key.
|
285
|
+
"""
|
286
|
+
return pulumi.get(self, "name")
|
287
|
+
|
288
|
+
@name.setter
|
289
|
+
def name(self, value: Optional[pulumi.Input[builtins.str]]):
|
290
|
+
pulumi.set(self, "name", value)
|
291
|
+
|
292
|
+
@property
|
293
|
+
@pulumi.getter
|
294
|
+
def origin(self) -> Optional[pulumi.Input[builtins.str]]:
|
295
|
+
"""
|
296
|
+
– The origin of the key. Valid values are:
|
297
|
+
"""
|
298
|
+
return pulumi.get(self, "origin")
|
299
|
+
|
300
|
+
@origin.setter
|
301
|
+
def origin(self, value: Optional[pulumi.Input[builtins.str]]):
|
302
|
+
pulumi.set(self, "origin", value)
|
303
|
+
|
304
|
+
@property
|
305
|
+
@pulumi.getter(name="projectId")
|
306
|
+
def project_id(self) -> Optional[pulumi.Input[builtins.str]]:
|
307
|
+
"""
|
308
|
+
– The ID of the project the key belongs to.
|
309
|
+
"""
|
310
|
+
return pulumi.get(self, "project_id")
|
311
|
+
|
312
|
+
@project_id.setter
|
313
|
+
def project_id(self, value: Optional[pulumi.Input[builtins.str]]):
|
314
|
+
pulumi.set(self, "project_id", value)
|
315
|
+
|
316
|
+
@property
|
317
|
+
@pulumi.getter
|
318
|
+
def protected(self) -> Optional[pulumi.Input[builtins.bool]]:
|
319
|
+
"""
|
320
|
+
Whether the key is protected from deletion.
|
321
|
+
"""
|
322
|
+
return pulumi.get(self, "protected")
|
323
|
+
|
324
|
+
@protected.setter
|
325
|
+
def protected(self, value: Optional[pulumi.Input[builtins.bool]]):
|
326
|
+
pulumi.set(self, "protected", value)
|
327
|
+
|
328
|
+
@property
|
329
|
+
@pulumi.getter
|
330
|
+
def region(self) -> Optional[pulumi.Input[builtins.str]]:
|
331
|
+
"""
|
332
|
+
The region in which to create the key (e.g., `fr-par`).
|
333
|
+
"""
|
334
|
+
return pulumi.get(self, "region")
|
335
|
+
|
336
|
+
@region.setter
|
337
|
+
def region(self, value: Optional[pulumi.Input[builtins.str]]):
|
338
|
+
pulumi.set(self, "region", value)
|
339
|
+
|
340
|
+
@property
|
341
|
+
@pulumi.getter(name="rotatedAt")
|
342
|
+
def rotated_at(self) -> Optional[pulumi.Input[builtins.str]]:
|
343
|
+
"""
|
344
|
+
The date and time when the key was last rotated.
|
345
|
+
"""
|
346
|
+
return pulumi.get(self, "rotated_at")
|
347
|
+
|
348
|
+
@rotated_at.setter
|
349
|
+
def rotated_at(self, value: Optional[pulumi.Input[builtins.str]]):
|
350
|
+
pulumi.set(self, "rotated_at", value)
|
351
|
+
|
352
|
+
@property
|
353
|
+
@pulumi.getter(name="rotationCount")
|
354
|
+
def rotation_count(self) -> Optional[pulumi.Input[builtins.int]]:
|
355
|
+
"""
|
356
|
+
The number of times the key has been rotated.
|
357
|
+
"""
|
358
|
+
return pulumi.get(self, "rotation_count")
|
359
|
+
|
360
|
+
@rotation_count.setter
|
361
|
+
def rotation_count(self, value: Optional[pulumi.Input[builtins.int]]):
|
362
|
+
pulumi.set(self, "rotation_count", value)
|
363
|
+
|
364
|
+
@property
|
365
|
+
@pulumi.getter(name="rotationPolicy")
|
366
|
+
def rotation_policy(self) -> Optional[pulumi.Input['KeyManagerKeyRotationPolicyArgs']]:
|
367
|
+
"""
|
368
|
+
– Rotation policy for the key:
|
369
|
+
"""
|
370
|
+
return pulumi.get(self, "rotation_policy")
|
371
|
+
|
372
|
+
@rotation_policy.setter
|
373
|
+
def rotation_policy(self, value: Optional[pulumi.Input['KeyManagerKeyRotationPolicyArgs']]):
|
374
|
+
pulumi.set(self, "rotation_policy", value)
|
375
|
+
|
376
|
+
@property
|
377
|
+
@pulumi.getter
|
378
|
+
def state(self) -> Optional[pulumi.Input[builtins.str]]:
|
379
|
+
"""
|
380
|
+
The state of the key (e.g., `enabled`).
|
381
|
+
"""
|
382
|
+
return pulumi.get(self, "state")
|
383
|
+
|
384
|
+
@state.setter
|
385
|
+
def state(self, value: Optional[pulumi.Input[builtins.str]]):
|
386
|
+
pulumi.set(self, "state", value)
|
387
|
+
|
388
|
+
@property
|
389
|
+
@pulumi.getter
|
390
|
+
def tags(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]]:
|
391
|
+
"""
|
392
|
+
– A list of tags to assign to the key.
|
393
|
+
"""
|
394
|
+
return pulumi.get(self, "tags")
|
395
|
+
|
396
|
+
@tags.setter
|
397
|
+
def tags(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]]):
|
398
|
+
pulumi.set(self, "tags", value)
|
399
|
+
|
400
|
+
@property
|
401
|
+
@pulumi.getter
|
402
|
+
def unprotected(self) -> Optional[pulumi.Input[builtins.bool]]:
|
403
|
+
"""
|
404
|
+
– If `true`, the key can be deleted. Defaults to `false` (protected).
|
405
|
+
"""
|
406
|
+
return pulumi.get(self, "unprotected")
|
407
|
+
|
408
|
+
@unprotected.setter
|
409
|
+
def unprotected(self, value: Optional[pulumi.Input[builtins.bool]]):
|
410
|
+
pulumi.set(self, "unprotected", value)
|
411
|
+
|
412
|
+
@property
|
413
|
+
@pulumi.getter(name="updatedAt")
|
414
|
+
def updated_at(self) -> Optional[pulumi.Input[builtins.str]]:
|
415
|
+
"""
|
416
|
+
The date and time when the key was last updated.
|
417
|
+
"""
|
418
|
+
return pulumi.get(self, "updated_at")
|
419
|
+
|
420
|
+
@updated_at.setter
|
421
|
+
def updated_at(self, value: Optional[pulumi.Input[builtins.str]]):
|
422
|
+
pulumi.set(self, "updated_at", value)
|
423
|
+
|
424
|
+
@property
|
425
|
+
@pulumi.getter
|
426
|
+
def usage(self) -> Optional[pulumi.Input[builtins.str]]:
|
427
|
+
"""
|
428
|
+
– The usage of the key. Valid values are:
|
429
|
+
"""
|
430
|
+
return pulumi.get(self, "usage")
|
431
|
+
|
432
|
+
@usage.setter
|
433
|
+
def usage(self, value: Optional[pulumi.Input[builtins.str]]):
|
434
|
+
pulumi.set(self, "usage", value)
|
435
|
+
|
436
|
+
|
437
|
+
@pulumi.type_token("scaleway:index/keyManagerKey:KeyManagerKey")
|
438
|
+
class KeyManagerKey(pulumi.CustomResource):
|
439
|
+
@overload
|
440
|
+
def __init__(__self__,
|
441
|
+
resource_name: str,
|
442
|
+
opts: Optional[pulumi.ResourceOptions] = None,
|
443
|
+
description: Optional[pulumi.Input[builtins.str]] = None,
|
444
|
+
name: Optional[pulumi.Input[builtins.str]] = None,
|
445
|
+
origin: Optional[pulumi.Input[builtins.str]] = None,
|
446
|
+
project_id: Optional[pulumi.Input[builtins.str]] = None,
|
447
|
+
region: Optional[pulumi.Input[builtins.str]] = None,
|
448
|
+
rotation_policy: Optional[pulumi.Input[Union['KeyManagerKeyRotationPolicyArgs', 'KeyManagerKeyRotationPolicyArgsDict']]] = None,
|
449
|
+
tags: Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]] = None,
|
450
|
+
unprotected: Optional[pulumi.Input[builtins.bool]] = None,
|
451
|
+
usage: Optional[pulumi.Input[builtins.str]] = None,
|
452
|
+
__props__=None):
|
453
|
+
"""
|
454
|
+
Provides a Scaleway Key Manager Key resource.\\
|
455
|
+
This resource allows you to create and manage cryptographic keys in Scaleway Key Manager (KMS).
|
456
|
+
|
457
|
+
## Example Usage
|
458
|
+
|
459
|
+
```python
|
460
|
+
import pulumi
|
461
|
+
import pulumiverse_scaleway as scaleway
|
462
|
+
|
463
|
+
main = scaleway.KeyManagerKey("main",
|
464
|
+
name="my-kms-key",
|
465
|
+
region="fr-par",
|
466
|
+
project_id="your-project-id",
|
467
|
+
usage="symmetric_encryption",
|
468
|
+
description="Key for encrypting secrets",
|
469
|
+
tags=[
|
470
|
+
"env:prod",
|
471
|
+
"kms",
|
472
|
+
],
|
473
|
+
unprotected=True,
|
474
|
+
rotation_policy={
|
475
|
+
"rotation_period": "720h",
|
476
|
+
})
|
477
|
+
```
|
478
|
+
|
479
|
+
## Notes
|
480
|
+
|
481
|
+
- **Protection**: By default, keys are protected and cannot be deleted. To allow deletion, set `unprotected = true` when creating the key.
|
482
|
+
- **Rotation Policy**: The `rotation_policy` block allows you to set automatic rotation for your key.
|
483
|
+
- **Origin**: The `origin` argument is optional and defaults to `scaleway_kms`. Use `external` if you want to import an external key (see Scaleway documentation for details).
|
484
|
+
- **Project and Region**: If not specified, `project_id` and `region` will default to the provider configuration.
|
485
|
+
|
486
|
+
## Example: Asymmetric Key
|
487
|
+
|
488
|
+
```python
|
489
|
+
import pulumi
|
490
|
+
import pulumiverse_scaleway as scaleway
|
491
|
+
|
492
|
+
asym = scaleway.KeyManagerKey("asym",
|
493
|
+
name="asymmetric-key",
|
494
|
+
region="fr-par",
|
495
|
+
usage="asymmetric_signing",
|
496
|
+
description="Key for signing documents",
|
497
|
+
unprotected=True)
|
498
|
+
```
|
499
|
+
|
500
|
+
## Import
|
501
|
+
|
502
|
+
You can import a key using its ID and region:
|
503
|
+
|
504
|
+
```sh
|
505
|
+
$ pulumi import scaleway:index/keyManagerKey:KeyManagerKey main fr-par/11111111-2222-3333-4444-555555555555
|
506
|
+
```
|
507
|
+
|
508
|
+
:param str resource_name: The name of the resource.
|
509
|
+
:param pulumi.ResourceOptions opts: Options for the resource.
|
510
|
+
:param pulumi.Input[builtins.str] description: – A description for the key.
|
511
|
+
:param pulumi.Input[builtins.str] name: The name of the key.
|
512
|
+
:param pulumi.Input[builtins.str] origin: – The origin of the key. Valid values are:
|
513
|
+
:param pulumi.Input[builtins.str] project_id: – The ID of the project the key belongs to.
|
514
|
+
:param pulumi.Input[builtins.str] region: The region in which to create the key (e.g., `fr-par`).
|
515
|
+
:param pulumi.Input[Union['KeyManagerKeyRotationPolicyArgs', 'KeyManagerKeyRotationPolicyArgsDict']] rotation_policy: – Rotation policy for the key:
|
516
|
+
:param pulumi.Input[Sequence[pulumi.Input[builtins.str]]] tags: – A list of tags to assign to the key.
|
517
|
+
:param pulumi.Input[builtins.bool] unprotected: – If `true`, the key can be deleted. Defaults to `false` (protected).
|
518
|
+
:param pulumi.Input[builtins.str] usage: – The usage of the key. Valid values are:
|
519
|
+
"""
|
520
|
+
...
|
521
|
+
@overload
|
522
|
+
def __init__(__self__,
|
523
|
+
resource_name: str,
|
524
|
+
args: KeyManagerKeyArgs,
|
525
|
+
opts: Optional[pulumi.ResourceOptions] = None):
|
526
|
+
"""
|
527
|
+
Provides a Scaleway Key Manager Key resource.\\
|
528
|
+
This resource allows you to create and manage cryptographic keys in Scaleway Key Manager (KMS).
|
529
|
+
|
530
|
+
## Example Usage
|
531
|
+
|
532
|
+
```python
|
533
|
+
import pulumi
|
534
|
+
import pulumiverse_scaleway as scaleway
|
535
|
+
|
536
|
+
main = scaleway.KeyManagerKey("main",
|
537
|
+
name="my-kms-key",
|
538
|
+
region="fr-par",
|
539
|
+
project_id="your-project-id",
|
540
|
+
usage="symmetric_encryption",
|
541
|
+
description="Key for encrypting secrets",
|
542
|
+
tags=[
|
543
|
+
"env:prod",
|
544
|
+
"kms",
|
545
|
+
],
|
546
|
+
unprotected=True,
|
547
|
+
rotation_policy={
|
548
|
+
"rotation_period": "720h",
|
549
|
+
})
|
550
|
+
```
|
551
|
+
|
552
|
+
## Notes
|
553
|
+
|
554
|
+
- **Protection**: By default, keys are protected and cannot be deleted. To allow deletion, set `unprotected = true` when creating the key.
|
555
|
+
- **Rotation Policy**: The `rotation_policy` block allows you to set automatic rotation for your key.
|
556
|
+
- **Origin**: The `origin` argument is optional and defaults to `scaleway_kms`. Use `external` if you want to import an external key (see Scaleway documentation for details).
|
557
|
+
- **Project and Region**: If not specified, `project_id` and `region` will default to the provider configuration.
|
558
|
+
|
559
|
+
## Example: Asymmetric Key
|
560
|
+
|
561
|
+
```python
|
562
|
+
import pulumi
|
563
|
+
import pulumiverse_scaleway as scaleway
|
564
|
+
|
565
|
+
asym = scaleway.KeyManagerKey("asym",
|
566
|
+
name="asymmetric-key",
|
567
|
+
region="fr-par",
|
568
|
+
usage="asymmetric_signing",
|
569
|
+
description="Key for signing documents",
|
570
|
+
unprotected=True)
|
571
|
+
```
|
572
|
+
|
573
|
+
## Import
|
574
|
+
|
575
|
+
You can import a key using its ID and region:
|
576
|
+
|
577
|
+
```sh
|
578
|
+
$ pulumi import scaleway:index/keyManagerKey:KeyManagerKey main fr-par/11111111-2222-3333-4444-555555555555
|
579
|
+
```
|
580
|
+
|
581
|
+
:param str resource_name: The name of the resource.
|
582
|
+
:param KeyManagerKeyArgs args: The arguments to use to populate this resource's properties.
|
583
|
+
:param pulumi.ResourceOptions opts: Options for the resource.
|
584
|
+
"""
|
585
|
+
...
|
586
|
+
def __init__(__self__, resource_name: str, *args, **kwargs):
|
587
|
+
resource_args, opts = _utilities.get_resource_args_opts(KeyManagerKeyArgs, pulumi.ResourceOptions, *args, **kwargs)
|
588
|
+
if resource_args is not None:
|
589
|
+
__self__._internal_init(resource_name, opts, **resource_args.__dict__)
|
590
|
+
else:
|
591
|
+
__self__._internal_init(resource_name, *args, **kwargs)
|
592
|
+
|
593
|
+
def _internal_init(__self__,
|
594
|
+
resource_name: str,
|
595
|
+
opts: Optional[pulumi.ResourceOptions] = None,
|
596
|
+
description: Optional[pulumi.Input[builtins.str]] = None,
|
597
|
+
name: Optional[pulumi.Input[builtins.str]] = None,
|
598
|
+
origin: Optional[pulumi.Input[builtins.str]] = None,
|
599
|
+
project_id: Optional[pulumi.Input[builtins.str]] = None,
|
600
|
+
region: Optional[pulumi.Input[builtins.str]] = None,
|
601
|
+
rotation_policy: Optional[pulumi.Input[Union['KeyManagerKeyRotationPolicyArgs', 'KeyManagerKeyRotationPolicyArgsDict']]] = None,
|
602
|
+
tags: Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]] = None,
|
603
|
+
unprotected: Optional[pulumi.Input[builtins.bool]] = None,
|
604
|
+
usage: Optional[pulumi.Input[builtins.str]] = None,
|
605
|
+
__props__=None):
|
606
|
+
opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts)
|
607
|
+
if not isinstance(opts, pulumi.ResourceOptions):
|
608
|
+
raise TypeError('Expected resource options to be a ResourceOptions instance')
|
609
|
+
if opts.id is None:
|
610
|
+
if __props__ is not None:
|
611
|
+
raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource')
|
612
|
+
__props__ = KeyManagerKeyArgs.__new__(KeyManagerKeyArgs)
|
613
|
+
|
614
|
+
__props__.__dict__["description"] = description
|
615
|
+
__props__.__dict__["name"] = name
|
616
|
+
__props__.__dict__["origin"] = origin
|
617
|
+
__props__.__dict__["project_id"] = project_id
|
618
|
+
__props__.__dict__["region"] = region
|
619
|
+
__props__.__dict__["rotation_policy"] = rotation_policy
|
620
|
+
__props__.__dict__["tags"] = tags
|
621
|
+
__props__.__dict__["unprotected"] = unprotected
|
622
|
+
if usage is None and not opts.urn:
|
623
|
+
raise TypeError("Missing required property 'usage'")
|
624
|
+
__props__.__dict__["usage"] = usage
|
625
|
+
__props__.__dict__["created_at"] = None
|
626
|
+
__props__.__dict__["locked"] = None
|
627
|
+
__props__.__dict__["protected"] = None
|
628
|
+
__props__.__dict__["rotated_at"] = None
|
629
|
+
__props__.__dict__["rotation_count"] = None
|
630
|
+
__props__.__dict__["state"] = None
|
631
|
+
__props__.__dict__["updated_at"] = None
|
632
|
+
super(KeyManagerKey, __self__).__init__(
|
633
|
+
'scaleway:index/keyManagerKey:KeyManagerKey',
|
634
|
+
resource_name,
|
635
|
+
__props__,
|
636
|
+
opts)
|
637
|
+
|
638
|
+
@staticmethod
|
639
|
+
def get(resource_name: str,
|
640
|
+
id: pulumi.Input[str],
|
641
|
+
opts: Optional[pulumi.ResourceOptions] = None,
|
642
|
+
created_at: Optional[pulumi.Input[builtins.str]] = None,
|
643
|
+
description: Optional[pulumi.Input[builtins.str]] = None,
|
644
|
+
locked: Optional[pulumi.Input[builtins.bool]] = None,
|
645
|
+
name: Optional[pulumi.Input[builtins.str]] = None,
|
646
|
+
origin: Optional[pulumi.Input[builtins.str]] = None,
|
647
|
+
project_id: Optional[pulumi.Input[builtins.str]] = None,
|
648
|
+
protected: Optional[pulumi.Input[builtins.bool]] = None,
|
649
|
+
region: Optional[pulumi.Input[builtins.str]] = None,
|
650
|
+
rotated_at: Optional[pulumi.Input[builtins.str]] = None,
|
651
|
+
rotation_count: Optional[pulumi.Input[builtins.int]] = None,
|
652
|
+
rotation_policy: Optional[pulumi.Input[Union['KeyManagerKeyRotationPolicyArgs', 'KeyManagerKeyRotationPolicyArgsDict']]] = None,
|
653
|
+
state: Optional[pulumi.Input[builtins.str]] = None,
|
654
|
+
tags: Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]] = None,
|
655
|
+
unprotected: Optional[pulumi.Input[builtins.bool]] = None,
|
656
|
+
updated_at: Optional[pulumi.Input[builtins.str]] = None,
|
657
|
+
usage: Optional[pulumi.Input[builtins.str]] = None) -> 'KeyManagerKey':
|
658
|
+
"""
|
659
|
+
Get an existing KeyManagerKey resource's state with the given name, id, and optional extra
|
660
|
+
properties used to qualify the lookup.
|
661
|
+
|
662
|
+
:param str resource_name: The unique name of the resulting resource.
|
663
|
+
:param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
|
664
|
+
:param pulumi.ResourceOptions opts: Options for the resource.
|
665
|
+
:param pulumi.Input[builtins.str] created_at: The date and time when the key was created.
|
666
|
+
:param pulumi.Input[builtins.str] description: – A description for the key.
|
667
|
+
:param pulumi.Input[builtins.bool] locked: Whether the key is locked.
|
668
|
+
:param pulumi.Input[builtins.str] name: The name of the key.
|
669
|
+
:param pulumi.Input[builtins.str] origin: – The origin of the key. Valid values are:
|
670
|
+
:param pulumi.Input[builtins.str] project_id: – The ID of the project the key belongs to.
|
671
|
+
:param pulumi.Input[builtins.bool] protected: Whether the key is protected from deletion.
|
672
|
+
:param pulumi.Input[builtins.str] region: The region in which to create the key (e.g., `fr-par`).
|
673
|
+
:param pulumi.Input[builtins.str] rotated_at: The date and time when the key was last rotated.
|
674
|
+
:param pulumi.Input[builtins.int] rotation_count: The number of times the key has been rotated.
|
675
|
+
:param pulumi.Input[Union['KeyManagerKeyRotationPolicyArgs', 'KeyManagerKeyRotationPolicyArgsDict']] rotation_policy: – Rotation policy for the key:
|
676
|
+
:param pulumi.Input[builtins.str] state: The state of the key (e.g., `enabled`).
|
677
|
+
:param pulumi.Input[Sequence[pulumi.Input[builtins.str]]] tags: – A list of tags to assign to the key.
|
678
|
+
:param pulumi.Input[builtins.bool] unprotected: – If `true`, the key can be deleted. Defaults to `false` (protected).
|
679
|
+
:param pulumi.Input[builtins.str] updated_at: The date and time when the key was last updated.
|
680
|
+
:param pulumi.Input[builtins.str] usage: – The usage of the key. Valid values are:
|
681
|
+
"""
|
682
|
+
opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
|
683
|
+
|
684
|
+
__props__ = _KeyManagerKeyState.__new__(_KeyManagerKeyState)
|
685
|
+
|
686
|
+
__props__.__dict__["created_at"] = created_at
|
687
|
+
__props__.__dict__["description"] = description
|
688
|
+
__props__.__dict__["locked"] = locked
|
689
|
+
__props__.__dict__["name"] = name
|
690
|
+
__props__.__dict__["origin"] = origin
|
691
|
+
__props__.__dict__["project_id"] = project_id
|
692
|
+
__props__.__dict__["protected"] = protected
|
693
|
+
__props__.__dict__["region"] = region
|
694
|
+
__props__.__dict__["rotated_at"] = rotated_at
|
695
|
+
__props__.__dict__["rotation_count"] = rotation_count
|
696
|
+
__props__.__dict__["rotation_policy"] = rotation_policy
|
697
|
+
__props__.__dict__["state"] = state
|
698
|
+
__props__.__dict__["tags"] = tags
|
699
|
+
__props__.__dict__["unprotected"] = unprotected
|
700
|
+
__props__.__dict__["updated_at"] = updated_at
|
701
|
+
__props__.__dict__["usage"] = usage
|
702
|
+
return KeyManagerKey(resource_name, opts=opts, __props__=__props__)
|
703
|
+
|
704
|
+
@property
|
705
|
+
@pulumi.getter(name="createdAt")
|
706
|
+
def created_at(self) -> pulumi.Output[builtins.str]:
|
707
|
+
"""
|
708
|
+
The date and time when the key was created.
|
709
|
+
"""
|
710
|
+
return pulumi.get(self, "created_at")
|
711
|
+
|
712
|
+
@property
|
713
|
+
@pulumi.getter
|
714
|
+
def description(self) -> pulumi.Output[Optional[builtins.str]]:
|
715
|
+
"""
|
716
|
+
– A description for the key.
|
717
|
+
"""
|
718
|
+
return pulumi.get(self, "description")
|
719
|
+
|
720
|
+
@property
|
721
|
+
@pulumi.getter
|
722
|
+
def locked(self) -> pulumi.Output[builtins.bool]:
|
723
|
+
"""
|
724
|
+
Whether the key is locked.
|
725
|
+
"""
|
726
|
+
return pulumi.get(self, "locked")
|
727
|
+
|
728
|
+
@property
|
729
|
+
@pulumi.getter
|
730
|
+
def name(self) -> pulumi.Output[builtins.str]:
|
731
|
+
"""
|
732
|
+
The name of the key.
|
733
|
+
"""
|
734
|
+
return pulumi.get(self, "name")
|
735
|
+
|
736
|
+
@property
|
737
|
+
@pulumi.getter
|
738
|
+
def origin(self) -> pulumi.Output[Optional[builtins.str]]:
|
739
|
+
"""
|
740
|
+
– The origin of the key. Valid values are:
|
741
|
+
"""
|
742
|
+
return pulumi.get(self, "origin")
|
743
|
+
|
744
|
+
@property
|
745
|
+
@pulumi.getter(name="projectId")
|
746
|
+
def project_id(self) -> pulumi.Output[builtins.str]:
|
747
|
+
"""
|
748
|
+
– The ID of the project the key belongs to.
|
749
|
+
"""
|
750
|
+
return pulumi.get(self, "project_id")
|
751
|
+
|
752
|
+
@property
|
753
|
+
@pulumi.getter
|
754
|
+
def protected(self) -> pulumi.Output[builtins.bool]:
|
755
|
+
"""
|
756
|
+
Whether the key is protected from deletion.
|
757
|
+
"""
|
758
|
+
return pulumi.get(self, "protected")
|
759
|
+
|
760
|
+
@property
|
761
|
+
@pulumi.getter
|
762
|
+
def region(self) -> pulumi.Output[builtins.str]:
|
763
|
+
"""
|
764
|
+
The region in which to create the key (e.g., `fr-par`).
|
765
|
+
"""
|
766
|
+
return pulumi.get(self, "region")
|
767
|
+
|
768
|
+
@property
|
769
|
+
@pulumi.getter(name="rotatedAt")
|
770
|
+
def rotated_at(self) -> pulumi.Output[builtins.str]:
|
771
|
+
"""
|
772
|
+
The date and time when the key was last rotated.
|
773
|
+
"""
|
774
|
+
return pulumi.get(self, "rotated_at")
|
775
|
+
|
776
|
+
@property
|
777
|
+
@pulumi.getter(name="rotationCount")
|
778
|
+
def rotation_count(self) -> pulumi.Output[builtins.int]:
|
779
|
+
"""
|
780
|
+
The number of times the key has been rotated.
|
781
|
+
"""
|
782
|
+
return pulumi.get(self, "rotation_count")
|
783
|
+
|
784
|
+
@property
|
785
|
+
@pulumi.getter(name="rotationPolicy")
|
786
|
+
def rotation_policy(self) -> pulumi.Output[Optional['outputs.KeyManagerKeyRotationPolicy']]:
|
787
|
+
"""
|
788
|
+
– Rotation policy for the key:
|
789
|
+
"""
|
790
|
+
return pulumi.get(self, "rotation_policy")
|
791
|
+
|
792
|
+
@property
|
793
|
+
@pulumi.getter
|
794
|
+
def state(self) -> pulumi.Output[builtins.str]:
|
795
|
+
"""
|
796
|
+
The state of the key (e.g., `enabled`).
|
797
|
+
"""
|
798
|
+
return pulumi.get(self, "state")
|
799
|
+
|
800
|
+
@property
|
801
|
+
@pulumi.getter
|
802
|
+
def tags(self) -> pulumi.Output[Optional[Sequence[builtins.str]]]:
|
803
|
+
"""
|
804
|
+
– A list of tags to assign to the key.
|
805
|
+
"""
|
806
|
+
return pulumi.get(self, "tags")
|
807
|
+
|
808
|
+
@property
|
809
|
+
@pulumi.getter
|
810
|
+
def unprotected(self) -> pulumi.Output[Optional[builtins.bool]]:
|
811
|
+
"""
|
812
|
+
– If `true`, the key can be deleted. Defaults to `false` (protected).
|
813
|
+
"""
|
814
|
+
return pulumi.get(self, "unprotected")
|
815
|
+
|
816
|
+
@property
|
817
|
+
@pulumi.getter(name="updatedAt")
|
818
|
+
def updated_at(self) -> pulumi.Output[builtins.str]:
|
819
|
+
"""
|
820
|
+
The date and time when the key was last updated.
|
821
|
+
"""
|
822
|
+
return pulumi.get(self, "updated_at")
|
823
|
+
|
824
|
+
@property
|
825
|
+
@pulumi.getter
|
826
|
+
def usage(self) -> pulumi.Output[builtins.str]:
|
827
|
+
"""
|
828
|
+
– The usage of the key. Valid values are:
|
829
|
+
"""
|
830
|
+
return pulumi.get(self, "usage")
|
831
|
+
|