pulumiverse-scaleway 1.23.0a1739624899__py3-none-any.whl → 1.23.0a1739865387__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.
Files changed (78) hide show
  1. pulumiverse_scaleway/__init__.py +9 -0
  2. pulumiverse_scaleway/_inputs.py +323 -9
  3. pulumiverse_scaleway/_utilities.py +8 -4
  4. pulumiverse_scaleway/account_ssh_key.py +2 -2
  5. pulumiverse_scaleway/apple_silicon_server.py +124 -0
  6. pulumiverse_scaleway/block_snapshot.py +2 -2
  7. pulumiverse_scaleway/block_volume.py +58 -11
  8. pulumiverse_scaleway/cockpit_source.py +7 -7
  9. pulumiverse_scaleway/container.py +236 -23
  10. pulumiverse_scaleway/container_domain.py +2 -2
  11. pulumiverse_scaleway/database_instance.py +74 -21
  12. pulumiverse_scaleway/get_account_project.py +2 -2
  13. pulumiverse_scaleway/get_account_ssh_key.py +2 -2
  14. pulumiverse_scaleway/get_block_snapshot.py +2 -2
  15. pulumiverse_scaleway/get_block_volume.py +14 -3
  16. pulumiverse_scaleway/get_container.py +30 -4
  17. pulumiverse_scaleway/get_database_instance.py +12 -1
  18. pulumiverse_scaleway/get_instance_server.py +1 -15
  19. pulumiverse_scaleway/get_instance_volume.py +12 -1
  20. pulumiverse_scaleway/get_ipam_ip.py +2 -2
  21. pulumiverse_scaleway/get_ipam_ips.py +2 -2
  22. pulumiverse_scaleway/get_lb_acls.py +2 -2
  23. pulumiverse_scaleway/get_lb_backend.py +2 -2
  24. pulumiverse_scaleway/get_lb_backends.py +2 -2
  25. pulumiverse_scaleway/get_lb_frontend.py +2 -2
  26. pulumiverse_scaleway/get_lb_frontends.py +2 -2
  27. pulumiverse_scaleway/get_lb_ips.py +2 -2
  28. pulumiverse_scaleway/get_lb_route.py +2 -2
  29. pulumiverse_scaleway/get_lb_routes.py +2 -2
  30. pulumiverse_scaleway/get_lbs.py +2 -2
  31. pulumiverse_scaleway/get_loadbalancer.py +2 -2
  32. pulumiverse_scaleway/get_loadbalancer_certificate.py +2 -2
  33. pulumiverse_scaleway/get_loadbalancer_ip.py +2 -2
  34. pulumiverse_scaleway/get_object_bucket.py +2 -2
  35. pulumiverse_scaleway/get_object_bucket_policy.py +2 -2
  36. pulumiverse_scaleway/iam_policy.py +2 -2
  37. pulumiverse_scaleway/instance_ip.py +7 -21
  38. pulumiverse_scaleway/instance_server.py +4 -74
  39. pulumiverse_scaleway/instance_volume.py +47 -0
  40. pulumiverse_scaleway/iot_route.py +21 -21
  41. pulumiverse_scaleway/ipam_ip.py +2 -2
  42. pulumiverse_scaleway/ipam_ip_reverse_dns.py +2 -2
  43. pulumiverse_scaleway/loadbalancer.py +2 -2
  44. pulumiverse_scaleway/loadbalancer_acl.py +2 -2
  45. pulumiverse_scaleway/loadbalancer_backend.py +2 -2
  46. pulumiverse_scaleway/loadbalancer_frontend.py +2 -2
  47. pulumiverse_scaleway/loadbalancer_ip.py +2 -2
  48. pulumiverse_scaleway/loadbalancer_route.py +2 -2
  49. pulumiverse_scaleway/mnq_nats_account.py +2 -2
  50. pulumiverse_scaleway/mnq_nats_credentials.py +2 -2
  51. pulumiverse_scaleway/mnq_sns.py +2 -2
  52. pulumiverse_scaleway/mnq_sns_credentials.py +2 -2
  53. pulumiverse_scaleway/mnq_sns_topic.py +2 -2
  54. pulumiverse_scaleway/mnq_sns_topic_subscription.py +2 -2
  55. pulumiverse_scaleway/mnq_sqs.py +2 -2
  56. pulumiverse_scaleway/mnq_sqs_credentials.py +2 -2
  57. pulumiverse_scaleway/mnq_sqs_queue.py +2 -2
  58. pulumiverse_scaleway/mongo_db_instance.py +2 -2
  59. pulumiverse_scaleway/mongo_db_snapshot.py +2 -2
  60. pulumiverse_scaleway/object_bucket.py +11 -11
  61. pulumiverse_scaleway/object_bucket_acl.py +2 -2
  62. pulumiverse_scaleway/object_bucket_lock_configuration.py +4 -4
  63. pulumiverse_scaleway/object_bucket_policy.py +6 -6
  64. pulumiverse_scaleway/object_bucket_website_configuration.py +4 -4
  65. pulumiverse_scaleway/object_item.py +11 -11
  66. pulumiverse_scaleway/outputs.py +351 -6
  67. pulumiverse_scaleway/pulumi-plugin.json +1 -1
  68. pulumiverse_scaleway/rdb_snapshot.py +608 -0
  69. pulumiverse_scaleway/sdb_database.py +2 -2
  70. pulumiverse_scaleway/secret_version.py +2 -2
  71. pulumiverse_scaleway/vpc.py +2 -2
  72. pulumiverse_scaleway/vpc_public_gateway_dhcp.py +14 -0
  73. pulumiverse_scaleway/vpc_public_gateway_dhcp_reservation.py +2 -2
  74. pulumiverse_scaleway/vpc_route.py +2 -2
  75. {pulumiverse_scaleway-1.23.0a1739624899.dist-info → pulumiverse_scaleway-1.23.0a1739865387.dist-info}/METADATA +1 -1
  76. {pulumiverse_scaleway-1.23.0a1739624899.dist-info → pulumiverse_scaleway-1.23.0a1739865387.dist-info}/RECORD +78 -77
  77. {pulumiverse_scaleway-1.23.0a1739624899.dist-info → pulumiverse_scaleway-1.23.0a1739865387.dist-info}/WHEEL +0 -0
  78. {pulumiverse_scaleway-1.23.0a1739624899.dist-info → pulumiverse_scaleway-1.23.0a1739865387.dist-info}/top_level.txt +0 -0
@@ -178,6 +178,7 @@ from .object_bucket_policy import *
178
178
  from .object_bucket_website_configuration import *
179
179
  from .object_item import *
180
180
  from .provider import *
181
+ from .rdb_snapshot import *
181
182
  from .redis_cluster import *
182
183
  from .registry_namespace import *
183
184
  from .sdb_database import *
@@ -898,6 +899,14 @@ _utilities.register(
898
899
  "scaleway:index/objectItem:ObjectItem": "ObjectItem"
899
900
  }
900
901
  },
902
+ {
903
+ "pkg": "scaleway",
904
+ "mod": "index/rdbSnapshot",
905
+ "fqn": "pulumiverse_scaleway",
906
+ "classes": {
907
+ "scaleway:index/rdbSnapshot:RdbSnapshot": "RdbSnapshot"
908
+ }
909
+ },
901
910
  {
902
911
  "pkg": "scaleway",
903
912
  "mod": "index/redisCluster",
@@ -15,6 +15,8 @@ else:
15
15
  from . import _utilities
16
16
 
17
17
  __all__ = [
18
+ 'AppleSiliconServerPrivateNetworkArgs',
19
+ 'AppleSiliconServerPrivateNetworkArgsDict',
18
20
  'BaremetalServerIpArgs',
19
21
  'BaremetalServerIpArgsDict',
20
22
  'BaremetalServerIpv4Args',
@@ -33,6 +35,12 @@ __all__ = [
33
35
  'CockpitPushUrlArgsDict',
34
36
  'CockpitTokenScopesArgs',
35
37
  'CockpitTokenScopesArgsDict',
38
+ 'ContainerHealthCheckArgs',
39
+ 'ContainerHealthCheckArgsDict',
40
+ 'ContainerHealthCheckHttpArgs',
41
+ 'ContainerHealthCheckHttpArgsDict',
42
+ 'ContainerScalingOptionArgs',
43
+ 'ContainerScalingOptionArgsDict',
36
44
  'ContainerTriggerNatsArgs',
37
45
  'ContainerTriggerNatsArgsDict',
38
46
  'ContainerTriggerSqsArgs',
@@ -211,6 +219,137 @@ __all__ = [
211
219
 
212
220
  MYPY = False
213
221
 
222
+ if not MYPY:
223
+ class AppleSiliconServerPrivateNetworkArgsDict(TypedDict):
224
+ id: pulumi.Input[str]
225
+ """
226
+ The ID of the server.
227
+ """
228
+ created_at: NotRequired[pulumi.Input[str]]
229
+ """
230
+ The date and time of the creation of the Apple Silicon server.
231
+ """
232
+ ipam_ip_ids: NotRequired[pulumi.Input[Sequence[pulumi.Input[str]]]]
233
+ """
234
+ List of IPAM IP IDs to attach to the server
235
+ """
236
+ status: NotRequired[pulumi.Input[str]]
237
+ """
238
+ The private network status
239
+ """
240
+ updated_at: NotRequired[pulumi.Input[str]]
241
+ """
242
+ The date and time of the last update of the Apple Silicon server.
243
+ """
244
+ vlan: NotRequired[pulumi.Input[int]]
245
+ """
246
+ The VLAN ID associated to the private network
247
+ """
248
+ elif False:
249
+ AppleSiliconServerPrivateNetworkArgsDict: TypeAlias = Mapping[str, Any]
250
+
251
+ @pulumi.input_type
252
+ class AppleSiliconServerPrivateNetworkArgs:
253
+ def __init__(__self__, *,
254
+ id: pulumi.Input[str],
255
+ created_at: Optional[pulumi.Input[str]] = None,
256
+ ipam_ip_ids: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
257
+ status: Optional[pulumi.Input[str]] = None,
258
+ updated_at: Optional[pulumi.Input[str]] = None,
259
+ vlan: Optional[pulumi.Input[int]] = None):
260
+ """
261
+ :param pulumi.Input[str] id: The ID of the server.
262
+ :param pulumi.Input[str] created_at: The date and time of the creation of the Apple Silicon server.
263
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] ipam_ip_ids: List of IPAM IP IDs to attach to the server
264
+ :param pulumi.Input[str] status: The private network status
265
+ :param pulumi.Input[str] updated_at: The date and time of the last update of the Apple Silicon server.
266
+ :param pulumi.Input[int] vlan: The VLAN ID associated to the private network
267
+ """
268
+ pulumi.set(__self__, "id", id)
269
+ if created_at is not None:
270
+ pulumi.set(__self__, "created_at", created_at)
271
+ if ipam_ip_ids is not None:
272
+ pulumi.set(__self__, "ipam_ip_ids", ipam_ip_ids)
273
+ if status is not None:
274
+ pulumi.set(__self__, "status", status)
275
+ if updated_at is not None:
276
+ pulumi.set(__self__, "updated_at", updated_at)
277
+ if vlan is not None:
278
+ pulumi.set(__self__, "vlan", vlan)
279
+
280
+ @property
281
+ @pulumi.getter
282
+ def id(self) -> pulumi.Input[str]:
283
+ """
284
+ The ID of the server.
285
+ """
286
+ return pulumi.get(self, "id")
287
+
288
+ @id.setter
289
+ def id(self, value: pulumi.Input[str]):
290
+ pulumi.set(self, "id", value)
291
+
292
+ @property
293
+ @pulumi.getter(name="createdAt")
294
+ def created_at(self) -> Optional[pulumi.Input[str]]:
295
+ """
296
+ The date and time of the creation of the Apple Silicon server.
297
+ """
298
+ return pulumi.get(self, "created_at")
299
+
300
+ @created_at.setter
301
+ def created_at(self, value: Optional[pulumi.Input[str]]):
302
+ pulumi.set(self, "created_at", value)
303
+
304
+ @property
305
+ @pulumi.getter(name="ipamIpIds")
306
+ def ipam_ip_ids(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
307
+ """
308
+ List of IPAM IP IDs to attach to the server
309
+ """
310
+ return pulumi.get(self, "ipam_ip_ids")
311
+
312
+ @ipam_ip_ids.setter
313
+ def ipam_ip_ids(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
314
+ pulumi.set(self, "ipam_ip_ids", value)
315
+
316
+ @property
317
+ @pulumi.getter
318
+ def status(self) -> Optional[pulumi.Input[str]]:
319
+ """
320
+ The private network status
321
+ """
322
+ return pulumi.get(self, "status")
323
+
324
+ @status.setter
325
+ def status(self, value: Optional[pulumi.Input[str]]):
326
+ pulumi.set(self, "status", value)
327
+
328
+ @property
329
+ @pulumi.getter(name="updatedAt")
330
+ def updated_at(self) -> Optional[pulumi.Input[str]]:
331
+ """
332
+ The date and time of the last update of the Apple Silicon server.
333
+ """
334
+ return pulumi.get(self, "updated_at")
335
+
336
+ @updated_at.setter
337
+ def updated_at(self, value: Optional[pulumi.Input[str]]):
338
+ pulumi.set(self, "updated_at", value)
339
+
340
+ @property
341
+ @pulumi.getter
342
+ def vlan(self) -> Optional[pulumi.Input[int]]:
343
+ """
344
+ The VLAN ID associated to the private network
345
+ """
346
+ return pulumi.get(self, "vlan")
347
+
348
+ @vlan.setter
349
+ def vlan(self, value: Optional[pulumi.Input[int]]):
350
+ pulumi.set(self, "vlan", value)
351
+
352
+
214
353
  if not MYPY:
215
354
  class BaremetalServerIpArgsDict(TypedDict):
216
355
  address: NotRequired[pulumi.Input[str]]
@@ -1077,6 +1216,178 @@ class CockpitTokenScopesArgs:
1077
1216
  pulumi.set(self, "write_traces", value)
1078
1217
 
1079
1218
 
1219
+ if not MYPY:
1220
+ class ContainerHealthCheckArgsDict(TypedDict):
1221
+ failure_threshold: pulumi.Input[int]
1222
+ """
1223
+ Number of consecutive health check failures before considering the container unhealthy.
1224
+ """
1225
+ https: pulumi.Input[Sequence[pulumi.Input['ContainerHealthCheckHttpArgsDict']]]
1226
+ """
1227
+ HTTP health check configuration.
1228
+ """
1229
+ interval: pulumi.Input[str]
1230
+ """
1231
+ Period between health checks.
1232
+ """
1233
+ elif False:
1234
+ ContainerHealthCheckArgsDict: TypeAlias = Mapping[str, Any]
1235
+
1236
+ @pulumi.input_type
1237
+ class ContainerHealthCheckArgs:
1238
+ def __init__(__self__, *,
1239
+ failure_threshold: pulumi.Input[int],
1240
+ https: pulumi.Input[Sequence[pulumi.Input['ContainerHealthCheckHttpArgs']]],
1241
+ interval: pulumi.Input[str]):
1242
+ """
1243
+ :param pulumi.Input[int] failure_threshold: Number of consecutive health check failures before considering the container unhealthy.
1244
+ :param pulumi.Input[Sequence[pulumi.Input['ContainerHealthCheckHttpArgs']]] https: HTTP health check configuration.
1245
+ :param pulumi.Input[str] interval: Period between health checks.
1246
+ """
1247
+ pulumi.set(__self__, "failure_threshold", failure_threshold)
1248
+ pulumi.set(__self__, "https", https)
1249
+ pulumi.set(__self__, "interval", interval)
1250
+
1251
+ @property
1252
+ @pulumi.getter(name="failureThreshold")
1253
+ def failure_threshold(self) -> pulumi.Input[int]:
1254
+ """
1255
+ Number of consecutive health check failures before considering the container unhealthy.
1256
+ """
1257
+ return pulumi.get(self, "failure_threshold")
1258
+
1259
+ @failure_threshold.setter
1260
+ def failure_threshold(self, value: pulumi.Input[int]):
1261
+ pulumi.set(self, "failure_threshold", value)
1262
+
1263
+ @property
1264
+ @pulumi.getter
1265
+ def https(self) -> pulumi.Input[Sequence[pulumi.Input['ContainerHealthCheckHttpArgs']]]:
1266
+ """
1267
+ HTTP health check configuration.
1268
+ """
1269
+ return pulumi.get(self, "https")
1270
+
1271
+ @https.setter
1272
+ def https(self, value: pulumi.Input[Sequence[pulumi.Input['ContainerHealthCheckHttpArgs']]]):
1273
+ pulumi.set(self, "https", value)
1274
+
1275
+ @property
1276
+ @pulumi.getter
1277
+ def interval(self) -> pulumi.Input[str]:
1278
+ """
1279
+ Period between health checks.
1280
+ """
1281
+ return pulumi.get(self, "interval")
1282
+
1283
+ @interval.setter
1284
+ def interval(self, value: pulumi.Input[str]):
1285
+ pulumi.set(self, "interval", value)
1286
+
1287
+
1288
+ if not MYPY:
1289
+ class ContainerHealthCheckHttpArgsDict(TypedDict):
1290
+ path: pulumi.Input[str]
1291
+ """
1292
+ Path to use for the HTTP health check.
1293
+ """
1294
+ elif False:
1295
+ ContainerHealthCheckHttpArgsDict: TypeAlias = Mapping[str, Any]
1296
+
1297
+ @pulumi.input_type
1298
+ class ContainerHealthCheckHttpArgs:
1299
+ def __init__(__self__, *,
1300
+ path: pulumi.Input[str]):
1301
+ """
1302
+ :param pulumi.Input[str] path: Path to use for the HTTP health check.
1303
+ """
1304
+ pulumi.set(__self__, "path", path)
1305
+
1306
+ @property
1307
+ @pulumi.getter
1308
+ def path(self) -> pulumi.Input[str]:
1309
+ """
1310
+ Path to use for the HTTP health check.
1311
+ """
1312
+ return pulumi.get(self, "path")
1313
+
1314
+ @path.setter
1315
+ def path(self, value: pulumi.Input[str]):
1316
+ pulumi.set(self, "path", value)
1317
+
1318
+
1319
+ if not MYPY:
1320
+ class ContainerScalingOptionArgsDict(TypedDict):
1321
+ concurrent_requests_threshold: NotRequired[pulumi.Input[int]]
1322
+ """
1323
+ Scale depending on the number of concurrent requests being processed per container instance.
1324
+ """
1325
+ cpu_usage_threshold: NotRequired[pulumi.Input[int]]
1326
+ """
1327
+ Scale depending on the CPU usage of a container instance.
1328
+ """
1329
+ memory_usage_threshold: NotRequired[pulumi.Input[int]]
1330
+ """
1331
+ Scale depending on the memory usage of a container instance.
1332
+ """
1333
+ elif False:
1334
+ ContainerScalingOptionArgsDict: TypeAlias = Mapping[str, Any]
1335
+
1336
+ @pulumi.input_type
1337
+ class ContainerScalingOptionArgs:
1338
+ def __init__(__self__, *,
1339
+ concurrent_requests_threshold: Optional[pulumi.Input[int]] = None,
1340
+ cpu_usage_threshold: Optional[pulumi.Input[int]] = None,
1341
+ memory_usage_threshold: Optional[pulumi.Input[int]] = None):
1342
+ """
1343
+ :param pulumi.Input[int] concurrent_requests_threshold: Scale depending on the number of concurrent requests being processed per container instance.
1344
+ :param pulumi.Input[int] cpu_usage_threshold: Scale depending on the CPU usage of a container instance.
1345
+ :param pulumi.Input[int] memory_usage_threshold: Scale depending on the memory usage of a container instance.
1346
+ """
1347
+ if concurrent_requests_threshold is not None:
1348
+ pulumi.set(__self__, "concurrent_requests_threshold", concurrent_requests_threshold)
1349
+ if cpu_usage_threshold is not None:
1350
+ pulumi.set(__self__, "cpu_usage_threshold", cpu_usage_threshold)
1351
+ if memory_usage_threshold is not None:
1352
+ pulumi.set(__self__, "memory_usage_threshold", memory_usage_threshold)
1353
+
1354
+ @property
1355
+ @pulumi.getter(name="concurrentRequestsThreshold")
1356
+ def concurrent_requests_threshold(self) -> Optional[pulumi.Input[int]]:
1357
+ """
1358
+ Scale depending on the number of concurrent requests being processed per container instance.
1359
+ """
1360
+ return pulumi.get(self, "concurrent_requests_threshold")
1361
+
1362
+ @concurrent_requests_threshold.setter
1363
+ def concurrent_requests_threshold(self, value: Optional[pulumi.Input[int]]):
1364
+ pulumi.set(self, "concurrent_requests_threshold", value)
1365
+
1366
+ @property
1367
+ @pulumi.getter(name="cpuUsageThreshold")
1368
+ def cpu_usage_threshold(self) -> Optional[pulumi.Input[int]]:
1369
+ """
1370
+ Scale depending on the CPU usage of a container instance.
1371
+ """
1372
+ return pulumi.get(self, "cpu_usage_threshold")
1373
+
1374
+ @cpu_usage_threshold.setter
1375
+ def cpu_usage_threshold(self, value: Optional[pulumi.Input[int]]):
1376
+ pulumi.set(self, "cpu_usage_threshold", value)
1377
+
1378
+ @property
1379
+ @pulumi.getter(name="memoryUsageThreshold")
1380
+ def memory_usage_threshold(self) -> Optional[pulumi.Input[int]]:
1381
+ """
1382
+ Scale depending on the memory usage of a container instance.
1383
+ """
1384
+ return pulumi.get(self, "memory_usage_threshold")
1385
+
1386
+ @memory_usage_threshold.setter
1387
+ def memory_usage_threshold(self, value: Optional[pulumi.Input[int]]):
1388
+ pulumi.set(self, "memory_usage_threshold", value)
1389
+
1390
+
1080
1391
  if not MYPY:
1081
1392
  class ContainerTriggerNatsArgsDict(TypedDict):
1082
1393
  subject: pulumi.Input[str]
@@ -4470,7 +4781,7 @@ if not MYPY:
4470
4781
  """
4471
4782
  strategy: pulumi.Input[str]
4472
4783
  """
4473
- How the S3 route's objects will be created (e.g. `per_topic`). See [documentation](https://www.scaleway.com/en/docs/scaleway-iothub-route/#-Messages-Store-Strategies) for behaviour details.
4784
+ How the S3 route's objects will be created (e.g. `per_topic`). See [documentation](https://www.scaleway.com/en/docs/iot-hub/how-to/create-route/) for behaviour details.
4474
4785
  """
4475
4786
  object_prefix: NotRequired[pulumi.Input[str]]
4476
4787
  """
@@ -4489,7 +4800,7 @@ class IotRouteS3Args:
4489
4800
  """
4490
4801
  :param pulumi.Input[str] bucket_name: The name of the S3 route's destination bucket (e.g. `my-object-storage`).
4491
4802
  :param pulumi.Input[str] bucket_region: The region of the S3 route's destination bucket (e.g. `fr-par`).
4492
- :param pulumi.Input[str] strategy: How the S3 route's objects will be created (e.g. `per_topic`). See [documentation](https://www.scaleway.com/en/docs/scaleway-iothub-route/#-Messages-Store-Strategies) for behaviour details.
4803
+ :param pulumi.Input[str] strategy: How the S3 route's objects will be created (e.g. `per_topic`). See [documentation](https://www.scaleway.com/en/docs/iot-hub/how-to/create-route/) for behaviour details.
4493
4804
  :param pulumi.Input[str] object_prefix: The string to prefix object names with (e.g. `mykeyprefix-`).
4494
4805
  """
4495
4806
  pulumi.set(__self__, "bucket_name", bucket_name)
@@ -4526,7 +4837,7 @@ class IotRouteS3Args:
4526
4837
  @pulumi.getter
4527
4838
  def strategy(self) -> pulumi.Input[str]:
4528
4839
  """
4529
- How the S3 route's objects will be created (e.g. `per_topic`). See [documentation](https://www.scaleway.com/en/docs/scaleway-iothub-route/#-Messages-Store-Strategies) for behaviour details.
4840
+ How the S3 route's objects will be created (e.g. `per_topic`). See [documentation](https://www.scaleway.com/en/docs/iot-hub/how-to/create-route/) for behaviour details.
4530
4841
  """
4531
4842
  return pulumi.get(self, "strategy")
4532
4843
 
@@ -7328,7 +7639,7 @@ if not MYPY:
7328
7639
  class ObjectBucketLifecycleRuleTransitionArgsDict(TypedDict):
7329
7640
  storage_class: pulumi.Input[str]
7330
7641
  """
7331
- Specifies the Scaleway [storage class](https://www.scaleway.com/en/docs/storage/object/concepts/#storage-class) `STANDARD`, `GLACIER`, `ONEZONE_IA` to which you want the object to transition.
7642
+ Specifies the Scaleway [storage class](https://www.scaleway.com/en/docs/object-storage/concepts/#storage-class) `STANDARD`, `GLACIER`, `ONEZONE_IA` to which you want the object to transition.
7332
7643
 
7333
7644
 
7334
7645
  > **Important:** If versioning is enabled, this rule only deletes the current version of an object.
@@ -7351,7 +7662,7 @@ class ObjectBucketLifecycleRuleTransitionArgs:
7351
7662
  storage_class: pulumi.Input[str],
7352
7663
  days: Optional[pulumi.Input[int]] = None):
7353
7664
  """
7354
- :param pulumi.Input[str] storage_class: Specifies the Scaleway [storage class](https://www.scaleway.com/en/docs/storage/object/concepts/#storage-class) `STANDARD`, `GLACIER`, `ONEZONE_IA` to which you want the object to transition.
7665
+ :param pulumi.Input[str] storage_class: Specifies the Scaleway [storage class](https://www.scaleway.com/en/docs/object-storage/concepts/#storage-class) `STANDARD`, `GLACIER`, `ONEZONE_IA` to which you want the object to transition.
7355
7666
 
7356
7667
 
7357
7668
  > **Important:** If versioning is enabled, this rule only deletes the current version of an object.
@@ -7370,7 +7681,7 @@ class ObjectBucketLifecycleRuleTransitionArgs:
7370
7681
  @pulumi.getter(name="storageClass")
7371
7682
  def storage_class(self) -> pulumi.Input[str]:
7372
7683
  """
7373
- Specifies the Scaleway [storage class](https://www.scaleway.com/en/docs/storage/object/concepts/#storage-class) `STANDARD`, `GLACIER`, `ONEZONE_IA` to which you want the object to transition.
7684
+ Specifies the Scaleway [storage class](https://www.scaleway.com/en/docs/object-storage/concepts/#storage-class) `STANDARD`, `GLACIER`, `ONEZONE_IA` to which you want the object to transition.
7374
7685
 
7375
7686
 
7376
7687
  > **Important:** If versioning is enabled, this rule only deletes the current version of an object.
@@ -7434,7 +7745,7 @@ if not MYPY:
7434
7745
  class ObjectBucketLockConfigurationRuleDefaultRetentionArgsDict(TypedDict):
7435
7746
  mode: pulumi.Input[str]
7436
7747
  """
7437
- The default object lock retention mode you want to apply to new objects placed in the specified bucket. Valid values are `GOVERNANCE` or `COMPLIANCE`. Refer to the [dedicated documentation](https://www.scaleway.com/en/docs/storage/object/api-cli/object-lock/#retention-modes) for more information on retention modes.
7748
+ The default object lock retention mode you want to apply to new objects placed in the specified bucket. Valid values are `GOVERNANCE` or `COMPLIANCE`. Refer to the [dedicated documentation](https://www.scaleway.com/en/docs/object-storage/api-cli/object-lock/#retention-modes) for more information on retention modes.
7438
7749
  """
7439
7750
  days: NotRequired[pulumi.Input[int]]
7440
7751
  """
@@ -7454,7 +7765,7 @@ class ObjectBucketLockConfigurationRuleDefaultRetentionArgs:
7454
7765
  days: Optional[pulumi.Input[int]] = None,
7455
7766
  years: Optional[pulumi.Input[int]] = None):
7456
7767
  """
7457
- :param pulumi.Input[str] mode: The default object lock retention mode you want to apply to new objects placed in the specified bucket. Valid values are `GOVERNANCE` or `COMPLIANCE`. Refer to the [dedicated documentation](https://www.scaleway.com/en/docs/storage/object/api-cli/object-lock/#retention-modes) for more information on retention modes.
7768
+ :param pulumi.Input[str] mode: The default object lock retention mode you want to apply to new objects placed in the specified bucket. Valid values are `GOVERNANCE` or `COMPLIANCE`. Refer to the [dedicated documentation](https://www.scaleway.com/en/docs/object-storage/api-cli/object-lock/#retention-modes) for more information on retention modes.
7458
7769
  :param pulumi.Input[int] days: The number of days you want to specify for the default retention period.
7459
7770
  :param pulumi.Input[int] years: The number of years you want to specify for the default retention period.
7460
7771
  """
@@ -7468,7 +7779,7 @@ class ObjectBucketLockConfigurationRuleDefaultRetentionArgs:
7468
7779
  @pulumi.getter
7469
7780
  def mode(self) -> pulumi.Input[str]:
7470
7781
  """
7471
- The default object lock retention mode you want to apply to new objects placed in the specified bucket. Valid values are `GOVERNANCE` or `COMPLIANCE`. Refer to the [dedicated documentation](https://www.scaleway.com/en/docs/storage/object/api-cli/object-lock/#retention-modes) for more information on retention modes.
7782
+ The default object lock retention mode you want to apply to new objects placed in the specified bucket. Valid values are `GOVERNANCE` or `COMPLIANCE`. Refer to the [dedicated documentation](https://www.scaleway.com/en/docs/object-storage/api-cli/object-lock/#retention-modes) for more information on retention modes.
7472
7783
  """
7473
7784
  return pulumi.get(self, "mode")
7474
7785
 
@@ -7697,6 +8008,7 @@ if not MYPY:
7697
8008
  Keep in mind that in cluster mode you cannot edit your Private Network after its creation so if you want to be able to
7698
8009
  scale your cluster horizontally (adding nodes) later, you should provide more IPs than nodes.
7699
8010
  If not set, the IP network address within the private subnet is determined by the IP Address Management (IPAM) service.
8011
+ > **Important:** When IPAM is enabled, the IPs specified here will be ignored and should not be provided.
7700
8012
 
7701
8013
  > The `private_network` conflicts with `acl`. Only one should be specified.
7702
8014
 
@@ -7735,6 +8047,7 @@ class RedisClusterPrivateNetworkArgs:
7735
8047
  Keep in mind that in cluster mode you cannot edit your Private Network after its creation so if you want to be able to
7736
8048
  scale your cluster horizontally (adding nodes) later, you should provide more IPs than nodes.
7737
8049
  If not set, the IP network address within the private subnet is determined by the IP Address Management (IPAM) service.
8050
+ > **Important:** When IPAM is enabled, the IPs specified here will be ignored and should not be provided.
7738
8051
 
7739
8052
  > The `private_network` conflicts with `acl`. Only one should be specified.
7740
8053
 
@@ -7793,6 +8106,7 @@ class RedisClusterPrivateNetworkArgs:
7793
8106
  Keep in mind that in cluster mode you cannot edit your Private Network after its creation so if you want to be able to
7794
8107
  scale your cluster horizontally (adding nodes) later, you should provide more IPs than nodes.
7795
8108
  If not set, the IP network address within the private subnet is determined by the IP Address Management (IPAM) service.
8109
+ > **Important:** When IPAM is enabled, the IPs specified here will be ignored and should not be provided.
7796
8110
 
7797
8111
  > The `private_network` conflicts with `acl`. Only one should be specified.
7798
8112
 
@@ -89,12 +89,16 @@ def _get_semver_version():
89
89
  elif pep440_version.pre_tag == 'rc':
90
90
  prerelease = f"rc.{pep440_version.pre}"
91
91
  elif pep440_version.dev is not None:
92
+ # PEP440 has explicit support for dev builds, while semver encodes them as "prerelease" versions. To bridge
93
+ # between the two, we convert our dev build version into a prerelease tag. This matches what all of our other
94
+ # packages do when constructing their own semver string.
92
95
  prerelease = f"dev.{pep440_version.dev}"
96
+ elif pep440_version.local is not None:
97
+ # PEP440 only allows a small set of prerelease tags, so when converting an arbitrary prerelease,
98
+ # PypiVersion in /pkg/codegen/python/utilities.go converts it to a local version. Therefore, we need to
99
+ # do the reverse conversion here and set the local version as the prerelease tag.
100
+ prerelease = pep440_version.local
93
101
 
94
- # The only significant difference between PEP440 and semver as it pertains to us is that PEP440 has explicit support
95
- # for dev builds, while semver encodes them as "prerelease" versions. In order to bridge between the two, we convert
96
- # our dev build version into a prerelease tag. This matches what all of our other packages do when constructing
97
- # their own semver string.
98
102
  return SemverVersion(major=major, minor=minor, patch=patch, prerelease=prerelease)
99
103
 
100
104
 
@@ -236,7 +236,7 @@ class AccountSshKey(pulumi.CustomResource):
236
236
  """
237
237
  The `AccountSshKey` resource allows you to create and manage the Projects of a Scaleway Organization.
238
238
 
239
- Refer to the Organizations and Projects [documentation](https://www.scaleway.com/en/docs/identity-and-access-management/organizations-and-projects/) and [API documentation](https://www.scaleway.com/en/developers/api/account/project-api/) for more information.
239
+ Refer to the Organizations and Projects [documentation](https://www.scaleway.com/en/docs/organizations-and-projects/) and [API documentation](https://www.scaleway.com/en/developers/api/account/project-api/) for more information.
240
240
 
241
241
  !> **Important:** The resource `AccountSshKey` has been deprecated and will no longer be supported. Instead, use `IamSshKey`.
242
242
 
@@ -277,7 +277,7 @@ class AccountSshKey(pulumi.CustomResource):
277
277
  """
278
278
  The `AccountSshKey` resource allows you to create and manage the Projects of a Scaleway Organization.
279
279
 
280
- Refer to the Organizations and Projects [documentation](https://www.scaleway.com/en/docs/identity-and-access-management/organizations-and-projects/) and [API documentation](https://www.scaleway.com/en/developers/api/account/project-api/) for more information.
280
+ Refer to the Organizations and Projects [documentation](https://www.scaleway.com/en/docs/organizations-and-projects/) and [API documentation](https://www.scaleway.com/en/developers/api/account/project-api/) for more information.
281
281
 
282
282
  !> **Important:** The resource `AccountSshKey` has been deprecated and will no longer be supported. Instead, use `IamSshKey`.
283
283