pulumiverse-scaleway 1.20.0a1730699372__py3-none-any.whl → 1.20.0a1730719023__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.

@@ -59,7 +59,7 @@ class InstanceServerArgs:
59
59
 
60
60
  > **Important:** If this field contains local volumes, you have to first detach them, in one apply, and then delete the volume in another apply.
61
61
  :param pulumi.Input[str] boot_type: The boot Type of the server. Possible values are: `local`, `bootscript` or `rescue`.
62
- :param pulumi.Input[str] bootscript_id: The ID of the bootscript to use (set boot_type to `bootscript`).
62
+ :param pulumi.Input[str] bootscript_id: ID of the target bootscript (set boot_type to bootscript)
63
63
  :param pulumi.Input[str] cloud_init: The cloud init script associated with this server
64
64
  :param pulumi.Input[bool] enable_dynamic_ip: If true a dynamic IP will be attached to the server.
65
65
  :param pulumi.Input[bool] enable_ipv6: Determines if IPv6 is enabled for the server. Useful only with `routed_ip_enabled` as false, otherwise ipv6 is always supported.
@@ -138,6 +138,9 @@ class InstanceServerArgs:
138
138
  pulumi.set(__self__, "replace_on_type_change", replace_on_type_change)
139
139
  if root_volume is not None:
140
140
  pulumi.set(__self__, "root_volume", root_volume)
141
+ if routed_ip_enabled is not None:
142
+ warnings.warn("""Routed IP is the default configuration, it should always be true""", DeprecationWarning)
143
+ pulumi.log.warn("""routed_ip_enabled is deprecated: Routed IP is the default configuration, it should always be true""")
141
144
  if routed_ip_enabled is not None:
142
145
  pulumi.set(__self__, "routed_ip_enabled", routed_ip_enabled)
143
146
  if security_group_id is not None:
@@ -202,7 +205,7 @@ class InstanceServerArgs:
202
205
  @_utilities.deprecated("""bootscript is not supported anymore.""")
203
206
  def bootscript_id(self) -> Optional[pulumi.Input[str]]:
204
207
  """
205
- The ID of the bootscript to use (set boot_type to `bootscript`).
208
+ ID of the target bootscript (set boot_type to bootscript)
206
209
  """
207
210
  return pulumi.get(self, "bootscript_id")
208
211
 
@@ -381,6 +384,7 @@ class InstanceServerArgs:
381
384
 
382
385
  @property
383
386
  @pulumi.getter(name="routedIpEnabled")
387
+ @_utilities.deprecated("""Routed IP is the default configuration, it should always be true""")
384
388
  def routed_ip_enabled(self) -> Optional[pulumi.Input[bool]]:
385
389
  """
386
390
  If true, the server will support routed ips only. Changing it to true will migrate the server and its IP to routed type.
@@ -501,7 +505,7 @@ class _InstanceServerState:
501
505
 
502
506
  > **Important:** If this field contains local volumes, you have to first detach them, in one apply, and then delete the volume in another apply.
503
507
  :param pulumi.Input[str] boot_type: The boot Type of the server. Possible values are: `local`, `bootscript` or `rescue`.
504
- :param pulumi.Input[str] bootscript_id: The ID of the bootscript to use (set boot_type to `bootscript`).
508
+ :param pulumi.Input[str] bootscript_id: ID of the target bootscript (set boot_type to bootscript)
505
509
  :param pulumi.Input[str] cloud_init: The cloud init script associated with this server
506
510
  :param pulumi.Input[bool] enable_dynamic_ip: If true a dynamic IP will be attached to the server.
507
511
  :param pulumi.Input[bool] enable_ipv6: Determines if IPv6 is enabled for the server. Useful only with `routed_ip_enabled` as false, otherwise ipv6 is always supported.
@@ -591,6 +595,9 @@ class _InstanceServerState:
591
595
  pulumi.log.warn("""ipv6_gateway is deprecated: Please use a InstanceIp with a `routed_ipv6` type""")
592
596
  if ipv6_gateway is not None:
593
597
  pulumi.set(__self__, "ipv6_gateway", ipv6_gateway)
598
+ if ipv6_prefix_length is not None:
599
+ warnings.warn("""Please use a InstanceIp with a `routed_ipv6` type""", DeprecationWarning)
600
+ pulumi.log.warn("""ipv6_prefix_length is deprecated: Please use a InstanceIp with a `routed_ipv6` type""")
594
601
  if ipv6_prefix_length is not None:
595
602
  pulumi.set(__self__, "ipv6_prefix_length", ipv6_prefix_length)
596
603
  if name is not None:
@@ -618,6 +625,9 @@ class _InstanceServerState:
618
625
  pulumi.set(__self__, "replace_on_type_change", replace_on_type_change)
619
626
  if root_volume is not None:
620
627
  pulumi.set(__self__, "root_volume", root_volume)
628
+ if routed_ip_enabled is not None:
629
+ warnings.warn("""Routed IP is the default configuration, it should always be true""", DeprecationWarning)
630
+ pulumi.log.warn("""routed_ip_enabled is deprecated: Routed IP is the default configuration, it should always be true""")
621
631
  if routed_ip_enabled is not None:
622
632
  pulumi.set(__self__, "routed_ip_enabled", routed_ip_enabled)
623
633
  if security_group_id is not None:
@@ -667,7 +677,7 @@ class _InstanceServerState:
667
677
  @_utilities.deprecated("""bootscript is not supported anymore.""")
668
678
  def bootscript_id(self) -> Optional[pulumi.Input[str]]:
669
679
  """
