pulumiverse-scaleway 1.16.0a1730122081__py3-none-any.whl → 1.17.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.

Potentially problematic release.


This version of pulumiverse-scaleway might be problematic. Click here for more details.

Files changed (34) hide show
  1. pulumiverse_scaleway/__init__.py +10 -0
  2. pulumiverse_scaleway/_inputs.py +165 -60
  3. pulumiverse_scaleway/block_snapshot.py +37 -27
  4. pulumiverse_scaleway/block_volume.py +49 -43
  5. pulumiverse_scaleway/cockpit.py +39 -24
  6. pulumiverse_scaleway/cockpit_alert_manager.py +42 -38
  7. pulumiverse_scaleway/cockpit_grafana_user.py +39 -31
  8. pulumiverse_scaleway/cockpit_source.py +86 -50
  9. pulumiverse_scaleway/cockpit_token.py +45 -27
  10. pulumiverse_scaleway/database_instance.py +13 -8
  11. pulumiverse_scaleway/domain_record.py +88 -46
  12. pulumiverse_scaleway/domain_zone.py +47 -75
  13. pulumiverse_scaleway/get_block_snapshot.py +16 -12
  14. pulumiverse_scaleway/get_block_volume.py +10 -8
  15. pulumiverse_scaleway/get_cockpit.py +44 -19
  16. pulumiverse_scaleway/get_cockpit_plan.py +18 -6
  17. pulumiverse_scaleway/get_domain_record.py +40 -34
  18. pulumiverse_scaleway/get_domain_zone.py +12 -36
  19. pulumiverse_scaleway/get_mnq_sns.py +150 -0
  20. pulumiverse_scaleway/get_secret.py +77 -29
  21. pulumiverse_scaleway/get_secret_version.py +75 -38
  22. pulumiverse_scaleway/iam_policy.py +46 -0
  23. pulumiverse_scaleway/instance_server.py +56 -4
  24. pulumiverse_scaleway/loadbalancer_frontend.py +4 -4
  25. pulumiverse_scaleway/outputs.py +169 -55
  26. pulumiverse_scaleway/pulumi-plugin.json +1 -1
  27. pulumiverse_scaleway/secret.py +162 -59
  28. pulumiverse_scaleway/secret_version.py +59 -54
  29. pulumiverse_scaleway/tem_domain.py +9 -4
  30. pulumiverse_scaleway/tem_webhook.py +640 -0
  31. {pulumiverse_scaleway-1.16.0a1730122081.dist-info → pulumiverse_scaleway-1.17.0.dist-info}/METADATA +1 -1
  32. {pulumiverse_scaleway-1.16.0a1730122081.dist-info → pulumiverse_scaleway-1.17.0.dist-info}/RECORD +34 -32
  33. {pulumiverse_scaleway-1.16.0a1730122081.dist-info → pulumiverse_scaleway-1.17.0.dist-info}/WHEEL +0 -0
  34. {pulumiverse_scaleway-1.16.0a1730122081.dist-info → pulumiverse_scaleway-1.17.0.dist-info}/top_level.txt +0 -0
@@ -13,6 +13,8 @@ if sys.version_info >= (3, 11):
13
13
  else:
14
14
  from typing_extensions import NotRequired, TypedDict, TypeAlias
15
15
  from . import _utilities
16
+ from . import outputs
17
+ from ._inputs import *
16
18
 
17
19
  __all__ = ['SecretArgs', 'Secret']
18
20
 
@@ -20,33 +22,45 @@ __all__ = ['SecretArgs', 'Secret']
20
22
  class SecretArgs:
21
23
  def __init__(__self__, *,
22
24
  description: Optional[pulumi.Input[str]] = None,
25
+ ephemeral_policies: Optional[pulumi.Input[Sequence[pulumi.Input['SecretEphemeralPolicyArgs']]]] = None,
23
26
  name: Optional[pulumi.Input[str]] = None,
24
27
  path: Optional[pulumi.Input[str]] = None,
25
28
  project_id: Optional[pulumi.Input[str]] = None,
29
+ protected: Optional[pulumi.Input[bool]] = None,
26
30
  region: Optional[pulumi.Input[str]] = None,
27
- tags: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None):
31
+ tags: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
32
+ type: Optional[pulumi.Input[str]] = None):
28
33
  """
29
34
  The set of arguments for constructing a Secret resource.
30
35
  :param pulumi.Input[str] description: Description of the secret (e.g. `my-new-description`).
36
+ :param pulumi.Input[Sequence[pulumi.Input['SecretEphemeralPolicyArgs']]] ephemeral_policies: Ephemeral policy of the secret. Policy that defines whether/when a secret's versions expire. By default, the policy is applied to all the secret's versions.
31
37
  :param pulumi.Input[str] name: Name of the secret (e.g. `my-secret`).
32
38
  :param pulumi.Input[str] path: Path of the secret, defaults to `/`.
33
39
  :param pulumi.Input[str] project_id: The project ID containing is the secret.
40
+ :param pulumi.Input[bool] protected: True if secret protection is enabled on a given secret. A protected secret cannot be deleted.
34
41
  :param pulumi.Input[str] region: `region`) The region
35
42
  in which the resource exists.
36
43
  :param pulumi.Input[Sequence[pulumi.Input[str]]] tags: Tags of the secret (e.g. `["tag", "secret"]`).
44
+ :param pulumi.Input[str] type: Type of the secret. If not specified, the type is Opaque. Available values can be found in [SDK Constants](https://pkg.go.dev/github.com/scaleway/scaleway-sdk-go@master/api/secret/v1beta1#pkg-constants).
37
45
  """
38
46
  if description is not None:
39
47
  pulumi.set(__self__, "description", description)
48
+ if ephemeral_policies is not None:
49
+ pulumi.set(__self__, "ephemeral_policies", ephemeral_policies)
40
50
  if name is not None:
41
51
  pulumi.set(__self__, "name", name)
42
52
  if path is not None:
43
53
  pulumi.set(__self__, "path", path)
44
54
  if project_id is not None:
45
55
  pulumi.set(__self__, "project_id", project_id)
56
+ if protected is not None:
57
+ pulumi.set(__self__, "protected", protected)
46
58
  if region is not None:
47
59
  pulumi.set(__self__, "region", region)
48
60
  if tags is not None:
49
61
  pulumi.set(__self__, "tags", tags)
62
+ if type is not None:
63
+ pulumi.set(__self__, "type", type)
50
64
 
51
65
  @property
52
66
  @pulumi.getter
@@ -60,6 +74,18 @@ class SecretArgs:
60
74
  def description(self, value: Optional[pulumi.Input[str]]):
61
75
  pulumi.set(self, "description", value)
62
76
 
77
+ @property
78
+ @pulumi.getter(name="ephemeralPolicies")
79
+ def ephemeral_policies(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['SecretEphemeralPolicyArgs']]]]:
80
+ """
81
+ Ephemeral policy of the secret. Policy that defines whether/when a secret's versions expire. By default, the policy is applied to all the secret's versions.
82
+ """
83
+ return pulumi.get(self, "ephemeral_policies")
84
+
85
+ @ephemeral_policies.setter
86
+ def ephemeral_policies(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['SecretEphemeralPolicyArgs']]]]):
87
+ pulumi.set(self, "ephemeral_policies", value)
88
+
63
89
  @property
64
90
  @pulumi.getter
65
91
  def name(self) -> Optional[pulumi.Input[str]]:
@@ -96,6 +122,18 @@ class SecretArgs:
96
122
  def project_id(self, value: Optional[pulumi.Input[str]]):
97
123
  pulumi.set(self, "project_id", value)
98
124
 
