pulumiverse-scaleway 1.18.0__py3-none-any.whl → 1.19.0__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of pulumiverse-scaleway might be problematic. Click here for more details.
- pulumiverse_scaleway/__init__.py +1 -57
- pulumiverse_scaleway/_inputs.py +0 -446
- pulumiverse_scaleway/cockpit_alert_manager.py +52 -0
- pulumiverse_scaleway/get_instance_private_nic.py +12 -1
- pulumiverse_scaleway/get_registry_image_tag.py +229 -0
- pulumiverse_scaleway/instance_private_nic.py +103 -2
- pulumiverse_scaleway/outputs.py +0 -321
- pulumiverse_scaleway/pulumi-plugin.json +1 -1
- {pulumiverse_scaleway-1.18.0.dist-info → pulumiverse_scaleway-1.19.0.dist-info}/METADATA +1 -1
- {pulumiverse_scaleway-1.18.0.dist-info → pulumiverse_scaleway-1.19.0.dist-info}/RECORD +12 -20
- pulumiverse_scaleway/documentdb_database.py +0 -450
- pulumiverse_scaleway/documentdb_instance.py +0 -812
- pulumiverse_scaleway/documentdb_private_network_endpoint.py +0 -352
- pulumiverse_scaleway/documentdb_privilege.py +0 -402
- pulumiverse_scaleway/documentdb_read_replica.py +0 -405
- pulumiverse_scaleway/documentdb_user.py +0 -442
- pulumiverse_scaleway/get_documentdb_database.py +0 -198
- pulumiverse_scaleway/get_documentdb_instance.py +0 -245
- pulumiverse_scaleway/get_documentdb_load_balancer_endpoint.py +0 -198
- {pulumiverse_scaleway-1.18.0.dist-info → pulumiverse_scaleway-1.19.0.dist-info}/WHEEL +0 -0
- {pulumiverse_scaleway-1.18.0.dist-info → pulumiverse_scaleway-1.19.0.dist-info}/top_level.txt +0 -0
|
@@ -0,0 +1,229 @@
|
|
|
1
|
+
# coding=utf-8
|
|
2
|
+
# *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. ***
|
|
3
|
+
# *** Do not edit by hand unless you're certain you know what you are doing! ***
|
|
4
|
+
|
|
5
|
+
import copy
|
|
6
|
+
import warnings
|
|
7
|
+
import sys
|
|
8
|
+
import pulumi
|
|
9
|
+
import pulumi.runtime
|
|
10
|
+
from typing import Any, Mapping, Optional, Sequence, Union, overload
|
|
11
|
+
if sys.version_info >= (3, 11):
|
|
12
|
+
from typing import NotRequired, TypedDict, TypeAlias
|
|
13
|
+
else:
|
|
14
|
+
from typing_extensions import NotRequired, TypedDict, TypeAlias
|
|
15
|
+
from . import _utilities
|
|
16
|
+
|
|
17
|
+
__all__ = [
|
|
18
|
+
'GetRegistryImageTagResult',
|
|
19
|
+
'AwaitableGetRegistryImageTagResult',
|
|
20
|
+
'get_registry_image_tag',
|
|
21
|
+
'get_registry_image_tag_output',
|
|
22
|
+
]
|
|
23
|
+
|
|
24
|
+
@pulumi.output_type
|
|
25
|
+
class GetRegistryImageTagResult:
|
|
26
|
+
"""
|
|
27
|
+
A collection of values returned by getRegistryImageTag.
|
|
28
|
+
"""
|
|
29
|
+
def __init__(__self__, created_at=None, digest=None, id=None, image_id=None, name=None, organization_id=None, project_id=None, region=None, status=None, tag_id=None, updated_at=None):
|
|
30
|
+
if created_at and not isinstance(created_at, str):
|
|
31
|
+
raise TypeError("Expected argument 'created_at' to be a str")
|
|
32
|
+
pulumi.set(__self__, "created_at", created_at)
|
|
33
|
+
if digest and not isinstance(digest, str):
|
|
34
|
+
raise TypeError("Expected argument 'digest' to be a str")
|
|
35
|
+
pulumi.set(__self__, "digest", digest)
|
|
36
|
+
if id and not isinstance(id, str):
|
|
37
|
+
raise TypeError("Expected argument 'id' to be a str")
|
|
38
|
+
pulumi.set(__self__, "id", id)
|
|
39
|
+
if image_id and not isinstance(image_id, str):
|
|
40
|
+
raise TypeError("Expected argument 'image_id' to be a str")
|
|
41
|
+
pulumi.set(__self__, "image_id", image_id)
|
|
42
|
+
if name and not isinstance(name, str):
|
|
43
|
+
raise TypeError("Expected argument 'name' to be a str")
|
|
44
|
+
pulumi.set(__self__, "name", name)
|
|
45
|
+
if organization_id and not isinstance(organization_id, str):
|
|
46
|
+
raise TypeError("Expected argument 'organization_id' to be a str")
|
|
47
|
+
pulumi.set(__self__, "organization_id", organization_id)
|
|
48
|
+
if project_id and not isinstance(project_id, str):
|
|
49
|
+
raise TypeError("Expected argument 'project_id' to be a str")
|
|
50
|
+
pulumi.set(__self__, "project_id", project_id)
|
|
51
|
+
if region and not isinstance(region, str):
|
|
52
|
+
raise TypeError("Expected argument 'region' to be a str")
|
|
53
|
+
pulumi.set(__self__, "region", region)
|
|
54
|
+
if status and not isinstance(status, str):
|
|
55
|
+
raise TypeError("Expected argument 'status' to be a str")
|
|
56
|
+
pulumi.set(__self__, "status", status)
|
|
57
|
+
if tag_id and not isinstance(tag_id, str):
|
|
58
|
+
raise TypeError("Expected argument 'tag_id' to be a str")
|
|
59
|
+
pulumi.set(__self__, "tag_id", tag_id)
|
|
60
|
+
if updated_at and not isinstance(updated_at, str):
|
|
61
|
+
raise TypeError("Expected argument 'updated_at' to be a str")
|
|
62
|
+
pulumi.set(__self__, "updated_at", updated_at)
|
|
63
|
+
|
|
64
|
+
@property
|
|
65
|
+
@pulumi.getter(name="createdAt")
|
|
66
|
+
def created_at(self) -> str:
|
|
67
|
+
"""
|
|
68
|
+
The date and time when the registry image tag was created.
|
|
69
|
+
"""
|
|
70
|
+
return pulumi.get(self, "created_at")
|
|
71
|
+
|
|
72
|
+
@property
|
|
73
|
+
@pulumi.getter
|
|
74
|
+
def digest(self) -> str:
|
|
75
|
+
"""
|
|
76
|
+
Hash of the tag content. Several tags of the same image may have the same digest.
|
|
77
|
+
"""
|
|
78
|
+
return pulumi.get(self, "digest")
|
|
79
|
+
|
|
80
|
+
@property
|
|
81
|
+
@pulumi.getter
|
|
82
|
+
def id(self) -> str:
|
|
83
|
+
"""
|
|
84
|
+
The provider-assigned unique ID for this managed resource.
|
|
85
|
+
"""
|
|
86
|
+
return pulumi.get(self, "id")
|
|
87
|
+
|
|
88
|
+
@property
|
|
89
|
+
@pulumi.getter(name="imageId")
|
|
90
|
+
def image_id(self) -> str:
|
|
91
|
+
return pulumi.get(self, "image_id")
|
|
92
|
+
|
|
93
|
+
@property
|
|
94
|
+
@pulumi.getter
|
|
95
|
+
def name(self) -> Optional[str]:
|
|
96
|
+
return pulumi.get(self, "name")
|
|
97
|
+
|
|
98
|
+
@property
|
|
99
|
+
@pulumi.getter(name="organizationId")
|
|
100
|
+
def organization_id(self) -> str:
|
|
101
|
+
"""
|
|
102
|
+
The organization ID the image tag is associated with.
|
|
103
|
+
"""
|
|
104
|
+
return pulumi.get(self, "organization_id")
|
|
105
|
+
|
|
106
|
+
@property
|
|
107
|
+
@pulumi.getter(name="projectId")
|
|
108
|
+
def project_id(self) -> str:
|
|
109
|
+
return pulumi.get(self, "project_id")
|
|
110
|
+
|
|
111
|
+
@property
|
|
112
|
+
@pulumi.getter
|
|
113
|
+
def region(self) -> str:
|
|
114
|
+
return pulumi.get(self, "region")
|
|
115
|
+
|
|
116
|
+
@property
|
|
117
|
+
@pulumi.getter
|
|
118
|
+
def status(self) -> str:
|
|
119
|
+
"""
|
|
120
|
+
The status of the registry image tag.
|
|
121
|
+
"""
|
|
122
|
+
return pulumi.get(self, "status")
|
|
123
|
+
|
|
124
|
+
@property
|
|
125
|
+
@pulumi.getter(name="tagId")
|
|
126
|
+
def tag_id(self) -> Optional[str]:
|
|
127
|
+
return pulumi.get(self, "tag_id")
|
|
128
|
+
|
|
129
|
+
@property
|
|
130
|
+
@pulumi.getter(name="updatedAt")
|
|
131
|
+
def updated_at(self) -> str:
|
|
132
|
+
"""
|
|
133
|
+
The date and time of the last update to the registry image tag.
|
|
134
|
+
"""
|
|
135
|
+
return pulumi.get(self, "updated_at")
|
|
136
|
+
|
|
137
|
+
|
|
138
|
+
class AwaitableGetRegistryImageTagResult(GetRegistryImageTagResult):
|
|
139
|
+
# pylint: disable=using-constant-test
|
|
140
|
+
def __await__(self):
|
|
141
|
+
if False:
|
|
142
|
+
yield self
|
|
143
|
+
return GetRegistryImageTagResult(
|
|
144
|
+
created_at=self.created_at,
|
|
145
|
+
digest=self.digest,
|
|
146
|
+
id=self.id,
|
|
147
|
+
image_id=self.image_id,
|
|
148
|
+
name=self.name,
|
|
149
|
+
organization_id=self.organization_id,
|
|
150
|
+
project_id=self.project_id,
|
|
151
|
+
region=self.region,
|
|
152
|
+
status=self.status,
|
|
153
|
+
tag_id=self.tag_id,
|
|
154
|
+
updated_at=self.updated_at)
|
|
155
|
+
|
|
156
|
+
|
|
157
|
+
def get_registry_image_tag(image_id: Optional[str] = None,
|
|
158
|
+
name: Optional[str] = None,
|
|
159
|
+
project_id: Optional[str] = None,
|
|
160
|
+
region: Optional[str] = None,
|
|
161
|
+
tag_id: Optional[str] = None,
|
|
162
|
+
opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetRegistryImageTagResult:
|
|
163
|
+
"""
|
|
164
|
+
Gets information about a specific tag of a Container Registry image.
|
|
165
|
+
|
|
166
|
+
|
|
167
|
+
:param str image_id: The ID of the registry image.
|
|
168
|
+
:param str name: The name of the registry image tag.
|
|
169
|
+
:param str project_id: The ID of the project the image tag is associated with.
|
|
170
|
+
:param str region: The region in which the registry image tag exists.
|
|
171
|
+
:param str tag_id: The ID of the registry image tag.
|
|
172
|
+
"""
|
|
173
|
+
__args__ = dict()
|
|
174
|
+
__args__['imageId'] = image_id
|
|
175
|
+
__args__['name'] = name
|
|
176
|
+
__args__['projectId'] = project_id
|
|
177
|
+
__args__['region'] = region
|
|
178
|
+
__args__['tagId'] = tag_id
|
|
179
|
+
opts = pulumi.InvokeOptions.merge(_utilities.get_invoke_opts_defaults(), opts)
|
|
180
|
+
__ret__ = pulumi.runtime.invoke('scaleway:index/getRegistryImageTag:getRegistryImageTag', __args__, opts=opts, typ=GetRegistryImageTagResult).value
|
|
181
|
+
|
|
182
|
+
return AwaitableGetRegistryImageTagResult(
|
|
183
|
+
created_at=pulumi.get(__ret__, 'created_at'),
|
|
184
|
+
digest=pulumi.get(__ret__, 'digest'),
|
|
185
|
+
id=pulumi.get(__ret__, 'id'),
|
|
186
|
+
image_id=pulumi.get(__ret__, 'image_id'),
|
|
187
|
+
name=pulumi.get(__ret__, 'name'),
|
|
188
|
+
organization_id=pulumi.get(__ret__, 'organization_id'),
|
|
189
|
+
project_id=pulumi.get(__ret__, 'project_id'),
|
|
190
|
+
region=pulumi.get(__ret__, 'region'),
|
|
191
|
+
status=pulumi.get(__ret__, 'status'),
|
|
192
|
+
tag_id=pulumi.get(__ret__, 'tag_id'),
|
|
193
|
+
updated_at=pulumi.get(__ret__, 'updated_at'))
|
|
194
|
+
def get_registry_image_tag_output(image_id: Optional[pulumi.Input[str]] = None,
|
|
195
|
+
name: Optional[pulumi.Input[Optional[str]]] = None,
|
|
196
|
+
project_id: Optional[pulumi.Input[Optional[str]]] = None,
|
|
197
|
+
region: Optional[pulumi.Input[Optional[str]]] = None,
|
|
198
|
+
tag_id: Optional[pulumi.Input[Optional[str]]] = None,
|
|
199
|
+
opts: Optional[pulumi.InvokeOptions] = None) -> pulumi.Output[GetRegistryImageTagResult]:
|
|
200
|
+
"""
|
|
201
|
+
Gets information about a specific tag of a Container Registry image.
|
|
202
|
+
|
|
203
|
+
|
|
204
|
+
:param str image_id: The ID of the registry image.
|
|
205
|
+
:param str name: The name of the registry image tag.
|
|
206
|
+
:param str project_id: The ID of the project the image tag is associated with.
|
|
207
|
+
:param str region: The region in which the registry image tag exists.
|
|
208
|
+
:param str tag_id: The ID of the registry image tag.
|
|
209
|
+
"""
|
|
210
|
+
__args__ = dict()
|
|
211
|
+
__args__['imageId'] = image_id
|
|
212
|
+
__args__['name'] = name
|
|
213
|
+
__args__['projectId'] = project_id
|
|
214
|
+
__args__['region'] = region
|
|
215
|
+
__args__['tagId'] = tag_id
|
|
216
|
+
opts = pulumi.InvokeOptions.merge(_utilities.get_invoke_opts_defaults(), opts)
|
|
217
|
+
__ret__ = pulumi.runtime.invoke_output('scaleway:index/getRegistryImageTag:getRegistryImageTag', __args__, opts=opts, typ=GetRegistryImageTagResult)
|
|
218
|
+
return __ret__.apply(lambda __response__: GetRegistryImageTagResult(
|
|
219
|
+
created_at=pulumi.get(__response__, 'created_at'),
|
|
220
|
+
digest=pulumi.get(__response__, 'digest'),
|
|
221
|
+
id=pulumi.get(__response__, 'id'),
|
|
222
|
+
image_id=pulumi.get(__response__, 'image_id'),
|
|
223
|
+
name=pulumi.get(__response__, 'name'),
|
|
224
|
+
organization_id=pulumi.get(__response__, 'organization_id'),
|
|
225
|
+
project_id=pulumi.get(__response__, 'project_id'),
|
|
226
|
+
region=pulumi.get(__response__, 'region'),
|
|
227
|
+
status=pulumi.get(__response__, 'status'),
|
|
228
|
+
tag_id=pulumi.get(__response__, 'tag_id'),
|
|
229
|
+
updated_at=pulumi.get(__response__, 'updated_at')))
|
|
@@ -22,6 +22,7 @@ class InstancePrivateNicArgs:
|
|
|
22
22
|
private_network_id: pulumi.Input[str],
|
|
23
23
|
server_id: pulumi.Input[str],
|
|
24
24
|
ip_ids: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
|
|
25
|
+
ipam_ip_ids: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
|
|
25
26
|
tags: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
|
|
26
27
|
zone: Optional[pulumi.Input[str]] = None):
|
|
27
28
|
"""
|
|
@@ -29,6 +30,7 @@ class InstancePrivateNicArgs:
|
|
|
29
30
|
:param pulumi.Input[str] private_network_id: The ID of the private network attached to.
|
|
30
31
|
:param pulumi.Input[str] server_id: The ID of the server associated with.
|
|
31
32
|
:param pulumi.Input[Sequence[pulumi.Input[str]]] ip_ids: IPAM ip list, should be for internal use only
|
|
33
|
+
:param pulumi.Input[Sequence[pulumi.Input[str]]] ipam_ip_ids: IPAM IDs of a pre-reserved IP addresses to assign to the Instance in the requested private network.
|
|
32
34
|
:param pulumi.Input[Sequence[pulumi.Input[str]]] tags: The tags associated with the private NIC.
|
|
33
35
|
:param pulumi.Input[str] zone: `zone`) The zone in which the server must be created.
|
|
34
36
|
"""
|
|
@@ -36,6 +38,8 @@ class InstancePrivateNicArgs:
|
|
|
36
38
|
pulumi.set(__self__, "server_id", server_id)
|
|
37
39
|
if ip_ids is not None:
|
|
38
40
|
pulumi.set(__self__, "ip_ids", ip_ids)
|
|
41
|
+
if ipam_ip_ids is not None:
|
|
42
|
+
pulumi.set(__self__, "ipam_ip_ids", ipam_ip_ids)
|
|
39
43
|
if tags is not None:
|
|
40
44
|
pulumi.set(__self__, "tags", tags)
|
|
41
45
|
if zone is not None:
|
|
@@ -77,6 +81,18 @@ class InstancePrivateNicArgs:
|
|
|
77
81
|
def ip_ids(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
|
|
78
82
|
pulumi.set(self, "ip_ids", value)
|
|
79
83
|
|
|
84
|
+
@property
|
|
85
|
+
@pulumi.getter(name="ipamIpIds")
|
|
86
|
+
def ipam_ip_ids(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
|
|
87
|
+
"""
|
|
88
|
+
IPAM IDs of a pre-reserved IP addresses to assign to the Instance in the requested private network.
|
|
89
|
+
"""
|
|
90
|
+
return pulumi.get(self, "ipam_ip_ids")
|
|
91
|
+
|
|
92
|
+
@ipam_ip_ids.setter
|
|
93
|
+
def ipam_ip_ids(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
|
|
94
|
+
pulumi.set(self, "ipam_ip_ids", value)
|
|
95
|
+
|
|
80
96
|
@property
|
|
81
97
|
@pulumi.getter
|
|
82
98
|
def tags(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
|
|
@@ -106,6 +122,7 @@ class InstancePrivateNicArgs:
|
|
|
106
122
|
class _InstancePrivateNicState:
|
|
107
123
|
def __init__(__self__, *,
|
|
108
124
|
ip_ids: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
|
|
125
|
+
ipam_ip_ids: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
|
|
109
126
|
mac_address: Optional[pulumi.Input[str]] = None,
|
|
110
127
|
private_network_id: Optional[pulumi.Input[str]] = None,
|
|
111
128
|
server_id: Optional[pulumi.Input[str]] = None,
|
|
@@ -114,6 +131,7 @@ class _InstancePrivateNicState:
|
|
|
114
131
|
"""
|
|
115
132
|
Input properties used for looking up and filtering InstancePrivateNic resources.
|
|
116
133
|
:param pulumi.Input[Sequence[pulumi.Input[str]]] ip_ids: IPAM ip list, should be for internal use only
|
|
134
|
+
:param pulumi.Input[Sequence[pulumi.Input[str]]] ipam_ip_ids: IPAM IDs of a pre-reserved IP addresses to assign to the Instance in the requested private network.
|
|
117
135
|
:param pulumi.Input[str] mac_address: The MAC address of the private NIC.
|
|
118
136
|
:param pulumi.Input[str] private_network_id: The ID of the private network attached to.
|
|
119
137
|
:param pulumi.Input[str] server_id: The ID of the server associated with.
|
|
@@ -122,6 +140,8 @@ class _InstancePrivateNicState:
|
|
|
122
140
|
"""
|
|
123
141
|
if ip_ids is not None:
|
|
124
142
|
pulumi.set(__self__, "ip_ids", ip_ids)
|
|
143
|
+
if ipam_ip_ids is not None:
|
|
144
|
+
pulumi.set(__self__, "ipam_ip_ids", ipam_ip_ids)
|
|
125
145
|
if mac_address is not None:
|
|
126
146
|
pulumi.set(__self__, "mac_address", mac_address)
|
|
127
147
|
if private_network_id is not None:
|
|
@@ -145,6 +165,18 @@ class _InstancePrivateNicState:
|
|
|
145
165
|
def ip_ids(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
|
|
146
166
|
pulumi.set(self, "ip_ids", value)
|
|
147
167
|
|
|
168
|
+
@property
|
|
169
|
+
@pulumi.getter(name="ipamIpIds")
|
|
170
|
+
def ipam_ip_ids(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
|
|
171
|
+
"""
|
|
172
|
+
IPAM IDs of a pre-reserved IP addresses to assign to the Instance in the requested private network.
|
|
173
|
+
"""
|
|
174
|
+
return pulumi.get(self, "ipam_ip_ids")
|
|
175
|
+
|
|
176
|
+
@ipam_ip_ids.setter
|
|
177
|
+
def ipam_ip_ids(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
|
|
178
|
+
pulumi.set(self, "ipam_ip_ids", value)
|
|
179
|
+
|
|
148
180
|
@property
|
|
149
181
|
@pulumi.getter(name="macAddress")
|
|
150
182
|
def mac_address(self) -> Optional[pulumi.Input[str]]:
|
|
@@ -212,6 +244,7 @@ class InstancePrivateNic(pulumi.CustomResource):
|
|
|
212
244
|
resource_name: str,
|
|
213
245
|
opts: Optional[pulumi.ResourceOptions] = None,
|
|
214
246
|
ip_ids: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
|
|
247
|
+
ipam_ip_ids: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
|
|
215
248
|
private_network_id: Optional[pulumi.Input[str]] = None,
|
|
216
249
|
server_id: Optional[pulumi.Input[str]] = None,
|
|
217
250
|
tags: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
|
|
@@ -242,7 +275,7 @@ class InstancePrivateNic(pulumi.CustomResource):
|
|
|
242
275
|
|
|
243
276
|
pn01 = scaleway.VpcPrivateNetwork("pn01",
|
|
244
277
|
name="private_network_instance",
|
|
245
|
-
|
|
278
|
+
region="fr-par")
|
|
246
279
|
base = scaleway.InstanceServer("base",
|
|
247
280
|
image="ubuntu_jammy",
|
|
248
281
|
type="DEV1-S",
|
|
@@ -253,6 +286,33 @@ class InstancePrivateNic(pulumi.CustomResource):
|
|
|
253
286
|
zone=pn01.zone)
|
|
254
287
|
```
|
|
255
288
|
|
|
289
|
+
### With IPAM IP IDs
|
|
290
|
+
|
|
291
|
+
```python
|
|
292
|
+
import pulumi
|
|
293
|
+
import pulumiverse_scaleway as scaleway
|
|
294
|
+
|
|
295
|
+
vpc01 = scaleway.Vpc("vpc01", name="vpc_instance")
|
|
296
|
+
pn01 = scaleway.VpcPrivateNetwork("pn01",
|
|
297
|
+
name="private_network_instance",
|
|
298
|
+
ipv4_subnet={
|
|
299
|
+
"subnet": "172.16.64.0/22",
|
|
300
|
+
},
|
|
301
|
+
vpc_id=vpc01.id)
|
|
302
|
+
ip01 = scaleway.IpamIp("ip01",
|
|
303
|
+
address="172.16.64.7",
|
|
304
|
+
sources=[{
|
|
305
|
+
"private_network_id": pn01.id,
|
|
306
|
+
}])
|
|
307
|
+
server01 = scaleway.InstanceServer("server01",
|
|
308
|
+
image="ubuntu_focal",
|
|
309
|
+
type="PLAY2-MICRO")
|
|
310
|
+
pnic01 = scaleway.InstancePrivateNic("pnic01",
|
|
311
|
+
private_network_id=pn01.id,
|
|
312
|
+
server_id=server01.id,
|
|
313
|
+
ipam_ip_ids=[ip01.id])
|
|
314
|
+
```
|
|
315
|
+
|
|
256
316
|
## Import
|
|
257
317
|
|
|
258
318
|
Private NICs can be imported using the `{zone}/{server_id}/{private_nic_id}`, e.g.
|
|
@@ -266,6 +326,7 @@ class InstancePrivateNic(pulumi.CustomResource):
|
|
|
266
326
|
:param str resource_name: The name of the resource.
|
|
267
327
|
:param pulumi.ResourceOptions opts: Options for the resource.
|
|
268
328
|
:param pulumi.Input[Sequence[pulumi.Input[str]]] ip_ids: IPAM ip list, should be for internal use only
|
|
329
|
+
:param pulumi.Input[Sequence[pulumi.Input[str]]] ipam_ip_ids: IPAM IDs of a pre-reserved IP addresses to assign to the Instance in the requested private network.
|
|
269
330
|
:param pulumi.Input[str] private_network_id: The ID of the private network attached to.
|
|
270
331
|
:param pulumi.Input[str] server_id: The ID of the server associated with.
|
|
271
332
|
:param pulumi.Input[Sequence[pulumi.Input[str]]] tags: The tags associated with the private NIC.
|
|
@@ -302,7 +363,7 @@ class InstancePrivateNic(pulumi.CustomResource):
|
|
|
302
363
|
|
|
303
364
|
pn01 = scaleway.VpcPrivateNetwork("pn01",
|
|
304
365
|
name="private_network_instance",
|
|
305
|
-
|
|
366
|
+
region="fr-par")
|
|
306
367
|
base = scaleway.InstanceServer("base",
|
|
307
368
|
image="ubuntu_jammy",
|
|
308
369
|
type="DEV1-S",
|
|
@@ -313,6 +374,33 @@ class InstancePrivateNic(pulumi.CustomResource):
|
|
|
313
374
|
zone=pn01.zone)
|
|
314
375
|
```
|
|
315
376
|
|
|
377
|
+
### With IPAM IP IDs
|
|
378
|
+
|
|
379
|
+
```python
|
|
380
|
+
import pulumi
|
|
381
|
+
import pulumiverse_scaleway as scaleway
|
|
382
|
+
|
|
383
|
+
vpc01 = scaleway.Vpc("vpc01", name="vpc_instance")
|
|
384
|
+
pn01 = scaleway.VpcPrivateNetwork("pn01",
|
|
385
|
+
name="private_network_instance",
|
|
386
|
+
ipv4_subnet={
|
|
387
|
+
"subnet": "172.16.64.0/22",
|
|
388
|
+
},
|
|
389
|
+
vpc_id=vpc01.id)
|
|
390
|
+
ip01 = scaleway.IpamIp("ip01",
|
|
391
|
+
address="172.16.64.7",
|
|
392
|
+
sources=[{
|
|
393
|
+
"private_network_id": pn01.id,
|
|
394
|
+
}])
|
|
395
|
+
server01 = scaleway.InstanceServer("server01",
|
|
396
|
+
image="ubuntu_focal",
|
|
397
|
+
type="PLAY2-MICRO")
|
|
398
|
+
pnic01 = scaleway.InstancePrivateNic("pnic01",
|
|
399
|
+
private_network_id=pn01.id,
|
|
400
|
+
server_id=server01.id,
|
|
401
|
+
ipam_ip_ids=[ip01.id])
|
|
402
|
+
```
|
|
403
|
+
|
|
316
404
|
## Import
|
|
317
405
|
|
|
318
406
|
Private NICs can be imported using the `{zone}/{server_id}/{private_nic_id}`, e.g.
|
|
@@ -339,6 +427,7 @@ class InstancePrivateNic(pulumi.CustomResource):
|
|
|
339
427
|
resource_name: str,
|
|
340
428
|
opts: Optional[pulumi.ResourceOptions] = None,
|
|
341
429
|
ip_ids: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
|
|
430
|
+
ipam_ip_ids: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
|
|
342
431
|
private_network_id: Optional[pulumi.Input[str]] = None,
|
|
343
432
|
server_id: Optional[pulumi.Input[str]] = None,
|
|
344
433
|
tags: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
|
|
@@ -353,6 +442,7 @@ class InstancePrivateNic(pulumi.CustomResource):
|
|
|
353
442
|
__props__ = InstancePrivateNicArgs.__new__(InstancePrivateNicArgs)
|
|
354
443
|
|
|
355
444
|
__props__.__dict__["ip_ids"] = ip_ids
|
|
445
|
+
__props__.__dict__["ipam_ip_ids"] = ipam_ip_ids
|
|
356
446
|
if private_network_id is None and not opts.urn:
|
|
357
447
|
raise TypeError("Missing required property 'private_network_id'")
|
|
358
448
|
__props__.__dict__["private_network_id"] = private_network_id
|
|
@@ -373,6 +463,7 @@ class InstancePrivateNic(pulumi.CustomResource):
|
|
|
373
463
|
id: pulumi.Input[str],
|
|
374
464
|
opts: Optional[pulumi.ResourceOptions] = None,
|
|
375
465
|
ip_ids: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
|
|
466
|
+
ipam_ip_ids: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
|
|
376
467
|
mac_address: Optional[pulumi.Input[str]] = None,
|
|
377
468
|
private_network_id: Optional[pulumi.Input[str]] = None,
|
|
378
469
|
server_id: Optional[pulumi.Input[str]] = None,
|
|
@@ -386,6 +477,7 @@ class InstancePrivateNic(pulumi.CustomResource):
|
|
|
386
477
|
:param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
|
|
387
478
|
:param pulumi.ResourceOptions opts: Options for the resource.
|
|
388
479
|
:param pulumi.Input[Sequence[pulumi.Input[str]]] ip_ids: IPAM ip list, should be for internal use only
|
|
480
|
+
:param pulumi.Input[Sequence[pulumi.Input[str]]] ipam_ip_ids: IPAM IDs of a pre-reserved IP addresses to assign to the Instance in the requested private network.
|
|
389
481
|
:param pulumi.Input[str] mac_address: The MAC address of the private NIC.
|
|
390
482
|
:param pulumi.Input[str] private_network_id: The ID of the private network attached to.
|
|
391
483
|
:param pulumi.Input[str] server_id: The ID of the server associated with.
|
|
@@ -397,6 +489,7 @@ class InstancePrivateNic(pulumi.CustomResource):
|
|
|
397
489
|
__props__ = _InstancePrivateNicState.__new__(_InstancePrivateNicState)
|
|
398
490
|
|
|
399
491
|
__props__.__dict__["ip_ids"] = ip_ids
|
|
492
|
+
__props__.__dict__["ipam_ip_ids"] = ipam_ip_ids
|
|
400
493
|
__props__.__dict__["mac_address"] = mac_address
|
|
401
494
|
__props__.__dict__["private_network_id"] = private_network_id
|
|
402
495
|
__props__.__dict__["server_id"] = server_id
|
|
@@ -412,6 +505,14 @@ class InstancePrivateNic(pulumi.CustomResource):
|
|
|
412
505
|
"""
|
|
413
506
|
return pulumi.get(self, "ip_ids")
|
|
414
507
|
|
|
508
|
+
@property
|
|
509
|
+
@pulumi.getter(name="ipamIpIds")
|
|
510
|
+
def ipam_ip_ids(self) -> pulumi.Output[Optional[Sequence[str]]]:
|
|
511
|
+
"""
|
|
512
|
+
IPAM IDs of a pre-reserved IP addresses to assign to the Instance in the requested private network.
|
|
513
|
+
"""
|
|
514
|
+
return pulumi.get(self, "ipam_ip_ids")
|
|
515
|
+
|
|
415
516
|
@property
|
|
416
517
|
@pulumi.getter(name="macAddress")
|
|
417
518
|
def mac_address(self) -> pulumi.Output[str]:
|