670
- The ID of the bootscript to use (set boot_type to `bootscript`).
680
+ ID of the target bootscript (set boot_type to bootscript)
671
681
  """
672
682
  return pulumi.get(self, "bootscript_id")
673
683
 
@@ -786,6 +796,7 @@ class _InstanceServerState:
786
796
 
787
797
  @property
788
798
  @pulumi.getter(name="ipv6PrefixLength")
799
+ @_utilities.deprecated("""Please use a InstanceIp with a `routed_ipv6` type""")
789
800
  def ipv6_prefix_length(self) -> Optional[pulumi.Input[int]]:
790
801
  """
791
802
  The prefix length of the ipv6 subnet routed to the server. ( Only set when enable_ipv6 is set to true )
@@ -936,6 +947,7 @@ class _InstanceServerState:
936
947
 
937
948
  @property
938
949
  @pulumi.getter(name="routedIpEnabled")
950
+ @_utilities.deprecated("""Routed IP is the default configuration, it should always be true""")
939
951
  def routed_ip_enabled(self) -> Optional[pulumi.Input[bool]]:
940
952
  """
941
953
  If true, the server will support routed ips only. Changing it to true will migrate the server and its IP to routed type.
@@ -1252,7 +1264,7 @@ class InstanceServer(pulumi.CustomResource):
1252
1264
 
1253
1265
  > **Important:** If this field contains local volumes, you have to first detach them, in one apply, and then delete the volume in another apply.
1254
1266
  :param pulumi.Input[str] boot_type: The boot Type of the server. Possible values are: `local`, `bootscript` or `rescue`.
1255
- :param pulumi.Input[str] bootscript_id: The ID of the bootscript to use (set boot_type to `bootscript`).
1267
+ :param pulumi.Input[str] bootscript_id: ID of the target bootscript (set boot_type to bootscript)
1256
1268
  :param pulumi.Input[str] cloud_init: The cloud init script associated with this server
1257
1269
  :param pulumi.Input[bool] enable_dynamic_ip: If true a dynamic IP will be attached to the server.
1258
1270
  :param pulumi.Input[bool] enable_ipv6: Determines if IPv6 is enabled for the server. Useful only with `routed_ip_enabled` as false, otherwise ipv6 is always supported.
@@ -1620,7 +1632,7 @@ class InstanceServer(pulumi.CustomResource):
1620
1632
 
1621
1633
  > **Important:** If this field contains local volumes, you have to first detach them, in one apply, and then delete the volume in another apply.
1622
1634
  :param pulumi.Input[str] boot_type: The boot Type of the server. Possible values are: `local`, `bootscript` or `rescue`.
1623
- :param pulumi.Input[str] bootscript_id: The ID of the bootscript to use (set boot_type to `bootscript`).
1635
+ :param pulumi.Input[str] bootscript_id: ID of the target bootscript (set boot_type to bootscript)
1624
1636
  :param pulumi.Input[str] cloud_init: The cloud init script associated with this server
1625
1637
  :param pulumi.Input[bool] enable_dynamic_ip: If true a dynamic IP will be attached to the server.
1626
1638
  :param pulumi.Input[bool] enable_ipv6: Determines if IPv6 is enabled for the server. Useful only with `routed_ip_enabled` as false, otherwise ipv6 is always supported.
@@ -1738,7 +1750,7 @@ class InstanceServer(pulumi.CustomResource):
1738
1750
  @_utilities.deprecated("""bootscript is not supported anymore.""")
1739
1751
  def bootscript_id(self) -> pulumi.Output[str]:
1740
1752
  """