125
+ @property
126
+ @pulumi.getter
127
+ def protected(self) -> Optional[pulumi.Input[bool]]:
128
+ """
129
+ True if secret protection is enabled on a given secret. A protected secret cannot be deleted.
130
+ """
131
+ return pulumi.get(self, "protected")
132
+
133
+ @protected.setter
134
+ def protected(self, value: Optional[pulumi.Input[bool]]):
135
+ pulumi.set(self, "protected", value)
136
+
99
137
  @property
100
138
  @pulumi.getter
101
139
  def region(self) -> Optional[pulumi.Input[str]]:
@@ -121,50 +159,74 @@ class SecretArgs:
121
159
  def tags(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
122
160
  pulumi.set(self, "tags", value)
123
161
 
162
+ @property
163
+ @pulumi.getter
164
+ def type(self) -> Optional[pulumi.Input[str]]:
165
+ """
166
+ Type of the secret. If not specified, the type is Opaque. Available values can be found in [SDK Constants](https://pkg.go.dev/github.com/scaleway/scaleway-sdk-go@master/api/secret/v1beta1#pkg-constants).
167
+ """
168
+ return pulumi.get(self, "type")
169
+
170
+ @type.setter
171
+ def type(self, value: Optional[pulumi.Input[str]]):
172
+ pulumi.set(self, "type", value)
173
+
124
174
 
125
175
  @pulumi.input_type
126
176
  class _SecretState:
127
177
  def __init__(__self__, *,
128
178
  created_at: Optional[pulumi.Input[str]] = None,
129
179
  description: Optional[pulumi.Input[str]] = None,
180
+ ephemeral_policies: Optional[pulumi.Input[Sequence[pulumi.Input['SecretEphemeralPolicyArgs']]]] = None,
130
181
  name: Optional[pulumi.Input[str]] = None,
131
182
  path: Optional[pulumi.Input[str]] = None,
132
183
  project_id: Optional[pulumi.Input[str]] = None,
184
+ protected: Optional[pulumi.Input[bool]] = None,
133
185
  region: Optional[pulumi.Input[str]] = None,
134
186
  status: Optional[pulumi.Input[str]] = None,
135
187
  tags: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
188
+ type: Optional[pulumi.Input[str]] = None,
136
189
  updated_at: Optional[pulumi.Input[str]] = None,
137
190
  version_count: Optional[pulumi.Input[int]] = None):
138
191
  """
139
192
  Input properties used for looking up and filtering Secret resources.
140
- :param pulumi.Input[str] created_at: Date and time of secret's creation (RFC 3339 format).
193
+ :param pulumi.Input[str] created_at: Date and time of the secret's creation (in RFC 3339 format).
141
194
  :param pulumi.Input[str] description: Description of the secret (e.g. `my-new-description`).
195
+ :param pulumi.Input[Sequence[pulumi.Input['SecretEphemeralPolicyArgs']]] ephemeral_policies: Ephemeral policy of the secret. Policy that defines whether/when a secret's versions expire. By default, the policy is applied to all the secret's versions.
142
196
  :param pulumi.Input[str] name: Name of the secret (e.g. `my-secret`).
143
197
  :param pulumi.Input[str] path: Path of the secret, defaults to `/`.
144
198
  :param pulumi.Input[str] project_id: The project ID containing is the secret.
199
+ :param pulumi.Input[bool] protected: True if secret protection is enabled on a given secret. A protected secret cannot be deleted.
145
200
  :param pulumi.Input[str] region: `region`) The region
146
201
  in which the resource exists.
147
- :param pulumi.Input[str] status: The status of the Secret.
202
+ :param pulumi.Input[str] status: The status of the secret.
148
203
  :param pulumi.Input[Sequence[pulumi.Input[str]]] tags: Tags of the secret (e.g. `["tag", "secret"]`).
149
- :param pulumi.Input[str] updated_at: Date and time of secret's last update (RFC 3339 format).
150
- :param pulumi.Input[int] version_count: The number of versions for this Secret.
204
+ :param pulumi.Input[str] type: Type of the secret. If not specified, the type is Opaque. Available values can be found in [SDK Constants](https://pkg.go.dev/github.com/scaleway/scaleway-sdk-go@master/api/secret/v1beta1#pkg-constants).
205
+ :param pulumi.Input[str] updated_at: Date and time of the secret's last update (in RFC 3339 format).
206
+ :param pulumi.Input[int] version_count: The amount of secret versions.
151
207
  """
152
208
  if created_at is not None:
153
209
  pulumi.set(__self__, "created_at", created_at)
154
210
  if description is not None:
155
211
  pulumi.set(__self__, "description", description)
212
+ if ephemeral_policies is not None:
213
+ pulumi.set(__self__, "ephemeral_policies", ephemeral_policies)
156
214
  if name is not None:
157
215
  pulumi.set(__self__, "name", name)
158
216
  if path is not None:
159
217
  pulumi.set(__self__, "path", path)
160
218
  if project_id is not None:
161
219
  pulumi.set(__self__, "project_id", project_id)
220
+ if protected is not None:
221
+ pulumi.set(__self__, "protected", protected)
162
222
  if region is not None:
163
223
  pulumi.set(__self__, "region", region)
164
224
  if status is not None:
165
225
  pulumi.set(__self__, "status", status)
166
226
  if tags is not None:
167
227
  pulumi.set(__self__, "tags", tags)
228
+ if type is not None:
229
+ pulumi.set(__self__, "type", type)
168
230
  if updated_at is not None:
169
231
  pulumi.set(__self__, "updated_at", updated_at)
170
232
  if version_count is not None:
@@ -174,7 +236,7 @@ class _SecretState:
174
236
  @pulumi.getter(name="createdAt")
175
237
  def created_at(self) -> Optional[pulumi.Input[str]]:
176
238
  """
177
- Date and time of secret's creation (RFC 3339 format).
239
+ Date and time of the secret's creation (in RFC 3339 format).
178
240
  """
179
241
  return pulumi.get(self, "created_at")
180
242
 
@@ -194,6 +256,18 @@ class _SecretState:
194
256
  def description(self, value: Optional[pulumi.Input[str]]):
195
257
  pulumi.set(self, "description", value)
196
258
 
259
+ @property
260
+ @pulumi.getter(name="ephemeralPolicies")
261
+ def ephemeral_policies(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['SecretEphemeralPolicyArgs']]]]:
262
+ """
263
+ Ephemeral policy of the secret. Policy that defines whether/when a secret's versions expire. By default, the policy is applied to all the secret's versions.
264
+ """
265
+ return pulumi.get(self, "ephemeral_policies")
266
+
267
+ @ephemeral_policies.setter
268
+ def ephemeral_policies(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['SecretEphemeralPolicyArgs']]]]):
269
+ pulumi.set(self, "ephemeral_policies", value)
270
+
197
271
  @property
