pulumiverse-scaleway 1.35.0a1761031391__py3-none-any.whl → 1.39.0a1764841480__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 (109) hide show
  1. pulumiverse_scaleway/__init__.py +38 -0
  2. pulumiverse_scaleway/_inputs.py +271 -166
  3. pulumiverse_scaleway/audittrail/__init__.py +10 -0
  4. pulumiverse_scaleway/audittrail/get_event.py +410 -0
  5. pulumiverse_scaleway/audittrail/outputs.py +234 -0
  6. pulumiverse_scaleway/baremetal_server.py +159 -0
  7. pulumiverse_scaleway/billing/get_consumptions.py +4 -0
  8. pulumiverse_scaleway/block/snapshot.py +78 -0
  9. pulumiverse_scaleway/block_snapshot.py +78 -0
  10. pulumiverse_scaleway/cockpit_grafana_user.py +0 -42
  11. pulumiverse_scaleway/database_instance.py +105 -55
  12. pulumiverse_scaleway/database_user.py +6 -6
  13. pulumiverse_scaleway/databases/_inputs.py +97 -3
  14. pulumiverse_scaleway/databases/get_instance.py +12 -1
  15. pulumiverse_scaleway/databases/instance.py +105 -55
  16. pulumiverse_scaleway/databases/outputs.py +127 -2
  17. pulumiverse_scaleway/databases/user.py +6 -6
  18. pulumiverse_scaleway/datawarehouse/__init__.py +13 -0
  19. pulumiverse_scaleway/datawarehouse/_inputs.py +149 -0
  20. pulumiverse_scaleway/datawarehouse/database.py +338 -0
  21. pulumiverse_scaleway/datawarehouse/deployment.py +821 -0
  22. pulumiverse_scaleway/datawarehouse/outputs.py +113 -0
  23. pulumiverse_scaleway/datawarehouse/user.py +451 -0
  24. pulumiverse_scaleway/domain/record.py +4 -4
  25. pulumiverse_scaleway/domain_record.py +4 -4
  26. pulumiverse_scaleway/edge_services_cache_stage.py +30 -0
  27. pulumiverse_scaleway/edge_services_dns_stage.py +28 -0
  28. pulumiverse_scaleway/elasticmetal/get_offer.py +2 -0
  29. pulumiverse_scaleway/elasticmetal/get_server.py +12 -1
  30. pulumiverse_scaleway/elasticmetal/server.py +159 -0
  31. pulumiverse_scaleway/file_filesystem.py +39 -35
  32. pulumiverse_scaleway/get_baremetal_offer.py +2 -0
  33. pulumiverse_scaleway/get_baremetal_server.py +12 -1
  34. pulumiverse_scaleway/get_billing_consumptions.py +4 -0
  35. pulumiverse_scaleway/get_database_instance.py +12 -1
  36. pulumiverse_scaleway/get_instance_ip.py +14 -2
  37. pulumiverse_scaleway/get_instance_server.py +13 -83
  38. pulumiverse_scaleway/get_k8s_version.py +12 -1
  39. pulumiverse_scaleway/get_kubernetes_cluster.py +34 -1
  40. pulumiverse_scaleway/get_loadbalancer.py +12 -1
  41. pulumiverse_scaleway/get_loadbalancer_certificate.py +60 -0
  42. pulumiverse_scaleway/iam/__init__.py +1 -0
  43. pulumiverse_scaleway/iam/get_policy.py +293 -0
  44. pulumiverse_scaleway/iam/outputs.py +52 -0
  45. pulumiverse_scaleway/inference/deployment.py +36 -0
  46. pulumiverse_scaleway/inference/model.py +7 -7
  47. pulumiverse_scaleway/inference_deployment.py +36 -0
  48. pulumiverse_scaleway/instance/_inputs.py +155 -144
  49. pulumiverse_scaleway/instance/get_ip.py +14 -2
  50. pulumiverse_scaleway/instance/get_server.py +13 -83
  51. pulumiverse_scaleway/instance/image.py +94 -40
  52. pulumiverse_scaleway/instance/outputs.py +164 -167
  53. pulumiverse_scaleway/instance/server.py +116 -244
  54. pulumiverse_scaleway/instance/user_data.py +4 -4
  55. pulumiverse_scaleway/instance/volume.py +14 -0
  56. pulumiverse_scaleway/instance_image.py +94 -40
  57. pulumiverse_scaleway/instance_server.py +116 -244
  58. pulumiverse_scaleway/instance_user_data.py +4 -4
  59. pulumiverse_scaleway/instance_volume.py +14 -0
  60. pulumiverse_scaleway/iot/device.py +0 -38
  61. pulumiverse_scaleway/iot/hub.py +11 -11
  62. pulumiverse_scaleway/iot/route.py +20 -20
  63. pulumiverse_scaleway/iot_device.py +0 -38
  64. pulumiverse_scaleway/iot_hub.py +11 -11
  65. pulumiverse_scaleway/iot_route.py +20 -20
  66. pulumiverse_scaleway/ipam/_inputs.py +6 -6
  67. pulumiverse_scaleway/ipam/ip.py +35 -7
  68. pulumiverse_scaleway/ipam/ip_reverse_dns.py +70 -0
  69. pulumiverse_scaleway/ipam/outputs.py +4 -4
  70. pulumiverse_scaleway/ipam_ip.py +35 -7
  71. pulumiverse_scaleway/ipam_ip_reverse_dns.py +70 -0
  72. pulumiverse_scaleway/key_manager_key.py +134 -25
  73. pulumiverse_scaleway/kubernetes/cluster.py +290 -4
  74. pulumiverse_scaleway/kubernetes/get_cluster.py +34 -1
  75. pulumiverse_scaleway/kubernetes/get_version.py +12 -1
  76. pulumiverse_scaleway/kubernetes/pool.py +7 -7
  77. pulumiverse_scaleway/kubernetes_cluster.py +290 -4
  78. pulumiverse_scaleway/kubernetes_node_pool.py +7 -7
  79. pulumiverse_scaleway/loadbalancer.py +55 -1
  80. pulumiverse_scaleway/loadbalancers/__init__.py +1 -0
  81. pulumiverse_scaleway/loadbalancers/_inputs.py +13 -13
  82. pulumiverse_scaleway/loadbalancers/get_certificate.py +60 -0
  83. pulumiverse_scaleway/loadbalancers/get_load_balancer.py +12 -1
  84. pulumiverse_scaleway/loadbalancers/load_balancer.py +55 -1
  85. pulumiverse_scaleway/loadbalancers/outputs.py +9 -9
  86. pulumiverse_scaleway/loadbalancers/private_network.py +505 -0
  87. pulumiverse_scaleway/mongo_db_instance.py +14 -14
  88. pulumiverse_scaleway/mongodb/instance.py +14 -14
  89. pulumiverse_scaleway/network/gateway_network.py +7 -7
  90. pulumiverse_scaleway/object/__init__.py +1 -0
  91. pulumiverse_scaleway/object/bucket_policy.py +0 -64
  92. pulumiverse_scaleway/object/get.py +290 -0
  93. pulumiverse_scaleway/object/item.py +37 -7
  94. pulumiverse_scaleway/object_bucket_policy.py +0 -64
  95. pulumiverse_scaleway/object_item.py +37 -7
  96. pulumiverse_scaleway/observability/__init__.py +1 -0
  97. pulumiverse_scaleway/observability/get_grafana.py +103 -0
  98. pulumiverse_scaleway/observability/get_sources.py +6 -6
  99. pulumiverse_scaleway/observability/grafana_user.py +0 -42
  100. pulumiverse_scaleway/observability/outputs.py +2 -2
  101. pulumiverse_scaleway/outputs.py +304 -182
  102. pulumiverse_scaleway/pulumi-plugin.json +1 -1
  103. pulumiverse_scaleway/tem/domain.py +42 -0
  104. pulumiverse_scaleway/tem_domain.py +42 -0
  105. pulumiverse_scaleway/vpc_gateway_network.py +7 -7
  106. {pulumiverse_scaleway-1.35.0a1761031391.dist-info → pulumiverse_scaleway-1.39.0a1764841480.dist-info}/METADATA +1 -1
  107. {pulumiverse_scaleway-1.35.0a1761031391.dist-info → pulumiverse_scaleway-1.39.0a1764841480.dist-info}/RECORD +109 -96
  108. {pulumiverse_scaleway-1.35.0a1761031391.dist-info → pulumiverse_scaleway-1.39.0a1764841480.dist-info}/WHEEL +0 -0
  109. {pulumiverse_scaleway-1.35.0a1761031391.dist-info → pulumiverse_scaleway-1.39.0a1764841480.dist-info}/top_level.txt +0 -0