1741
- The ID of the bootscript to use (set boot_type to `bootscript`).
1753
+ ID of the target bootscript (set boot_type to bootscript)
1742
1754
  """
1743
1755
  return pulumi.get(self, "bootscript_id")
1744
1756
 
@@ -1821,6 +1833,7 @@ class InstanceServer(pulumi.CustomResource):
1821
1833
 
1822
1834
  @property
1823
1835
  @pulumi.getter(name="ipv6PrefixLength")
1836
+ @_utilities.deprecated("""Please use a InstanceIp with a `routed_ipv6` type""")
1824
1837
  def ipv6_prefix_length(self) -> pulumi.Output[int]:
1825
1838
  """
1826
1839
  The prefix length of the ipv6 subnet routed to the server. ( Only set when enable_ipv6 is set to true )
@@ -1923,6 +1936,7 @@ class InstanceServer(pulumi.CustomResource):
1923
1936
 
1924
1937
  @property
1925
1938
  @pulumi.getter(name="routedIpEnabled")
1939
+ @_utilities.deprecated("""Routed IP is the default configuration, it should always be true""")
1926
1940
  def routed_ip_enabled(self) -> pulumi.Output[bool]:
1927
1941
  """
1928
1942
  If true, the server will support routed ips only. Changing it to true will migrate the server and its IP to routed type.
@@ -22,18 +22,22 @@ class IotNetworkArgs:
22
22
  hub_id: pulumi.Input[str],
23
23
  type: pulumi.Input[str],
24
24
  name: Optional[pulumi.Input[str]] = None,
25
+ region: Optional[pulumi.Input[str]] = None,
25
26
  topic_prefix: Optional[pulumi.Input[str]] = None):
26
27
  """
27
28
  The set of arguments for constructing a IotNetwork resource.
28
29
  :param pulumi.Input[str] hub_id: The hub ID to which the Network will be attached to.
29
30
  :param pulumi.Input[str] type: The network type to create (e.g. `sigfox`).
30
31
  :param pulumi.Input[str] name: The name of the IoT Network you want to create (e.g. `my-net`).
32
+ :param pulumi.Input[str] region: (Defaults to provider `region`) The region in which the Network is attached to.
31
33
  :param pulumi.Input[str] topic_prefix: The prefix that will be prepended to all topics for this Network.