198
272
  @pulumi.getter
199
273
  def name(self) -> Optional[pulumi.Input[str]]:
@@ -230,6 +304,18 @@ class _SecretState:
230
304
  def project_id(self, value: Optional[pulumi.Input[str]]):
231
305
  pulumi.set(self, "project_id", value)
232
306
 
307
+ @property
308
+ @pulumi.getter
309
+ def protected(self) -> Optional[pulumi.Input[bool]]:
310
+ """
311
+ True if secret protection is enabled on a given secret. A protected secret cannot be deleted.
312
+ """
313
+ return pulumi.get(self, "protected")
314
+
315
+ @protected.setter
316
+ def protected(self, value: Optional[pulumi.Input[bool]]):
317
+ pulumi.set(self, "protected", value)
318
+
233
319
  @property
234
320
  @pulumi.getter
235
321
  def region(self) -> Optional[pulumi.Input[str]]:
@@ -247,7 +333,7 @@ class _SecretState:
247
333
  @pulumi.getter
248
334
  def status(self) -> Optional[pulumi.Input[str]]:
249
335
  """
250
- The status of the Secret.
336
+ The status of the secret.
251
337
  """
252
338
  return pulumi.get(self, "status")
253
339
 
@@ -267,11 +353,23 @@ class _SecretState:
267
353
  def tags(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
268
354
  pulumi.set(self, "tags", value)
269
355
 
356
+ @property
357
+ @pulumi.getter
358
+ def type(self) -> Optional[pulumi.Input[str]]:
359
+ """
360
+ Type of the secret. If not specified, the type is Opaque. Available values can be found in [SDK Constants](https://pkg.go.dev/github.com/scaleway/scaleway-sdk-go@master/api/secret/v1beta1#pkg-constants).
361
+ """
362
+ return pulumi.get(self, "type")
363
+
364
+ @type.setter
365
+ def type(self, value: Optional[pulumi.Input[str]]):
366
+ pulumi.set(self, "type", value)
367
+
270
368
  @property
271
369
  @pulumi.getter(name="updatedAt")
272
370
  def updated_at(self) -> Optional[pulumi.Input[str]]:
273
371
  """
274
- Date and time of secret's last update (RFC 3339 format).
372
+ Date and time of the secret's last update (in RFC 3339 format).
275
373
  """
276
374
  return pulumi.get(self, "updated_at")
277
375
 
@@ -283,7 +381,7 @@ class _SecretState:
283
381
  @pulumi.getter(name="versionCount")
284
382
  def version_count(self) -> Optional[pulumi.Input[int]]:
285
383
  """
286
- The number of versions for this Secret.
384
+ The amount of secret versions.
287
385
  """
288
386
  return pulumi.get(self, "version_count")
289
387
 
@@ -298,36 +396,19 @@ class Secret(pulumi.CustomResource):
298
396
  resource_name: str,
299
397
  opts: Optional[pulumi.ResourceOptions] = None,
300
398
  description: Optional[pulumi.Input[str]] = None,
399
+ ephemeral_policies: Optional[pulumi.Input[Sequence[pulumi.Input[Union['SecretEphemeralPolicyArgs', 'SecretEphemeralPolicyArgsDict']]]]] = None,
301
400
  name: Optional[pulumi.Input[str]] = None,
302
401
  path: Optional[pulumi.Input[str]] = None,
303
402
  project_id: Optional[pulumi.Input[str]] = None,
403
+ protected: Optional[pulumi.Input[bool]] = None,
304
404
  region: Optional[pulumi.Input[str]] = None,
305
405
  tags: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
406
+ type: Optional[pulumi.Input[str]] = None,
306
407
  __props__=None):