@@ -65,6 +65,8 @@ __all__ = [
65
65
  'DatabaseInstancePrivateNetworkArgsDict',
66
66
  'DatabaseInstanceReadReplicaArgs',
67
67
  'DatabaseInstanceReadReplicaArgsDict',
68
+ 'DatabaseInstanceUpgradableVersionArgs',
69
+ 'DatabaseInstanceUpgradableVersionArgsDict',
68
70
  'DatabaseReadReplicaDirectAccessArgs',
69
71
  'DatabaseReadReplicaDirectAccessArgsDict',
70
72
  'DatabaseReadReplicaPrivateNetworkArgs',
@@ -109,6 +111,8 @@ __all__ = [
109
111
  'InferenceDeploymentPublicEndpointArgsDict',
110
112
  'InstanceImageAdditionalVolumeArgs',
111
113
  'InstanceImageAdditionalVolumeArgsDict',
114
+ 'InstanceImageRootVolumeArgs',
115
+ 'InstanceImageRootVolumeArgsDict',
112
116
  'InstancePrivateNicPrivateIpArgs',
113
117
  'InstancePrivateNicPrivateIpArgsDict',
114
118
  'InstanceSecurityGroupInboundRuleArgs',
@@ -119,6 +123,8 @@ __all__ = [
119
123
  'InstanceSecurityGroupRulesInboundRuleArgsDict',
120
124
  'InstanceSecurityGroupRulesOutboundRuleArgs',
121
125
  'InstanceSecurityGroupRulesOutboundRuleArgsDict',
126
+ 'InstanceServerFilesystemArgs',
127
+ 'InstanceServerFilesystemArgsDict',
122
128
  'InstanceServerPrivateIpArgs',
123
129
  'InstanceServerPrivateIpArgsDict',
124
130
  'InstanceServerPrivateNetworkArgs',
@@ -2077,7 +2083,7 @@ if not MYPY:
2077
2083
  """
2078
2084
  id: NotRequired[pulumi.Input[_builtins.str]]
2079
2085
  """
2080
- The ID of the IPv4 address resource.
2086
+ Version ID to use in upgrade requests.
2081
2087
  """
2082
2088
  elif False:
2083
2089
  DatabaseInstancePrivateIpArgsDict: TypeAlias = Mapping[str, Any]
@@ -2089,7 +2095,7 @@ class DatabaseInstancePrivateIpArgs:
2089
2095
  id: Optional[pulumi.Input[_builtins.str]] = None):
2090
2096
  """
2091
2097
  :param pulumi.Input[_builtins.str] address: The private IPv4 address.
2092
- :param pulumi.Input[_builtins.str] id: The ID of the IPv4 address resource.
2098
+ :param pulumi.Input[_builtins.str] id: Version ID to use in upgrade requests.
2093
2099
  """
2094
2100
  if address is not None:
2095
2101
  pulumi.set(__self__, "address", address)
@@ -2112,7 +2118,7 @@ class DatabaseInstancePrivateIpArgs:
2112
2118
  @pulumi.getter
2113
2119
  def id(self) -> Optional[pulumi.Input[_builtins.str]]:
2114
2120
  """
2115
- The ID of the IPv4 address resource.
2121
+ Version ID to use in upgrade requests.
2116
2122
  """
2117
2123
  return pulumi.get(self, "id")
2118
2124
 
@@ -2384,6 +2390,98 @@ class DatabaseInstanceReadReplicaArgs:
2384
2390
  pulumi.set(self, "port", value)
2385
2391
 
2386
2392
 
2393
+ if not MYPY:
2394
+ class DatabaseInstanceUpgradableVersionArgsDict(TypedDict):
2395
+ id: NotRequired[pulumi.Input[_builtins.str]]
2396
+ """
2397
+ Version ID to use in upgrade requests.
2398
+ """
2399
+ minor_version: NotRequired[pulumi.Input[_builtins.str]]
2400
+ """
2401
+ Minor version string (e.g., `15.5.0`).
2402
+ """
2403
+ name: NotRequired[pulumi.Input[_builtins.str]]
2404
+ """
2405
+ The name of the Database Instance.
2406
+ """
2407
+ version: NotRequired[pulumi.Input[_builtins.str]]
2408
+ """
2409
+ Version string (e.g., `15.5`).
2410
+ """
2411
+ elif False:
2412
+ DatabaseInstanceUpgradableVersionArgsDict: TypeAlias = Mapping[str, Any]
2413
+
2414
+ @pulumi.input_type
2415
+ class DatabaseInstanceUpgradableVersionArgs:
2416
+ def __init__(__self__, *,
2417
+ id: Optional[pulumi.Input[_builtins.str]] = None,
2418
+ minor_version: Optional[pulumi.Input[_builtins.str]] = None,
2419
+ name: Optional[pulumi.Input[_builtins.str]] = None,
2420
+ version: Optional[pulumi.Input[_builtins.str]] = None):
2421
+ """
2422
+ :param pulumi.Input[_builtins.str] id: Version ID to use in upgrade requests.
2423
+ :param pulumi.Input[_builtins.str] minor_version: Minor version string (e.g., `15.5.0`).
2424
+ :param pulumi.Input[_builtins.str] name: The name of the Database Instance.
2425
+ :param pulumi.Input[_builtins.str] version: Version string (e.g., `15.5`).
2426
+ """
2427
+ if id is not None:
2428
+ pulumi.set(__self__, "id", id)
2429
+ if minor_version is not None:
2430
+ pulumi.set(__self__, "minor_version", minor_version)
2431
+ if name is not None:
2432
+ pulumi.set(__self__, "name", name)
2433
+ if version is not None:
2434
+ pulumi.set(__self__, "version", version)
2435
+
2436
+ @_builtins.property
2437
+ @pulumi.getter
2438
+ def id(self) -> Optional[pulumi.Input[_builtins.str]]:
2439
+ """
2440
+ Version ID to use in upgrade requests.
2441
+ """
2442
+ return pulumi.get(self, "id")
2443
+
2444
+ @id.setter
2445
+ def id(self, value: Optional[pulumi.Input[_builtins.str]]):
2446
+ pulumi.set(self, "id", value)
2447
+
2448
+ @_builtins.property
2449
+ @pulumi.getter(name="minorVersion")
2450
+ def minor_version(self) -> Optional[pulumi.Input[_builtins.str]]:
2451
+ """
2452
+ Minor version string (e.g., `15.5.0`).
2453
+ """
2454
+ return pulumi.get(self, "minor_version")
2455
+
2456
+ @minor_version.setter
2457
+ def minor_version(self, value: Optional[pulumi.Input[_builtins.str]]):
2458
+ pulumi.set(self, "minor_version", value)
2459
+
2460
+ @_builtins.property
2461
+ @pulumi.getter
2462
+ def name(self) -> Optional[pulumi.Input[_builtins.str]]:
2463
+ """
2464
+ The name of the Database Instance.
2465
+ """
2466
+ return pulumi.get(self, "name")
2467
+
2468
+ @name.setter
2469
+ def name(self, value: Optional[pulumi.Input[_builtins.str]]):
2470
+ pulumi.set(self, "name", value)
2471
+
2472
+ @_builtins.property
2473
+ @pulumi.getter
2474
+ def version(self) -> Optional[pulumi.Input[_builtins.str]]:
2475
+ """
2476
+ Version string (e.g., `15.5`).
2477
+ """
2478
+ return pulumi.get(self, "version")
2479
+
2480
+ @version.setter
2481
+ def version(self, value: Optional[pulumi.Input[_builtins.str]]):
2482
+ pulumi.set(self, "version", value)
2483
+
2484
+
2387
2485
  if not MYPY:
2388
2486
  class DatabaseReadReplicaDirectAccessArgsDict(TypedDict):
2389
2487
  endpoint_id: NotRequired[pulumi.Input[_builtins.str]]
@@ -4035,34 +4133,14 @@ class InferenceDeploymentPublicEndpointArgs:
4035
4133
 
4036
4134
  if not MYPY:
4037
4135
  class InstanceImageAdditionalVolumeArgsDict(TypedDict):
4038
- creation_date: NotRequired[pulumi.Input[_builtins.str]]
4039
- """
4040
- Date of the volume creation.
4041
- """
4042
- export_uri: NotRequired[pulumi.Input[_builtins.str]]
4043
- """
4044
- The export URI of the volume.
4045
- """
4046
4136
  id: NotRequired[pulumi.Input[_builtins.str]]
4047
4137
  """
4048
4138
  ID of the server containing the volume.
4049
4139
  """
4050
- modification_date: NotRequired[pulumi.Input[_builtins.str]]
4051
- """
4052
- Date of volume latest update.
4053
- """
4054
4140
  name: NotRequired[pulumi.Input[_builtins.str]]
4055
4141
  """
4056
4142
  The name of the image. If not provided it will be randomly generated.
4057
4143
  """
4058
- organization: NotRequired[pulumi.Input[_builtins.str]]
4059
- """
4060
- The organization ID the volume is associated with.
4061
- """
4062
- project: NotRequired[pulumi.Input[_builtins.str]]
4063
- """
4064
- ID of the project the volume is associated with
4065
- """
4066
4144
  server: NotRequired[pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]]]
4067
4145
  """
4068
4146
  Description of the server containing the volume (in case the image is a backup from a server).
@@ -4071,21 +4149,13 @@ if not MYPY:
4071
4149
  """
4072
4150
  The size of the volume.
4073
4151
  """
4074
- state: NotRequired[pulumi.Input[_builtins.str]]
4075
- """
4076
- State of the volume.
4077
- """
4078
4152
  tags: NotRequired[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]
4079
4153
  """
4080
4154
  A list of tags to apply to the image.
4081
4155
  """
4082
4156
  volume_type: NotRequired[pulumi.Input[_builtins.str]]
4083
4157
  """
4084
- The type of volume, possible values are `l_ssd` and `b_ssd`.
4085
- """
4086
- zone: NotRequired[pulumi.Input[_builtins.str]]
4087
- """
4088
- The zone in which the image should be created.
4158
+ The type of volume, possible values are `l_ssd` and `sbs_snapshot`.
4089
4159
  """
4090
4160
  elif False:
4091
4161
  InstanceImageAdditionalVolumeArgsDict: TypeAlias = Mapping[str, Any]
@@ -4093,84 +4163,32 @@ elif False:
4093
4163
  @pulumi.input_type
4094
4164
  class InstanceImageAdditionalVolumeArgs:
4095
4165
  def __init__(__self__, *,
4096
- creation_date: Optional[pulumi.Input[_builtins.str]] = None,
4097
- export_uri: Optional[pulumi.Input[_builtins.str]] = None,
4098
4166
  id: Optional[pulumi.Input[_builtins.str]] = None,
4099
- modification_date: Optional[pulumi.Input[_builtins.str]] = None,
4100
4167
  name: Optional[pulumi.Input[_builtins.str]] = None,
4101
- organization: Optional[pulumi.Input[_builtins.str]] = None,
4102
- project: Optional[pulumi.Input[_builtins.str]] = None,
4103
4168
  server: Optional[pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]]] = None,
4104
4169
  size: Optional[pulumi.Input[_builtins.int]] = None,
4105
- state: Optional[pulumi.Input[_builtins.str]] = None,
4106
4170
  tags: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
4107
- volume_type: Optional[pulumi.Input[_builtins.str]] = None,
4108
- zone: Optional[pulumi.Input[_builtins.str]] = None):
4171
+ volume_type: Optional[pulumi.Input[_builtins.str]] = None):
4109
4172
  """
4110
- :param pulumi.Input[_builtins.str] creation_date: Date of the volume creation.
4111
- :param pulumi.Input[_builtins.str] export_uri: The export URI of the volume.
4112
4173
  :param pulumi.Input[_builtins.str] id: ID of the server containing the volume.
4113
- :param pulumi.Input[_builtins.str] modification_date: Date of volume latest update.
4114
4174
  :param pulumi.Input[_builtins.str] name: The name of the image. If not provided it will be randomly generated.
4115
- :param pulumi.Input[_builtins.str] organization: The organization ID the volume is associated with.
4116
- :param pulumi.Input[_builtins.str] project: ID of the project the volume is associated with
4117
4175
  :param pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]] server: Description of the server containing the volume (in case the image is a backup from a server).
4118
4176
  :param pulumi.Input[_builtins.int] size: The size of the volume.
4119
- :param pulumi.Input[_builtins.str] state: State of the volume.
4120
4177
  :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] tags: A list of tags to apply to the image.
4121
- :param pulumi.Input[_builtins.str] volume_type: The type of volume, possible values are `l_ssd` and `b_ssd`.
4122
- :param pulumi.Input[_builtins.str] zone: The zone in which the image should be created.
4178
+ :param pulumi.Input[_builtins.str] volume_type: The type of volume, possible values are `l_ssd` and `sbs_snapshot`.
4123
4179
  """