32
34
  """
33
35
  pulumi.set(__self__, "hub_id", hub_id)
34
36
  pulumi.set(__self__, "type", type)
35
37
  if name is not None:
36
38
  pulumi.set(__self__, "name", name)
39
+ if region is not None:
40
+ pulumi.set(__self__, "region", region)
37
41
  if topic_prefix is not None:
38
42
  pulumi.set(__self__, "topic_prefix", topic_prefix)
39
43
 
@@ -73,6 +77,18 @@ class IotNetworkArgs:
73
77
  def name(self, value: Optional[pulumi.Input[str]]):
74
78
  pulumi.set(self, "name", value)
75
79
 
80
+ @property
81
+ @pulumi.getter
82
+ def region(self) -> Optional[pulumi.Input[str]]:
83
+ """
84
+ (Defaults to provider `region`) The region in which the Network is attached to.
85
+ """
86
+ return pulumi.get(self, "region")
87
+
88
+ @region.setter
89
+ def region(self, value: Optional[pulumi.Input[str]]):
90
+ pulumi.set(self, "region", value)
91
+
76
92
  @property
77
93
  @pulumi.getter(name="topicPrefix")
78
94
  def topic_prefix(self) -> Optional[pulumi.Input[str]]:
@@ -93,6 +109,7 @@ class _IotNetworkState:
93
109
  endpoint: Optional[pulumi.Input[str]] = None,
94
110
  hub_id: Optional[pulumi.Input[str]] = None,
95
111
  name: Optional[pulumi.Input[str]] = None,
112
+ region: Optional[pulumi.Input[str]] = None,
96
113
  secret: Optional[pulumi.Input[str]] = None,
97
114
  topic_prefix: Optional[pulumi.Input[str]] = None,
98
115
  type: Optional[pulumi.Input[str]] = None):
@@ -102,6 +119,7 @@ class _IotNetworkState:
102
119
  :param pulumi.Input[str] endpoint: The endpoint to use when interacting with the network.
103
120
  :param pulumi.Input[str] hub_id: The hub ID to which the Network will be attached to.
104
121
  :param pulumi.Input[str] name: The name of the IoT Network you want to create (e.g. `my-net`).
122
+ :param pulumi.Input[str] region: (Defaults to provider `region`) The region in which the Network is attached to.
105
123
  :param pulumi.Input[str] secret: The endpoint key to keep secret.
106
124
  :param pulumi.Input[str] topic_prefix: The prefix that will be prepended to all topics for this Network.
107
125
  :param pulumi.Input[str] type: The network type to create (e.g. `sigfox`).
@@ -114,6 +132,8 @@ class _IotNetworkState:
114
132
  pulumi.set(__self__, "hub_id", hub_id)
115
133
  if name is not None:
116
134
  pulumi.set(__self__, "name", name)
135
+ if region is not None:
136
+ pulumi.set(__self__, "region", region)
117
137
  if secret is not None:
118
138
  pulumi.set(__self__, "secret", secret)
119
139
  if topic_prefix is not None:
@@ -169,6 +189,18 @@ class _IotNetworkState:
169
189
  def name(self, value: Optional[pulumi.Input[str]]):
170
190
  pulumi.set(self, "name", value)
171
191
 
192
+ @property
193
+ @pulumi.getter
194
+ def region(self) -> Optional[pulumi.Input[str]]:
195
+ """
196
+ (Defaults to provider `region`) The region in which the Network is attached to.
197
+ """
198
+ return pulumi.get(self, "region")
199
+
200
+ @region.setter
201
+ def region(self, value: Optional[pulumi.Input[str]]):
202
+ pulumi.set(self, "region", value)
203
+
172
204
  @property
173
205
  @pulumi.getter
174
206
  def secret(self) -> Optional[pulumi.Input[str]]:
@@ -213,6 +245,7 @@ class IotNetwork(pulumi.CustomResource):
213
245
  opts: Optional[pulumi.ResourceOptions] = None,
214
246
  hub_id: Optional[pulumi.Input[str]] = None,
215
247
  name: Optional[pulumi.Input[str]] = None,
248
+ region: Optional[pulumi.Input[str]] = None,
216
249
  topic_prefix: Optional[pulumi.Input[str]] = None,
217
250
  type: Optional[pulumi.Input[str]] = None,
218
251
  __props__=None):
@@ -246,6 +279,7 @@ class IotNetwork(pulumi.CustomResource):
246
279
  :param pulumi.ResourceOptions opts: Options for the resource.
247
280
  :param pulumi.Input[str] hub_id: The hub ID to which the Network will be attached to.
248
281
  :param pulumi.Input[str] name: The name of the IoT Network you want to create (e.g. `my-net`).
282
+ :param pulumi.Input[str] region: (Defaults to provider `region`) The region in which the Network is attached to.
249
283
  :param pulumi.Input[str] topic_prefix: The prefix that will be prepended to all topics for this Network.
250
284
  :param pulumi.Input[str] type: The network type to create (e.g. `sigfox`).
251
285
  """
@@ -298,6 +332,7 @@ class IotNetwork(pulumi.CustomResource):
298
332
  opts: Optional[pulumi.ResourceOptions] = None,
299
333
  hub_id: Optional[pulumi.Input[str]] = None,
300
334
  name: Optional[pulumi.Input[str]] = None,
335
+ region: Optional[pulumi.Input[str]] = None,
301
336
  topic_prefix: Optional[pulumi.Input[str]] = None,