307
408
  """
308
- Creates and manages Scaleway Secrets.
309
- For more information, see [the documentation](https://www.scaleway.com/en/developers/api/secret-manager/).
310
-
311
- ## Example Usage
312
-
313
- ### Basic
314
-
315
- ```python
316
- import pulumi
317
- import pulumiverse_scaleway as scaleway
318
-
319
- main = scaleway.Secret("main",
320
- name="foo",
321
- description="barr",
322
- tags=[
323
- "foo",
324
- "terraform",
325
- ])
326
- ```
327
-
328
409
  ## Import
329
410
 
330
- The Secret can be imported using the `{region}/{id}`, e.g.
411
+ This section explains how to import a secret using the `{region}/{id}` format.
331
412
 
332
413
  bash
333
414
 
@@ -338,12 +419,15 @@ class Secret(pulumi.CustomResource):
338
419
  :param str resource_name: The name of the resource.
339
420
  :param pulumi.ResourceOptions opts: Options for the resource.
340
421
  :param pulumi.Input[str] description: Description of the secret (e.g. `my-new-description`).
422
+ :param pulumi.Input[Sequence[pulumi.Input[Union['SecretEphemeralPolicyArgs', 'SecretEphemeralPolicyArgsDict']]]] ephemeral_policies: Ephemeral policy of the secret. Policy that defines whether/when a secret's versions expire. By default, the policy is applied to all the secret's versions.
341
423
  :param pulumi.Input[str] name: Name of the secret (e.g. `my-secret`).
342
424
  :param pulumi.Input[str] path: Path of the secret, defaults to `/`.
343
425
  :param pulumi.Input[str] project_id: The project ID containing is the secret.
426
+ :param pulumi.Input[bool] protected: True if secret protection is enabled on a given secret. A protected secret cannot be deleted.
344
427
  :param pulumi.Input[str] region: `region`) The region
345
428
  in which the resource exists.
346
429
  :param pulumi.Input[Sequence[pulumi.Input[str]]] tags: Tags of the secret (e.g. `["tag", "secret"]`).
430
+ :param pulumi.Input[str] type: Type of the secret. If not specified, the type is Opaque. Available values can be found in [SDK Constants](https://pkg.go.dev/github.com/scaleway/scaleway-sdk-go@master/api/secret/v1beta1#pkg-constants).
347
431
  """