4124
- if creation_date is not None:
4125
- pulumi.set(__self__, "creation_date", creation_date)
4126
- if export_uri is not None:
4127
- pulumi.set(__self__, "export_uri", export_uri)
4128
4180
  if id is not None:
4129
4181
  pulumi.set(__self__, "id", id)
4130
- if modification_date is not None:
4131
- pulumi.set(__self__, "modification_date", modification_date)
4132
4182
  if name is not None:
4133
4183
  pulumi.set(__self__, "name", name)
4134
- if organization is not None:
4135
- pulumi.set(__self__, "organization", organization)
4136
- if project is not None:
4137
- pulumi.set(__self__, "project", project)
4138
4184
  if server is not None:
4139
4185
  pulumi.set(__self__, "server", server)
4140
4186
  if size is not None:
4141
4187
  pulumi.set(__self__, "size", size)
4142
- if state is not None:
4143
- pulumi.set(__self__, "state", state)
4144
4188
  if tags is not None:
4145
4189
  pulumi.set(__self__, "tags", tags)
4146
4190
  if volume_type is not None:
4147
4191
  pulumi.set(__self__, "volume_type", volume_type)
4148
- if zone is not None:
4149
- pulumi.set(__self__, "zone", zone)
4150
-
4151
- @_builtins.property
4152
- @pulumi.getter(name="creationDate")
4153
- def creation_date(self) -> Optional[pulumi.Input[_builtins.str]]:
4154
- """
4155
- Date of the volume creation.
4156
- """
4157
- return pulumi.get(self, "creation_date")
4158
-
4159
- @creation_date.setter
4160
- def creation_date(self, value: Optional[pulumi.Input[_builtins.str]]):
4161
- pulumi.set(self, "creation_date", value)
4162
-
4163
- @_builtins.property
4164
- @pulumi.getter(name="exportUri")
4165
- def export_uri(self) -> Optional[pulumi.Input[_builtins.str]]:
4166
- """
4167
- The export URI of the volume.
4168
- """
4169
- return pulumi.get(self, "export_uri")
4170
-
4171
- @export_uri.setter
4172
- def export_uri(self, value: Optional[pulumi.Input[_builtins.str]]):
4173
- pulumi.set(self, "export_uri", value)
4174
4192
 
4175
4193
  @_builtins.property
4176
4194
  @pulumi.getter
@@ -4184,18 +4202,6 @@ class InstanceImageAdditionalVolumeArgs:
4184
4202
  def id(self, value: Optional[pulumi.Input[_builtins.str]]):
4185
4203
  pulumi.set(self, "id", value)
4186
4204
 
4187
- @_builtins.property
4188
- @pulumi.getter(name="modificationDate")
4189
- def modification_date(self) -> Optional[pulumi.Input[_builtins.str]]:
4190
- """
4191
- Date of volume latest update.
4192
- """
4193
- return pulumi.get(self, "modification_date")
4194
-
4195
- @modification_date.setter
4196
- def modification_date(self, value: Optional[pulumi.Input[_builtins.str]]):
4197
- pulumi.set(self, "modification_date", value)
4198
-
4199
4205
  @_builtins.property
4200
4206
  @pulumi.getter
4201
4207
  def name(self) -> Optional[pulumi.Input[_builtins.str]]:
@@ -4208,30 +4214,6 @@ class InstanceImageAdditionalVolumeArgs:
4208
4214
  def name(self, value: Optional[pulumi.Input[_builtins.str]]):
4209
4215
  pulumi.set(self, "name", value)
4210
4216
 
4211
- @_builtins.property
4212
- @pulumi.getter
4213
- def organization(self) -> Optional[pulumi.Input[_builtins.str]]:
4214
- """
4215
- The organization ID the volume is associated with.
4216
- """
4217
- return pulumi.get(self, "organization")
4218
-
4219
- @organization.setter
4220
- def organization(self, value: Optional[pulumi.Input[_builtins.str]]):
4221
- pulumi.set(self, "organization", value)
4222
-
4223
- @_builtins.property
4224
- @pulumi.getter
4225
- def project(self) -> Optional[pulumi.Input[_builtins.str]]:
4226
- """
4227
- ID of the project the volume is associated with
4228
- """
4229
- return pulumi.get(self, "project")
4230
-
4231
- @project.setter
4232
- def project(self, value: Optional[pulumi.Input[_builtins.str]]):
4233
- pulumi.set(self, "project", value)
4234
-
4235
4217
  @_builtins.property