302
337
  type: Optional[pulumi.Input[str]] = None,
303
338
  __props__=None):
@@ -313,6 +348,7 @@ class IotNetwork(pulumi.CustomResource):
313
348
  raise TypeError("Missing required property 'hub_id'")
314
349
  __props__.__dict__["hub_id"] = hub_id
315
350
  __props__.__dict__["name"] = name
351
+ __props__.__dict__["region"] = region
316
352
  __props__.__dict__["topic_prefix"] = topic_prefix
317
353
  if type is None and not opts.urn:
318
354
  raise TypeError("Missing required property 'type'")
@@ -336,6 +372,7 @@ class IotNetwork(pulumi.CustomResource):
336
372
  endpoint: Optional[pulumi.Input[str]] = None,
337
373
  hub_id: Optional[pulumi.Input[str]] = None,
338
374
  name: Optional[pulumi.Input[str]] = None,
375
+ region: Optional[pulumi.Input[str]] = None,
339
376
  secret: Optional[pulumi.Input[str]] = None,
340
377
  topic_prefix: Optional[pulumi.Input[str]] = None,
341
378
  type: Optional[pulumi.Input[str]] = None) -> 'IotNetwork':
@@ -350,6 +387,7 @@ class IotNetwork(pulumi.CustomResource):
350
387
  :param pulumi.Input[str] endpoint: The endpoint to use when interacting with the network.
351
388
  :param pulumi.Input[str] hub_id: The hub ID to which the Network will be attached to.
352
389
  :param pulumi.Input[str] name: The name of the IoT Network you want to create (e.g. `my-net`).
390
+ :param pulumi.Input[str] region: (Defaults to provider `region`) The region in which the Network is attached to.
353
391
  :param pulumi.Input[str] secret: The endpoint key to keep secret.
354
392
  :param pulumi.Input[str] topic_prefix: The prefix that will be prepended to all topics for this Network.
355
393
  :param pulumi.Input[str] type: The network type to create (e.g. `sigfox`).
@@ -362,6 +400,7 @@ class IotNetwork(pulumi.CustomResource):
362
400
  __props__.__dict__["endpoint"] = endpoint
363
401
  __props__.__dict__["hub_id"] = hub_id
364
402
  __props__.__dict__["name"] = name
403
+ __props__.__dict__["region"] = region
365
404
  __props__.__dict__["secret"] = secret
366
405
  __props__.__dict__["topic_prefix"] = topic_prefix
367
406
  __props__.__dict__["type"] = type