348
432
  ...
349
433
  @overload
@@ -352,29 +436,9 @@ class Secret(pulumi.CustomResource):
352
436
  args: Optional[SecretArgs] = None,
353
437
  opts: Optional[pulumi.ResourceOptions] = None):
354
438
  """
355
- Creates and manages Scaleway Secrets.
356
- For more information, see [the documentation](https://www.scaleway.com/en/developers/api/secret-manager/).
357
-
358
- ## Example Usage
359
-
360
- ### Basic
361
-
362
- ```python
363
- import pulumi
364
- import pulumiverse_scaleway as scaleway
365
-
366
- main = scaleway.Secret("main",
367
- name="foo",
368
- description="barr",
369
- tags=[
370
- "foo",
371
- "terraform",
372
- ])
373
- ```
374
-
375
439
  ## Import
376
440
 
377
- The Secret can be imported using the `{region}/{id}`, e.g.
441
+ This section explains how to import a secret using the `{region}/{id}` format.
378
442
 
379
443
  bash
380
444
 
@@ -398,11 +462,14 @@ class Secret(pulumi.CustomResource):
398
462
  resource_name: str,
399
463
  opts: Optional[pulumi.ResourceOptions] = None,
400
464
  description: Optional[pulumi.Input[str]] = None,
465
+ ephemeral_policies: Optional[pulumi.Input[Sequence[pulumi.Input[Union['SecretEphemeralPolicyArgs', 'SecretEphemeralPolicyArgsDict']]]]] = None,
401
466
  name: Optional[pulumi.Input[str]] = None,
402
467
  path: Optional[pulumi.Input[str]] = None,
403
468
  project_id: Optional[pulumi.Input[str]] = None,
469
+ protected: Optional[pulumi.Input[bool]] = None,
404
470
  region: Optional[pulumi.Input[str]] = None,
405
471
  tags: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
472
+ type: Optional[pulumi.Input[str]] = None,
406
473
  __props__=None):
407
474
  opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts)
408
475
  if not isinstance(opts, pulumi.ResourceOptions):
@@ -413,11 +480,14 @@ class Secret(pulumi.CustomResource):
413
480
  __props__ = SecretArgs.__new__(SecretArgs)
414
481
 
415
482
  __props__.__dict__["description"] = description
483
+ __props__.__dict__["ephemeral_policies"] = ephemeral_policies
416
484
  __props__.__dict__["name"] = name
417
485
  __props__.__dict__["path"] = path
418
486
  __props__.__dict__["project_id"] = project_id
487
+ __props__.__dict__["protected"] = protected
419
488
  __props__.__dict__["region"] = region
420
489
  __props__.__dict__["tags"] = tags
490
+ __props__.__dict__["type"] = type
421
491
  __props__.__dict__["created_at"] = None
422
492
  __props__.__dict__["status"] = None
423
493
  __props__.__dict__["updated_at"] = None
@@ -434,12 +504,15 @@ class Secret(pulumi.CustomResource):
434
504
  opts: Optional[pulumi.ResourceOptions] = None,
435
505
  created_at: Optional[pulumi.Input[str]] = None,
436
506
  description: Optional[pulumi.Input[str]] = None,
507
+ ephemeral_policies: Optional[pulumi.Input[Sequence[pulumi.Input[Union['SecretEphemeralPolicyArgs', 'SecretEphemeralPolicyArgsDict']]]]] = None,
437
508
  name: Optional[pulumi.Input[str]] = None,
438
509
  path: Optional[pulumi.Input[str]] = None,
439
510
  project_id: Optional[pulumi.Input[str]] = None,
511
+ protected: Optional[pulumi.Input[bool]] = None,
440
512
  region: Optional[pulumi.Input[str]] = None,
441
513
  status: Optional[pulumi.Input[str]] = None,
442
514
  tags: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
515
+ type: Optional[pulumi.Input[str]] = None,
443
516
  updated_at: Optional[pulumi.Input[str]] = None,
444
517
  version_count: Optional[pulumi.Input[int]] = None) -> 'Secret':
445
518
  """
@@ -449,17 +522,20 @@ class Secret(pulumi.CustomResource):
449
522
  :param str resource_name: The unique name of the resulting resource.
450
523
  :param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
451
524
  :param pulumi.ResourceOptions opts: Options for the resource.
452
- :param pulumi.Input[str] created_at: Date and time of secret's creation (RFC 3339 format).
525
+ :param pulumi.Input[str] created_at: Date and time of the secret's creation (in RFC 3339 format).
453
526
  :param pulumi.Input[str] description: Description of the secret (e.g. `my-new-description`).
527
+ :param pulumi.Input[Sequence[pulumi.Input[Union['SecretEphemeralPolicyArgs', 'SecretEphemeralPolicyArgsDict']]]] ephemeral_policies: Ephemeral policy of the secret. Policy that defines whether/when a secret's versions expire. By default, the policy is applied to all the secret's versions.
454
528
  :param pulumi.Input[str] name: Name of the secret (e.g. `my-secret`).
455
529
  :param pulumi.Input[str] path: Path of the secret, defaults to `/`.
456
530
  :param pulumi.Input[str] project_id: The project ID containing is the secret.
531
+ :param pulumi.Input[bool] protected: True if secret protection is enabled on a given secret. A protected secret cannot be deleted.
457
532
  :param pulumi.Input[str] region: `region`) The region
458
533
  in which the resource exists.
459
- :param pulumi.Input[str] status: The status of the Secret.
534
+ :param pulumi.Input[str] status: The status of the secret.
460
535
  :param pulumi.Input[Sequence[pulumi.Input[str]]] tags: Tags of the secret (e.g. `["tag", "secret"]`).
461
- :param pulumi.Input[str] updated_at: Date and time of secret's last update (RFC 3339 format).
462
- :param pulumi.Input[int] version_count: The number of versions for this Secret.
536
+ :param pulumi.Input[str] type: Type of the secret. If not specified, the type is Opaque. Available values can be found in [SDK Constants](https://pkg.go.dev/github.com/scaleway/scaleway-sdk-go@master/api/secret/v1beta1#pkg-constants).
537
+ :param pulumi.Input[str] updated_at: Date and time of the secret's last update (in RFC 3339 format).
538
+ :param pulumi.Input[int] version_count: The amount of secret versions.
463
539
  """
464
540
  opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
465
541
 
@@ -467,12 +543,15 @@ class Secret(pulumi.CustomResource):
467
543
 
468
544
  __props__.__dict__["created_at"] = created_at
469
545
  __props__.__dict__["description"] = description
546
+ __props__.__dict__["ephemeral_policies"] = ephemeral_policies
470
547
  __props__.__dict__["name"] = name
471
548
  __props__.__dict__["path"] = path
472
549
  __props__.__dict__["project_id"] = project_id
550
+ __props__.__dict__["protected"] = protected
473
551
  __props__.__dict__["region"] = region
474
552
  __props__.__dict__["status"] = status
475
553
  __props__.__dict__["tags"] = tags
554
+ __props__.__dict__["type"] = type
476
555
  __props__.__dict__["updated_at"] = updated_at
477
556
  __props__.__dict__["version_count"] = version_count
478
557
  return Secret(resource_name, opts=opts, __props__=__props__)
@@ -481,7 +560,7 @@ class Secret(pulumi.CustomResource):
481
560
  @pulumi.getter(name="createdAt")
482
561
  def created_at(self) -> pulumi.Output[str]:
483
562
  """
484
- Date and time of secret's creation (RFC 3339 format).
563
+ Date and time of the secret's creation (in RFC 3339 format).
485
564
  """
486
565
  return pulumi.get(self, "created_at")
487
566
 
@@ -493,6 +572,14 @@ class Secret(pulumi.CustomResource):
493
572
  """
494
573
  return pulumi.get(self, "description")
495
574
 
575
+ @property
576
+ @pulumi.getter(name="ephemeralPolicies")
577
+ def ephemeral_policies(self) -> pulumi.Output[Optional[Sequence['outputs.SecretEphemeralPolicy']]]:
578
+ """
579
+ Ephemeral policy of the secret. Policy that defines whether/when a secret's versions expire. By default, the policy is applied to all the secret's versions.
580
+ """
581
+ return pulumi.get(self, "ephemeral_policies")
582
+
496
583
  @property
497
584
  @pulumi.getter
498
585
  def name(self) -> pulumi.Output[str]:
@@ -517,6 +604,14 @@ class Secret(pulumi.CustomResource):
517
604
  """
518
605
  return pulumi.get(self, "project_id")
519
606
 
607
+ @property
608
+ @pulumi.getter
609
+ def protected(self) -> pulumi.Output[Optional[bool]]:
610
+ """
611
+ True if secret protection is enabled on a given secret. A protected secret cannot be deleted.
612
+ """
613
+ return pulumi.get(self, "protected")
614
+
520
615
  @property
521
616
  @pulumi.getter
522
617
  def region(self) -> pulumi.Output[str]:
@@ -530,7 +625,7 @@ class Secret(pulumi.CustomResource):
530
625
  @pulumi.getter
531
626
  def status(self) -> pulumi.Output[str]:
532
627
  """
533
- The status of the Secret.
628
+ The status of the secret.
534
629
  """
535
630
  return pulumi.get(self, "status")
536
631
 
@@ -542,11 +637,19 @@ class Secret(pulumi.CustomResource):
542
637
  """
543
638
  return pulumi.get(self, "tags")
544
639
 
640
+ @property
641
+ @pulumi.getter
642
+ def type(self) -> pulumi.Output[Optional[str]]:
643
+ """
644
+ Type of the secret. If not specified, the type is Opaque. Available values can be found in [SDK Constants](https://pkg.go.dev/github.com/scaleway/scaleway-sdk-go@master/api/secret/v1beta1#pkg-constants).
645
+ """
646
+ return pulumi.get(self, "type")
647
+
545
648
  @property
546
649
  @pulumi.getter(name="updatedAt")
547
650
  def updated_at(self) -> pulumi.Output[str]:
548
651
  """
549
- Date and time of secret's last update (RFC 3339 format).
652
+ Date and time of the secret's last update (in RFC 3339 format).
550
653
  """
551
654
  return pulumi.get(self, "updated_at")
552
655
 
@@ -554,7 +657,7 @@ class Secret(pulumi.CustomResource):
554
657
  @pulumi.getter(name="versionCount")
555
658
  def version_count(self) -> pulumi.Output[int]:
556
659
  """
557
- The number of versions for this Secret.
660
+ The amount of secret versions.
558
661
  """
559
662
  return pulumi.get(self, "version_count")
560
663