4236
4218
  @pulumi.getter
4237
4219
  def server(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]]]:
@@ -4256,18 +4238,6 @@ class InstanceImageAdditionalVolumeArgs:
4256
4238
  def size(self, value: Optional[pulumi.Input[_builtins.int]]):
4257
4239
  pulumi.set(self, "size", value)
4258
4240
 
4259
- @_builtins.property
4260
- @pulumi.getter
4261
- def state(self) -> Optional[pulumi.Input[_builtins.str]]:
4262
- """
4263
- State of the volume.
4264
- """
4265
- return pulumi.get(self, "state")
4266
-
4267
- @state.setter
4268
- def state(self, value: Optional[pulumi.Input[_builtins.str]]):
4269
- pulumi.set(self, "state", value)
4270
-
4271
4241
  @_builtins.property
4272
4242
  @pulumi.getter
4273
4243
  def tags(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]:
@@ -4284,7 +4254,7 @@ class InstanceImageAdditionalVolumeArgs:
4284
4254
  @pulumi.getter(name="volumeType")
4285
4255
  def volume_type(self) -> Optional[pulumi.Input[_builtins.str]]:
4286
4256
  """
4287
- The type of volume, possible values are `l_ssd` and `b_ssd`.
4257
+ The type of volume, possible values are `l_ssd` and `sbs_snapshot`.
4288
4258
  """
4289
4259
  return pulumi.get(self, "volume_type")
4290
4260
 
@@ -4292,17 +4262,97 @@ class InstanceImageAdditionalVolumeArgs:
4292
4262
  def volume_type(self, value: Optional[pulumi.Input[_builtins.str]]):
4293
4263
  pulumi.set(self, "volume_type", value)
4294
4264
 
4265
+
4266
+ if not MYPY:
4267
+ class InstanceImageRootVolumeArgsDict(TypedDict):
4268
+ id: NotRequired[pulumi.Input[_builtins.str]]
4269
+ """
4270
+ ID of the server containing the volume.
4271
+ """
4272
+ name: NotRequired[pulumi.Input[_builtins.str]]
4273
+ """
4274
+ The name of the image. If not provided it will be randomly generated.
4275
+ """
4276
+ size: NotRequired[pulumi.Input[_builtins.int]]
4277
+ """
4278
+ The size of the volume.
4279
+ """
4280
+ volume_type: NotRequired[pulumi.Input[_builtins.str]]
4281
+ """
4282
+ The type of volume, possible values are `l_ssd` and `sbs_snapshot`.
4283
+ """
4284
+ elif False:
4285
+ InstanceImageRootVolumeArgsDict: TypeAlias = Mapping[str, Any]
4286
+
4287
+ @pulumi.input_type
4288
+ class InstanceImageRootVolumeArgs:
4289
+ def __init__(__self__, *,
4290
+ id: Optional[pulumi.Input[_builtins.str]] = None,
4291
+ name: Optional[pulumi.Input[_builtins.str]] = None,
4292
+ size: Optional[pulumi.Input[_builtins.int]] = None,
4293
+ volume_type: Optional[pulumi.Input[_builtins.str]] = None):
4294
+ """
4295
+ :param pulumi.Input[_builtins.str] id: ID of the server containing the volume.
4296
+ :param pulumi.Input[_builtins.str] name: The name of the image. If not provided it will be randomly generated.
4297
+ :param pulumi.Input[_builtins.int] size: The size of the volume.
4298
+ :param pulumi.Input[_builtins.str] volume_type: The type of volume, possible values are `l_ssd` and `sbs_snapshot`.
4299
+ """
4300
+ if id is not None:
4301
+ pulumi.set(__self__, "id", id)
4302
+ if name is not None:
4303
+ pulumi.set(__self__, "name", name)
4304
+ if size is not None:
4305
+ pulumi.set(__self__, "size", size)
4306
+ if volume_type is not None:
4307
+ pulumi.set(__self__, "volume_type", volume_type)
4308
+
4295
4309
  @_builtins.property
4296
4310
  @pulumi.getter
4297
- def zone(self) -> Optional[pulumi.Input[_builtins.str]]:
4311
+ def id(self) -> Optional[pulumi.Input[_builtins.str]]:
4298
4312
  """
4299
- The zone in which the image should be created.
4313
+ ID of the server containing the volume.
4300
4314
  """
4301
- return pulumi.get(self, "zone")
4315
+ return pulumi.get(self, "id")
4302
4316
 
4303
- @zone.setter
4304
- def zone(self, value: Optional[pulumi.Input[_builtins.str]]):
4305
- pulumi.set(self, "zone", value)
4317
+ @id.setter
4318
+ def id(self, value: Optional[pulumi.Input[_builtins.str]]):
4319
+ pulumi.set(self, "id", value)
4320
+
4321
+ @_builtins.property
4322
+ @pulumi.getter
4323
+ def name(self) -> Optional[pulumi.Input[_builtins.str]]:
4324
+ """
4325
+ The name of the image. If not provided it will be randomly generated.
4326
+ """
4327
+ return pulumi.get(self, "name")
4328
+
4329
+ @name.setter
4330
+ def name(self, value: Optional[pulumi.Input[_builtins.str]]):
4331
+ pulumi.set(self, "name", value)
4332
+
4333
+ @_builtins.property
4334
+ @pulumi.getter
4335
+ def size(self) -> Optional[pulumi.Input[_builtins.int]]:
4336
+ """
4337
+ The size of the volume.
4338
+ """
4339
+ return pulumi.get(self, "size")
4340
+
4341
+ @size.setter
4342
+ def size(self, value: Optional[pulumi.Input[_builtins.int]]):
4343
+ pulumi.set(self, "size", value)
4344
+
4345
+ @_builtins.property
4346
+ @pulumi.getter(name="volumeType")
4347
+ def volume_type(self) -> Optional[pulumi.Input[_builtins.str]]:
4348
+ """
4349
+ The type of volume, possible values are `l_ssd` and `sbs_snapshot`.
4350
+ """
4351
+ return pulumi.get(self, "volume_type")
4352
+
4353
+ @volume_type.setter
4354
+ def volume_type(self, value: Optional[pulumi.Input[_builtins.str]]):
4355
+ pulumi.set(self, "volume_type", value)
4306
4356
 
4307
4357
 
4308
4358
  if not MYPY:
@@ -4897,6 +4947,58 @@ class InstanceSecurityGroupRulesOutboundRuleArgs:
4897
4947
  pulumi.set(self, "protocol", value)
4898
4948
 
4899
4949
 
4950
+ if not MYPY:
4951
+ class InstanceServerFilesystemArgsDict(TypedDict):
4952
+ filesystem_id: NotRequired[pulumi.Input[_builtins.str]]
4953
+ """
4954
+ The unique ID of the filesystem attached to the server.
4955
+ """
4956
+ status: NotRequired[pulumi.Input[_builtins.str]]
4957
+ """
4958
+ The state of the filesystem
4959
+ """
4960
+ elif False:
4961
+ InstanceServerFilesystemArgsDict: TypeAlias = Mapping[str, Any]
4962
+
4963
+ @pulumi.input_type
4964
+ class InstanceServerFilesystemArgs:
4965
+ def __init__(__self__, *,
4966
+ filesystem_id: Optional[pulumi.Input[_builtins.str]] = None,
4967
+ status: Optional[pulumi.Input[_builtins.str]] = None):
4968
+ """
4969
+ :param pulumi.Input[_builtins.str] filesystem_id: The unique ID of the filesystem attached to the server.
4970
+ :param pulumi.Input[_builtins.str] status: The state of the filesystem
4971
+ """
4972
+ if filesystem_id is not None:
4973
+ pulumi.set(__self__, "filesystem_id", filesystem_id)
4974
+ if status is not None:
4975
+ pulumi.set(__self__, "status", status)
4976
+
4977
+ @_builtins.property
4978
+ @pulumi.getter(name="filesystemId")
4979
+ def filesystem_id(self) -> Optional[pulumi.Input[_builtins.str]]:
4980
+ """
4981
+ The unique ID of the filesystem attached to the server.
4982
+ """
4983
+ return pulumi.get(self, "filesystem_id")
4984
+
4985
+ @filesystem_id.setter
4986
+ def filesystem_id(self, value: Optional[pulumi.Input[_builtins.str]]):
4987
+ pulumi.set(self, "filesystem_id", value)
4988
+
4989
+ @_builtins.property
4990
+ @pulumi.getter
4991
+ def status(self) -> Optional[pulumi.Input[_builtins.str]]:
4992
+ """
4993
+ The state of the filesystem
4994
+ """
4995
+ return pulumi.get(self, "status")
4996
+
4997
+ @status.setter
4998
+ def status(self, value: Optional[pulumi.Input[_builtins.str]]):
4999
+ pulumi.set(self, "status", value)
5000
+
5001
+
4900
5002
  if not MYPY:
4901
5003
  class InstanceServerPrivateIpArgsDict(TypedDict):
4902
5004
  address: NotRequired[pulumi.Input[_builtins.str]]
@@ -5224,13 +5326,14 @@ if not MYPY:
5224
5326
  """
5225
5327
  name: NotRequired[pulumi.Input[_builtins.str]]
5226
5328
  """
5227
- The name of the server.
5329
+ Name of the root volume.
5228
5330
  """
5229
5331
  sbs_iops: NotRequired[pulumi.Input[_builtins.int]]
5230
5332
  """
5231
5333
  Choose IOPS of your sbs volume, has to be used with `sbs_volume` for root volume type.
5232
5334
 
5233
- > **Important:** Updates to `root_volume.size_in_gb` will be ignored after the creation of the server.
5335
+ > **Important:** It is not possible to change `root_volume.size_in_gb` for local volumes (`l_ssd`). Changes to this field will recreate the server.
5336
+ It is possible to increase `root_volume.size_in_gb` for SBS volumes, but they cannot be resized down without recreating the server.
5234
5337
  """
5235
5338
  size_in_gb: NotRequired[pulumi.Input[_builtins.int]]
5236
5339
  """
@@ -5263,10 +5366,11 @@ class InstanceServerRootVolumeArgs:
5263
5366
  """
5264
5367
  :param pulumi.Input[_builtins.bool] boot: Set the volume where the boot the server
5265
5368
  :param pulumi.Input[_builtins.bool] delete_on_termination: Forces deletion of the root volume on instance termination.
5266
- :param pulumi.Input[_builtins.str] name: The name of the server.
5369
+ :param pulumi.Input[_builtins.str] name: Name of the root volume.
5267
5370
  :param pulumi.Input[_builtins.int] sbs_iops: Choose IOPS of your sbs volume, has to be used with `sbs_volume` for root volume type.
5268
5371
 
5269
- > **Important:** Updates to `root_volume.size_in_gb` will be ignored after the creation of the server.
5372
+ > **Important:** It is not possible to change `root_volume.size_in_gb` for local volumes (`l_ssd`). Changes to this field will recreate the server.
5373
+ It is possible to increase `root_volume.size_in_gb` for SBS volumes, but they cannot be resized down without recreating the server.
5270
5374
  :param pulumi.Input[_builtins.int] size_in_gb: Size of the root volume in gigabytes.
5271
5375
  To find the right size use [this endpoint](https://www.scaleway.com/en/developers/api/instance/#path-instances-list-all-instances) and
5272
5376
  check the `volumes_constraint.{min|max}_size` (in bytes) for your `commercial_type`.
@@ -5317,7 +5421,7 @@ class InstanceServerRootVolumeArgs:
5317
5421
  @pulumi.getter
5318
5422
  def name(self) -> Optional[pulumi.Input[_builtins.str]]:
5319
5423
  """
5320
- The name of the server.
5424
+ Name of the root volume.
5321
5425
  """
5322
5426
  return pulumi.get(self, "name")
5323
5427
 
@@ -5331,7 +5435,8 @@ class InstanceServerRootVolumeArgs:
5331
5435
  """
5332
5436
  Choose IOPS of your sbs volume, has to be used with `sbs_volume` for root volume type.
5333
5437
 
5334
- > **Important:** Updates to `root_volume.size_in_gb` will be ignored after the creation of the server.
5438
+ > **Important:** It is not possible to change `root_volume.size_in_gb` for local volumes (`l_ssd`). Changes to this field will recreate the server.
5439
+ It is possible to increase `root_volume.size_in_gb` for SBS volumes, but they cannot be resized down without recreating the server.
5335
5440
  """
5336
5441
  return pulumi.get(self, "sbs_iops")
5337
5442
 
@@ -5937,11 +6042,11 @@ if not MYPY:
5937
6042
  class IpamIpCustomResourceArgsDict(TypedDict):
5938
6043
  mac_address: pulumi.Input[_builtins.str]
5939
6044
  """
5940
- The MAC address of the resource the IP is attached to.
6045
+ The MAC address of the custom resource.
5941
6046
  """
5942
6047
  name: NotRequired[pulumi.Input[_builtins.str]]
5943
6048
  """
5944
- The name of the resource the IP is attached to.
6049
+ When the resource is in a Private Network, a DNS record is available to resolve the resource name.
5945
6050
  """
5946
6051
  elif False:
5947
6052
  IpamIpCustomResourceArgsDict: TypeAlias = Mapping[str, Any]
@@ -5952,8 +6057,8 @@ class IpamIpCustomResourceArgs:
5952
6057
  mac_address: pulumi.Input[_builtins.str],
5953
6058
  name: Optional[pulumi.Input[_builtins.str]] = None):
5954
6059
  """
5955
- :param pulumi.Input[_builtins.str] mac_address: The MAC address of the resource the IP is attached to.
5956
- :param pulumi.Input[_builtins.str] name: The name of the resource the IP is attached to.
6060
+ :param pulumi.Input[_builtins.str] mac_address: The MAC address of the custom resource.
6061
+ :param pulumi.Input[_builtins.str] name: When the resource is in a Private Network, a DNS record is available to resolve the resource name.
5957
6062
  """
5958
6063
  pulumi.set(__self__, "mac_address", mac_address)
5959
6064
  if name is not None:
@@ -5963,7 +6068,7 @@ class IpamIpCustomResourceArgs:
5963
6068
  @pulumi.getter(name="macAddress")
5964
6069
  def mac_address(self) -> pulumi.Input[_builtins.str]:
5965
6070
  """
5966
- The MAC address of the resource the IP is attached to.
6071
+ The MAC address of the custom resource.
5967
6072
  """
5968
6073
  return pulumi.get(self, "mac_address")
5969
6074
 
@@ -5975,7 +6080,7 @@ class IpamIpCustomResourceArgs:
5975
6080
  @pulumi.getter
5976
6081
  def name(self) -> Optional[pulumi.Input[_builtins.str]]:
5977
6082
  """
5978
- The name of the resource the IP is attached to.
6083
+ When the resource is in a Private Network, a DNS record is available to resolve the resource name.
5979
6084
  """
5980
6085
  return pulumi.get(self, "name")
5981
6086
 
@@ -8209,7 +8314,7 @@ if not MYPY:
8209
8314
  """
8210
8315
  IPAM ID of a pre-reserved IP address to assign to the Load Balancer on this Private Network.
8211
8316
  """
8212
- static_config: NotRequired[pulumi.Input[_builtins.str]]
8317
+ static_configs: NotRequired[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]
8213
8318
  """
8214
8319
  Define an IP address in the subnet of your private network that will be assigned to your load balancer instance
8215
8320
  """
@@ -8230,7 +8335,7 @@ class LoadbalancerPrivateNetworkArgs:
8230
8335
  private_network_id: pulumi.Input[_builtins.str],
8231
8336
  dhcp_config: Optional[pulumi.Input[_builtins.bool]] = None,
8232
8337
  ipam_ids: Optional[pulumi.Input[_builtins.str]] = None,
8233
- static_config: Optional[pulumi.Input[_builtins.str]] = None,
8338
+ static_configs: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
8234
8339
  status: Optional[pulumi.Input[_builtins.str]] = None,
8235
8340
  zone: Optional[pulumi.Input[_builtins.str]] = None):
8236
8341
  """
@@ -8238,7 +8343,7 @@ class LoadbalancerPrivateNetworkArgs:
8238
8343
  - > **Important:** Updates to `private_network` will recreate the attachment.
8239
8344
  :param pulumi.Input[_builtins.bool] dhcp_config: Set to true if you want to let DHCP assign IP addresses
8240
8345
  :param pulumi.Input[_builtins.str] ipam_ids: IPAM ID of a pre-reserved IP address to assign to the Load Balancer on this Private Network.
8241
- :param pulumi.Input[_builtins.str] static_config: Define an IP address in the subnet of your private network that will be assigned to your load balancer instance
8346
+ :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] static_configs: Define an IP address in the subnet of your private network that will be assigned to your load balancer instance
8242
8347
  :param pulumi.Input[_builtins.str] status: The status of the private network connection.
8243
8348
  :param pulumi.Input[_builtins.str] zone: `zone`) The zone of the Load Balancer.
8244
8349
  """
@@ -8250,11 +8355,11 @@ class LoadbalancerPrivateNetworkArgs:
8250
8355
  pulumi.set(__self__, "dhcp_config", dhcp_config)
8251
8356
  if ipam_ids is not None:
8252
8357
  pulumi.set(__self__, "ipam_ids", ipam_ids)
8253
- if static_config is not None:
8358
+ if static_configs is not None:
8254
8359
  warnings.warn("""static_config field is deprecated, please use `private_network_id` or `ipam_ids` instead""", DeprecationWarning)
8255
- pulumi.log.warn("""static_config is deprecated: static_config field is deprecated, please use `private_network_id` or `ipam_ids` instead""")
8256
- if static_config is not None:
8257
- pulumi.set(__self__, "static_config", static_config)
8360
+ pulumi.log.warn("""static_configs is deprecated: static_config field is deprecated, please use `private_network_id` or `ipam_ids` instead""")
8361
+ if static_configs is not None:
8362
+ pulumi.set(__self__, "static_configs", static_configs)
8258
8363
  if status is not None:
8259
8364
  pulumi.set(__self__, "status", status)
8260
8365
  if zone is not None:
@@ -8299,17 +8404,17 @@ class LoadbalancerPrivateNetworkArgs:
8299
8404
  pulumi.set(self, "ipam_ids", value)
8300
8405
 
8301
8406
  @_builtins.property
8302
- @pulumi.getter(name="staticConfig")
8407
+ @pulumi.getter(name="staticConfigs")
8303
8408
  @_utilities.deprecated("""static_config field is deprecated, please use `private_network_id` or `ipam_ids` instead""")
8304
- def static_config(self) -> Optional[pulumi.Input[_builtins.str]]:
8409
+ def static_configs(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]:
8305
8410
  """
8306
8411
  Define an IP address in the subnet of your private network that will be assigned to your load balancer instance
8307
8412
  """
8308
- return pulumi.get(self, "static_config")
8413
+ return pulumi.get(self, "static_configs")
8309
8414
 
8310
- @static_config.setter
8311
- def static_config(self, value: Optional[pulumi.Input[_builtins.str]]):
8312
- pulumi.set(self, "static_config", value)
8415
+ @static_configs.setter
8416
+ def static_configs(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]):
8417
+ pulumi.set(self, "static_configs", value)
8313
8418
 
8314
8419
  @_builtins.property
8315
8420
  @pulumi.getter