@@ -399,6 +438,14 @@ class IotNetwork(pulumi.CustomResource):
399
438
  """
400
439
  return pulumi.get(self, "name")
401
440
 
441
+ @property
442
+ @pulumi.getter
443
+ def region(self) -> pulumi.Output[str]:
444
+ """
445
+ (Defaults to provider `region`) The region in which the Network is attached to.
446
+ """
447
+ return pulumi.get(self, "region")
448
+
402
449
  @property
403
450
  @pulumi.getter
404
451
  def secret(self) -> pulumi.Output[str]:
@@ -371,7 +371,7 @@ class IotRoute(pulumi.CustomResource):
371
371
  "verb": "get",
372
372
  "uri": "http://scaleway.com",
373
373
  "headers": {
374
- "x_awesome_header": "my-awesome-value",
374
+ "X-awesome-header": "my-awesome-value",
375
375
  },
376
376
  })
377
377
  ```
@@ -488,7 +488,7 @@ class IotRoute(pulumi.CustomResource):
488
488
  "verb": "get",
489
489
  "uri": "http://scaleway.com",
490
490
  "headers": {
491
- "x_awesome_header": "my-awesome-value",
491
+ "X-awesome-header": "my-awesome-value",
492
492
  },
493
493
  })
494
494
  ```
@@ -23,6 +23,7 @@ class IpamIpArgs:
23
23
  def __init__(__self__, *,
24
24
  sources: pulumi.Input[Sequence[pulumi.Input['IpamIpSourceArgs']]],
25
25
  address: Optional[pulumi.Input[str]] = None,
26
+ custom_resources: Optional[pulumi.Input[Sequence[pulumi.Input['IpamIpCustomResourceArgs']]]] = None,
26
27
  is_ipv6: Optional[pulumi.Input[bool]] = None,
27
28
  project_id: Optional[pulumi.Input[str]] = None,
28
29
  region: Optional[pulumi.Input[str]] = None,
@@ -31,6 +32,7 @@ class IpamIpArgs:
31
32
  The set of arguments for constructing a IpamIp resource.
32
33
  :param pulumi.Input[Sequence[pulumi.Input['IpamIpSourceArgs']]] sources: The source in which to book the IP.
33
34
  :param pulumi.Input[str] address: Request a specific IP in the requested source pool
35
+ :param pulumi.Input[Sequence[pulumi.Input['IpamIpCustomResourceArgs']]] custom_resources: The custom resource in which to book the IP
34
36
  :param pulumi.Input[bool] is_ipv6: Defines whether to request an IPv6 address instead of IPv4.
35
37
  :param pulumi.Input[str] project_id: `project_id`) The ID of the Project the IP is associated with.
36
38
  :param pulumi.Input[str] region: `region`) The region of the IP.
@@ -39,6 +41,8 @@ class IpamIpArgs:
39
41
  pulumi.set(__self__, "sources", sources)
40
42
  if address is not None:
41
43
  pulumi.set(__self__, "address", address)
44
+ if custom_resources is not None:
45
+ pulumi.set(__self__, "custom_resources", custom_resources)
42
46
  if is_ipv6 is not None:
43
47
  pulumi.set(__self__, "is_ipv6", is_ipv6)
44
48
  if project_id is not None:
@@ -72,6 +76,18 @@ class IpamIpArgs:
72
76
  def address(self, value: Optional[pulumi.Input[str]]):
73
77
  pulumi.set(self, "address", value)
74
78
 
79
+ @property
80
+ @pulumi.getter(name="customResources")
81
+ def custom_resources(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['IpamIpCustomResourceArgs']]]]:
82
+ """
83
+ The custom resource in which to book the IP
84
+ """
85
+ return pulumi.get(self, "custom_resources")
86
+
87
+ @custom_resources.setter
88
+ def custom_resources(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['IpamIpCustomResourceArgs']]]]):
89
+ pulumi.set(self, "custom_resources", value)
90
+
75
91
  @property
76
92
  @pulumi.getter(name="isIpv6")
77
93
  def is_ipv6(self) -> Optional[pulumi.Input[bool]]:
@@ -126,6 +142,7 @@ class _IpamIpState:
126
142
  def __init__(__self__, *,
127
143
  address: Optional[pulumi.Input[str]] = None,
128
144
  created_at: Optional[pulumi.Input[str]] = None,
145
+ custom_resources: Optional[pulumi.Input[Sequence[pulumi.Input['IpamIpCustomResourceArgs']]]] = None,
129
146
  is_ipv6: Optional[pulumi.Input[bool]] = None,
130
147
  project_id: Optional[pulumi.Input[str]] = None,
131
148
  region: Optional[pulumi.Input[str]] = None,
@@ -139,6 +156,7 @@ class _IpamIpState:
139
156
  Input properties used for looking up and filtering IpamIp resources.
140
157
  :param pulumi.Input[str] address: Request a specific IP in the requested source pool
141
158
  :param pulumi.Input[str] created_at: Date and time of IP's creation (RFC 3339 format).
159
+ :param pulumi.Input[Sequence[pulumi.Input['IpamIpCustomResourceArgs']]] custom_resources: The custom resource in which to book the IP
142
160
  :param pulumi.Input[bool] is_ipv6: Defines whether to request an IPv6 address instead of IPv4.
143
161
  :param pulumi.Input[str] project_id: `project_id`) The ID of the Project the IP is associated with.
144
162
  :param pulumi.Input[str] region: `region`) The region of the IP.
@@ -153,6 +171,8 @@ class _IpamIpState:
153
171
  pulumi.set(__self__, "address", address)
154
172
  if created_at is not None:
155
173
  pulumi.set(__self__, "created_at", created_at)
174
+ if custom_resources is not None:
175
+ pulumi.set(__self__, "custom_resources", custom_resources)
156
176
  if is_ipv6 is not None:
157
177
  pulumi.set(__self__, "is_ipv6", is_ipv6)
158
178
  if project_id is not None:
@@ -196,6 +216,18 @@ class _IpamIpState:
196
216
  def created_at(self, value: Optional[pulumi.Input[str]]):
197
217
  pulumi.set(self, "created_at", value)
198
218
 
219
+ @property
220
+ @pulumi.getter(name="customResources")
221
+ def custom_resources(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['IpamIpCustomResourceArgs']]]]:
222
+ """
223
+ The custom resource in which to book the IP
224
+ """
225
+ return pulumi.get(self, "custom_resources")
226
+
227
+ @custom_resources.setter
228
+ def custom_resources(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['IpamIpCustomResourceArgs']]]]):
229
+ pulumi.set(self, "custom_resources", value)
230
+
199
231
  @property
200
232
  @pulumi.getter(name="isIpv6")
201
233
  def is_ipv6(self) -> Optional[pulumi.Input[bool]]:
@@ -311,6 +343,7 @@ class IpamIp(pulumi.CustomResource):
311
343
  resource_name: str,
312
344
  opts: Optional[pulumi.ResourceOptions] = None,
313
345
  address: Optional[pulumi.Input[str]] = None,
346
+ custom_resources: Optional[pulumi.Input[Sequence[pulumi.Input[Union['IpamIpCustomResourceArgs', 'IpamIpCustomResourceArgsDict']]]]] = None,
314
347
  is_ipv6: Optional[pulumi.Input[bool]] = None,
315
348
  project_id: Optional[pulumi.Input[str]] = None,
316
349
  region: Optional[pulumi.Input[str]] = None,
@@ -379,6 +412,28 @@ class IpamIp(pulumi.CustomResource):
379
412
  }])
380
413
  ```
381
414
 
415
+ ### Book an IP for a custom resource
416
+
417
+ ```python
418
+ import pulumi
419
+ import pulumiverse_scaleway as scaleway
420
+
421
+ vpc01 = scaleway.Vpc("vpc01", name="my vpc")
422
+ pn01 = scaleway.VpcPrivateNetwork("pn01",
423
+ vpc_id=vpc01.id,
424
+ ipv4_subnet={
425
+ "subnet": "172.16.32.0/22",
426
+ })
427
+ ip01 = scaleway.IpamIp("ip01",
428
+ address="172.16.32.7",
429
+ sources=[{
430
+ "private_network_id": pn01.id,
431
+ }],
432
+ custom_resources=[{
433
+ "mac_address": "bc:24:11:74:d0:6a",
434
+ }])
435
+ ```
436
+
382
437
  ## Import
383
438
 
384
439
  IPAM IPs can be imported using `{region}/{id}`, e.g.
@@ -392,6 +447,7 @@ class IpamIp(pulumi.CustomResource):
392
447
  :param str resource_name: The name of the resource.
393
448
  :param pulumi.ResourceOptions opts: Options for the resource.
394
449
  :param pulumi.Input[str] address: Request a specific IP in the requested source pool
450
+ :param pulumi.Input[Sequence[pulumi.Input[Union['IpamIpCustomResourceArgs', 'IpamIpCustomResourceArgsDict']]]] custom_resources: The custom resource in which to book the IP
395
451
  :param pulumi.Input[bool] is_ipv6: Defines whether to request an IPv6 address instead of IPv4.
396
452
  :param pulumi.Input[str] project_id: `project_id`) The ID of the Project the IP is associated with.
397
453
  :param pulumi.Input[str] region: `region`) The region of the IP.
@@ -466,6 +522,28 @@ class IpamIp(pulumi.CustomResource):
466
522
  }])
467
523
  ```
468
524
 
525
+ ### Book an IP for a custom resource
526
+
527
+ ```python
528
+ import pulumi
529
+ import pulumiverse_scaleway as scaleway
530
+
531
+ vpc01 = scaleway.Vpc("vpc01", name="my vpc")
532
+ pn01 = scaleway.VpcPrivateNetwork("pn01",
533
+ vpc_id=vpc01.id,
534
+ ipv4_subnet={
535
+ "subnet": "172.16.32.0/22",
536
+ })
537
+ ip01 = scaleway.IpamIp("ip01",
538
+ address="172.16.32.7",
539
+ sources=[{
540
+ "private_network_id": pn01.id,
541
+ }],
542
+ custom_resources=[{
543
+ "mac_address": "bc:24:11:74:d0:6a",
544
+ }])
545
+ ```
546
+
469
547
  ## Import
470
548
 
471
549
  IPAM IPs can be imported using `{region}/{id}`, e.g.
@@ -492,6 +570,7 @@ class IpamIp(pulumi.CustomResource):
492
570
  resource_name: str,
493
571
  opts: Optional[pulumi.ResourceOptions] = None,
494
572
  address: Optional[pulumi.Input[str]] = None,
573
+ custom_resources: Optional[pulumi.Input[Sequence[pulumi.Input[Union['IpamIpCustomResourceArgs', 'IpamIpCustomResourceArgsDict']]]]] = None,
495
574
  is_ipv6: Optional[pulumi.Input[bool]] = None,
496
575
  project_id: Optional[pulumi.Input[str]] = None,
497
576
  region: Optional[pulumi.Input[str]] = None,
@@ -507,6 +586,7 @@ class IpamIp(pulumi.CustomResource):
507
586
  __props__ = IpamIpArgs.__new__(IpamIpArgs)
508
587
 
509
588
  __props__.__dict__["address"] = address
589
+ __props__.__dict__["custom_resources"] = custom_resources
510
590
  __props__.__dict__["is_ipv6"] = is_ipv6
511
591
  __props__.__dict__["project_id"] = project_id
512
592
  __props__.__dict__["region"] = region
@@ -531,6 +611,7 @@ class IpamIp(pulumi.CustomResource):
531
611
  opts: Optional[pulumi.ResourceOptions] = None,
532
612
  address: Optional[pulumi.Input[str]] = None,
533
613
  created_at: Optional[pulumi.Input[str]] = None,
614
+ custom_resources: Optional[pulumi.Input[Sequence[pulumi.Input[Union['IpamIpCustomResourceArgs', 'IpamIpCustomResourceArgsDict']]]]] = None,
534
615
  is_ipv6: Optional[pulumi.Input[bool]] = None,
535
616
  project_id: Optional[pulumi.Input[str]] = None,
536
617
  region: Optional[pulumi.Input[str]] = None,
@@ -549,6 +630,7 @@ class IpamIp(pulumi.CustomResource):
549
630
  :param pulumi.ResourceOptions opts: Options for the resource.
550
631
  :param pulumi.Input[str] address: Request a specific IP in the requested source pool
551
632
  :param pulumi.Input[str] created_at: Date and time of IP's creation (RFC 3339 format).
633
+ :param pulumi.Input[Sequence[pulumi.Input[Union['IpamIpCustomResourceArgs', 'IpamIpCustomResourceArgsDict']]]] custom_resources: The custom resource in which to book the IP
552
634
  :param pulumi.Input[bool] is_ipv6: Defines whether to request an IPv6 address instead of IPv4.
553
635
  :param pulumi.Input[str] project_id: `project_id`) The ID of the Project the IP is associated with.
554
636
  :param pulumi.Input[str] region: `region`) The region of the IP.
@@ -565,6 +647,7 @@ class IpamIp(pulumi.CustomResource):
565
647
 
566
648
  __props__.__dict__["address"] = address
567
649
  __props__.__dict__["created_at"] = created_at
650
+ __props__.__dict__["custom_resources"] = custom_resources
568
651
  __props__.__dict__["is_ipv6"] = is_ipv6
569
652
  __props__.__dict__["project_id"] = project_id
570
653
  __props__.__dict__["region"] = region
@@ -592,6 +675,14 @@ class IpamIp(pulumi.CustomResource):
592
675
  """
593
676
  return pulumi.get(self, "created_at")
594
677
 
678
+ @property
679
+ @pulumi.getter(name="customResources")
680
+ def custom_resources(self) -> pulumi.Output[Optional[Sequence['outputs.IpamIpCustomResource']]]:
681
+ """
682
+ The custom resource in which to book the IP
683
+ """
684
+ return pulumi.get(self, "custom_resources")
685
+
595
686
  @property
596
687
  @pulumi.getter(name="isIpv6")
597
688
  def is_ipv6(self) -> pulumi.Output[Optional[bool]]: