pulumiverse-scaleway 1.28.0a1747384911__py3-none-any.whl → 1.29.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.
- pulumiverse_scaleway/__init__.py +0 -1
- pulumiverse_scaleway/_inputs.py +106 -0
- pulumiverse_scaleway/account/__init__.py +2 -0
- pulumiverse_scaleway/account/get_projects.py +235 -0
- pulumiverse_scaleway/account/outputs.py +95 -0
- pulumiverse_scaleway/baremetal_server.py +20 -1
- pulumiverse_scaleway/block/__init__.py +2 -0
- pulumiverse_scaleway/block/_inputs.py +73 -0
- pulumiverse_scaleway/block/get_snapshot.py +13 -1
- pulumiverse_scaleway/block/outputs.py +79 -0
- pulumiverse_scaleway/block/snapshot.py +62 -14
- pulumiverse_scaleway/block_snapshot.py +62 -14
- pulumiverse_scaleway/container.py +2 -2
- pulumiverse_scaleway/containers/container.py +2 -2
- pulumiverse_scaleway/database_instance.py +20 -1
- pulumiverse_scaleway/databases/instance.py +20 -1
- pulumiverse_scaleway/domain/get_zone.py +7 -1
- pulumiverse_scaleway/elasticmetal/__init__.py +1 -1
- pulumiverse_scaleway/elasticmetal/get_partition_schema.py +215 -0
- pulumiverse_scaleway/elasticmetal/server.py +20 -1
- pulumiverse_scaleway/get_block_snapshot.py +13 -1
- pulumiverse_scaleway/get_domain_zone.py +7 -1
- pulumiverse_scaleway/get_mongo_db_instance.py +12 -1
- pulumiverse_scaleway/iam/user.py +468 -14
- pulumiverse_scaleway/iam_user.py +468 -14
- pulumiverse_scaleway/instance/private_nic.py +20 -1
- pulumiverse_scaleway/instance/server.py +20 -1
- pulumiverse_scaleway/instance/snapshot.py +28 -7
- pulumiverse_scaleway/instance/volume.py +28 -7
- pulumiverse_scaleway/instance_private_nic.py +20 -1
- pulumiverse_scaleway/instance_server.py +20 -1
- pulumiverse_scaleway/instance_snapshot.py +28 -7
- pulumiverse_scaleway/instance_volume.py +28 -7
- pulumiverse_scaleway/mongo_db_instance.py +107 -7
- pulumiverse_scaleway/mongodb/_inputs.py +54 -0
- pulumiverse_scaleway/mongodb/get_instance.py +12 -1
- pulumiverse_scaleway/mongodb/instance.py +107 -7
- pulumiverse_scaleway/mongodb/outputs.py +62 -0
- pulumiverse_scaleway/network/gateway_network.py +20 -1
- pulumiverse_scaleway/observability/__init__.py +0 -1
- pulumiverse_scaleway/outputs.py +122 -0
- pulumiverse_scaleway/pulumi-plugin.json +1 -1
- pulumiverse_scaleway/redis/cluster.py +20 -1
- pulumiverse_scaleway/redis_cluster.py +20 -1
- pulumiverse_scaleway/vpc_gateway_network.py +20 -1
- {pulumiverse_scaleway-1.28.0a1747384911.dist-info → pulumiverse_scaleway-1.29.0.dist-info}/METADATA +1 -1
- {pulumiverse_scaleway-1.28.0a1747384911.dist-info → pulumiverse_scaleway-1.29.0.dist-info}/RECORD +49 -44
- {pulumiverse_scaleway-1.28.0a1747384911.dist-info → pulumiverse_scaleway-1.29.0.dist-info}/WHEEL +1 -1
- {pulumiverse_scaleway-1.28.0a1747384911.dist-info → pulumiverse_scaleway-1.29.0.dist-info}/top_level.txt +0 -0
@@ -29,7 +29,10 @@ class InstanceVolumeArgs:
|
|
29
29
|
zone: Optional[pulumi.Input[str]] = None):
|
30
30
|
"""
|
31
31
|
The set of arguments for constructing a InstanceVolume resource.
|
32
|
-
:param pulumi.Input[str] type: The type of the volume. The possible values are: `
|
32
|
+
:param pulumi.Input[str] type: The type of the volume. The possible values are: `l_ssd` (Local SSD), `scratch` (Local Scratch SSD).
|
33
|
+
|
34
|
+
> **Important:** Volumes with type `b_ssd` (Block SSD) are deprecated and cannot be managed using the `instance.Volume` resource anymore. Please use the `block.Volume` resource instead.
|
35
|
+
If you want to migrate existing volumes, you can visit [this page](https://www.scaleway.com/en/docs/instances/how-to/migrate-volumes-snapshots-to-sbs/) for more information.
|
33
36
|
:param pulumi.Input[str] from_snapshot_id: If set, the new volume will be created from this snapshot. Only one of `size_in_gb` and `from_snapshot_id` should be specified.
|
34
37
|
:param pulumi.Input[bool] migrate_to_sbs: If true, consider that this volume may have been migrated and no longer exists.
|
35
38
|
:param pulumi.Input[str] name: The name of the volume. If not provided it will be randomly generated.
|
@@ -58,7 +61,10 @@ class InstanceVolumeArgs:
|
|
58
61
|
@pulumi.getter
|
59
62
|
def type(self) -> pulumi.Input[str]:
|
60
63
|
"""
|
61
|
-
The type of the volume. The possible values are: `
|
64
|
+
The type of the volume. The possible values are: `l_ssd` (Local SSD), `scratch` (Local Scratch SSD).
|
65
|
+
|
66
|
+
> **Important:** Volumes with type `b_ssd` (Block SSD) are deprecated and cannot be managed using the `instance.Volume` resource anymore. Please use the `block.Volume` resource instead.
|
67
|
+
If you want to migrate existing volumes, you can visit [this page](https://www.scaleway.com/en/docs/instances/how-to/migrate-volumes-snapshots-to-sbs/) for more information.
|
62
68
|
"""
|
63
69
|
return pulumi.get(self, "type")
|
64
70
|
|
@@ -174,7 +180,10 @@ class _InstanceVolumeState:
|
|
174
180
|
:param pulumi.Input[str] server_id: The id of the associated server.
|
175
181
|
:param pulumi.Input[int] size_in_gb: The size of the volume. Only one of `size_in_gb` and `from_snapshot_id` should be specified.
|
176
182
|
:param pulumi.Input[Sequence[pulumi.Input[str]]] tags: A list of tags to apply to the volume.
|
177
|
-
:param pulumi.Input[str] type: The type of the volume. The possible values are: `
|
183
|
+
:param pulumi.Input[str] type: The type of the volume. The possible values are: `l_ssd` (Local SSD), `scratch` (Local Scratch SSD).
|
184
|
+
|
185
|
+
> **Important:** Volumes with type `b_ssd` (Block SSD) are deprecated and cannot be managed using the `instance.Volume` resource anymore. Please use the `block.Volume` resource instead.
|
186
|
+
If you want to migrate existing volumes, you can visit [this page](https://www.scaleway.com/en/docs/instances/how-to/migrate-volumes-snapshots-to-sbs/) for more information.
|
178
187
|
:param pulumi.Input[str] zone: `zone`) The zone in which the volume should be created.
|
179
188
|
"""
|
180
189
|
if from_snapshot_id is not None:
|
@@ -298,7 +307,10 @@ class _InstanceVolumeState:
|
|
298
307
|
@pulumi.getter
|
299
308
|
def type(self) -> Optional[pulumi.Input[str]]:
|
300
309
|
"""
|
301
|
-
The type of the volume. The possible values are: `
|
310
|
+
The type of the volume. The possible values are: `l_ssd` (Local SSD), `scratch` (Local Scratch SSD).
|
311
|
+
|
312
|
+
> **Important:** Volumes with type `b_ssd` (Block SSD) are deprecated and cannot be managed using the `instance.Volume` resource anymore. Please use the `block.Volume` resource instead.
|
313
|
+
If you want to migrate existing volumes, you can visit [this page](https://www.scaleway.com/en/docs/instances/how-to/migrate-volumes-snapshots-to-sbs/) for more information.
|
302
314
|
"""
|
303
315
|
return pulumi.get(self, "type")
|
304
316
|
|
@@ -372,7 +384,10 @@ class InstanceVolume(pulumi.CustomResource):
|
|
372
384
|
:param pulumi.Input[str] project_id: `project_id`) The ID of the project the volume is associated with.
|
373
385
|
:param pulumi.Input[int] size_in_gb: The size of the volume. Only one of `size_in_gb` and `from_snapshot_id` should be specified.
|
374
386
|
:param pulumi.Input[Sequence[pulumi.Input[str]]] tags: A list of tags to apply to the volume.
|
375
|
-
:param pulumi.Input[str] type: The type of the volume. The possible values are: `
|
387
|
+
:param pulumi.Input[str] type: The type of the volume. The possible values are: `l_ssd` (Local SSD), `scratch` (Local Scratch SSD).
|
388
|
+
|
389
|
+
> **Important:** Volumes with type `b_ssd` (Block SSD) are deprecated and cannot be managed using the `instance.Volume` resource anymore. Please use the `block.Volume` resource instead.
|
390
|
+
If you want to migrate existing volumes, you can visit [this page](https://www.scaleway.com/en/docs/instances/how-to/migrate-volumes-snapshots-to-sbs/) for more information.
|
376
391
|
:param pulumi.Input[str] zone: `zone`) The zone in which the volume should be created.
|
377
392
|
"""
|
378
393
|
...
|
@@ -487,7 +502,10 @@ class InstanceVolume(pulumi.CustomResource):
|
|
487
502
|
:param pulumi.Input[str] server_id: The id of the associated server.
|
488
503
|
:param pulumi.Input[int] size_in_gb: The size of the volume. Only one of `size_in_gb` and `from_snapshot_id` should be specified.
|
489
504
|
:param pulumi.Input[Sequence[pulumi.Input[str]]] tags: A list of tags to apply to the volume.
|
490
|
-
:param pulumi.Input[str] type: The type of the volume. The possible values are: `
|
505
|
+
:param pulumi.Input[str] type: The type of the volume. The possible values are: `l_ssd` (Local SSD), `scratch` (Local Scratch SSD).
|
506
|
+
|
507
|
+
> **Important:** Volumes with type `b_ssd` (Block SSD) are deprecated and cannot be managed using the `instance.Volume` resource anymore. Please use the `block.Volume` resource instead.
|
508
|
+
If you want to migrate existing volumes, you can visit [this page](https://www.scaleway.com/en/docs/instances/how-to/migrate-volumes-snapshots-to-sbs/) for more information.
|
491
509
|
:param pulumi.Input[str] zone: `zone`) The zone in which the volume should be created.
|
492
510
|
"""
|
493
511
|
opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
|
@@ -574,7 +592,10 @@ class InstanceVolume(pulumi.CustomResource):
|
|
574
592
|
@pulumi.getter
|
575
593
|
def type(self) -> pulumi.Output[str]:
|
576
594
|
"""
|
577
|
-
The type of the volume. The possible values are: `
|
595
|
+
The type of the volume. The possible values are: `l_ssd` (Local SSD), `scratch` (Local Scratch SSD).
|
596
|
+
|
597
|
+
> **Important:** Volumes with type `b_ssd` (Block SSD) are deprecated and cannot be managed using the `instance.Volume` resource anymore. Please use the `block.Volume` resource instead.
|
598
|
+
If you want to migrate existing volumes, you can visit [this page](https://www.scaleway.com/en/docs/instances/how-to/migrate-volumes-snapshots-to-sbs/) for more information.
|
578
599
|
"""
|
579
600
|
return pulumi.get(self, "type")
|
580
601
|
|
@@ -25,6 +25,7 @@ class MongoDbInstanceArgs:
|
|
25
25
|
node_type: pulumi.Input[str],
|
26
26
|
name: Optional[pulumi.Input[str]] = None,
|
27
27
|
password: Optional[pulumi.Input[str]] = None,
|
28
|
+
private_ips: Optional[pulumi.Input[Sequence[pulumi.Input['MongoDbInstancePrivateIpArgs']]]] = None,
|
28
29
|
private_network: Optional[pulumi.Input['MongoDbInstancePrivateNetworkArgs']] = None,
|
29
30
|
project_id: Optional[pulumi.Input[str]] = None,
|
30
31
|
public_network: Optional[pulumi.Input['MongoDbInstancePublicNetworkArgs']] = None,
|
@@ -42,9 +43,11 @@ class MongoDbInstanceArgs:
|
|
42
43
|
:param pulumi.Input[str] node_type: The type of MongoDB® intance to create.
|
43
44
|
:param pulumi.Input[str] name: Name of the MongoDB® instance.
|
44
45
|
:param pulumi.Input[str] password: Password of the user.
|
46
|
+
:param pulumi.Input[Sequence[pulumi.Input['MongoDbInstancePrivateIpArgs']]] private_ips: The private IPv4 address associated with the instance.
|
45
47
|
:param pulumi.Input['MongoDbInstancePrivateNetworkArgs'] private_network: Private Network endpoints of the Database Instance.
|
46
48
|
:param pulumi.Input[str] project_id: The project_id you want to attach the resource to
|
47
|
-
:param pulumi.Input['MongoDbInstancePublicNetworkArgs'] public_network: Public network
|
49
|
+
:param pulumi.Input['MongoDbInstancePublicNetworkArgs'] public_network: Public network endpoint configuration (no arguments).
|
50
|
+
> **Important** If neither private_network nor public_network is specified, a public network endpoint is created by default.
|
48
51
|
:param pulumi.Input[str] region: The region you want to attach the resource to
|
49
52
|
:param pulumi.Input[Mapping[str, pulumi.Input[str]]] settings: Map of settings to define for the instance.
|
50
53
|
:param pulumi.Input[str] snapshot_id: Snapshot ID to restore the MongoDB® instance from.
|
@@ -60,6 +63,8 @@ class MongoDbInstanceArgs:
|
|
60
63
|
pulumi.set(__self__, "name", name)
|
61
64
|
if password is not None:
|
62
65
|
pulumi.set(__self__, "password", password)
|
66
|
+
if private_ips is not None:
|
67
|
+
pulumi.set(__self__, "private_ips", private_ips)
|
63
68
|
if private_network is not None:
|
64
69
|
pulumi.set(__self__, "private_network", private_network)
|
65
70
|
if project_id is not None:
|
@@ -131,6 +136,18 @@ class MongoDbInstanceArgs:
|
|
131
136
|
def password(self, value: Optional[pulumi.Input[str]]):
|
132
137
|
pulumi.set(self, "password", value)
|
133
138
|
|
139
|
+
@property
|
140
|
+
@pulumi.getter(name="privateIps")
|
141
|
+
def private_ips(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['MongoDbInstancePrivateIpArgs']]]]:
|
142
|
+
"""
|
143
|
+
The private IPv4 address associated with the instance.
|
144
|
+
"""
|
145
|
+
return pulumi.get(self, "private_ips")
|
146
|
+
|
147
|
+
@private_ips.setter
|
148
|
+
def private_ips(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['MongoDbInstancePrivateIpArgs']]]]):
|
149
|
+
pulumi.set(self, "private_ips", value)
|
150
|
+
|
134
151
|
@property
|
135
152
|
@pulumi.getter(name="privateNetwork")
|
136
153
|
def private_network(self) -> Optional[pulumi.Input['MongoDbInstancePrivateNetworkArgs']]:
|
@@ -159,7 +176,8 @@ class MongoDbInstanceArgs:
|
|
159
176
|
@pulumi.getter(name="publicNetwork")
|
160
177
|
def public_network(self) -> Optional[pulumi.Input['MongoDbInstancePublicNetworkArgs']]:
|
161
178
|
"""
|
162
|
-
Public network
|
179
|
+
Public network endpoint configuration (no arguments).
|
180
|
+
> **Important** If neither private_network nor public_network is specified, a public network endpoint is created by default.
|
163
181
|
"""
|
164
182
|
return pulumi.get(self, "public_network")
|
165
183
|
|
@@ -272,6 +290,7 @@ class _MongoDbInstanceState:
|
|
272
290
|
node_number: Optional[pulumi.Input[int]] = None,
|
273
291
|
node_type: Optional[pulumi.Input[str]] = None,
|
274
292
|
password: Optional[pulumi.Input[str]] = None,
|
293
|
+
private_ips: Optional[pulumi.Input[Sequence[pulumi.Input['MongoDbInstancePrivateIpArgs']]]] = None,
|
275
294
|
private_network: Optional[pulumi.Input['MongoDbInstancePrivateNetworkArgs']] = None,
|
276
295
|
project_id: Optional[pulumi.Input[str]] = None,
|
277
296
|
public_network: Optional[pulumi.Input['MongoDbInstancePublicNetworkArgs']] = None,
|
@@ -291,9 +310,11 @@ class _MongoDbInstanceState:
|
|
291
310
|
:param pulumi.Input[int] node_number: Number of nodes in the instance
|
292
311
|
:param pulumi.Input[str] node_type: The type of MongoDB® intance to create.
|
293
312
|
:param pulumi.Input[str] password: Password of the user.
|
313
|
+
:param pulumi.Input[Sequence[pulumi.Input['MongoDbInstancePrivateIpArgs']]] private_ips: The private IPv4 address associated with the instance.
|
294
314
|
:param pulumi.Input['MongoDbInstancePrivateNetworkArgs'] private_network: Private Network endpoints of the Database Instance.
|
295
315
|
:param pulumi.Input[str] project_id: The project_id you want to attach the resource to
|
296
|
-
:param pulumi.Input['MongoDbInstancePublicNetworkArgs'] public_network: Public network
|
316
|
+
:param pulumi.Input['MongoDbInstancePublicNetworkArgs'] public_network: Public network endpoint configuration (no arguments).
|
317
|
+
> **Important** If neither private_network nor public_network is specified, a public network endpoint is created by default.
|
297
318
|
:param pulumi.Input[str] region: The region you want to attach the resource to
|
298
319
|
:param pulumi.Input[Mapping[str, pulumi.Input[str]]] settings: Map of settings to define for the instance.
|
299
320
|
:param pulumi.Input[str] snapshot_id: Snapshot ID to restore the MongoDB® instance from.
|
@@ -314,6 +335,8 @@ class _MongoDbInstanceState:
|
|
314
335
|
pulumi.set(__self__, "node_type", node_type)
|
315
336
|
if password is not None:
|
316
337
|
pulumi.set(__self__, "password", password)
|
338
|
+
if private_ips is not None:
|
339
|
+
pulumi.set(__self__, "private_ips", private_ips)
|
317
340
|
if private_network is not None:
|
318
341
|
pulumi.set(__self__, "private_network", private_network)
|
319
342
|
if project_id is not None:
|
@@ -399,6 +422,18 @@ class _MongoDbInstanceState:
|
|
399
422
|
def password(self, value: Optional[pulumi.Input[str]]):
|
400
423
|
pulumi.set(self, "password", value)
|
401
424
|
|
425
|
+
@property
|
426
|
+
@pulumi.getter(name="privateIps")
|
427
|
+
def private_ips(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['MongoDbInstancePrivateIpArgs']]]]:
|
428
|
+
"""
|
429
|
+
The private IPv4 address associated with the instance.
|
430
|
+
"""
|
431
|
+
return pulumi.get(self, "private_ips")
|
432
|
+
|
433
|
+
@private_ips.setter
|
434
|
+
def private_ips(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['MongoDbInstancePrivateIpArgs']]]]):
|
435
|
+
pulumi.set(self, "private_ips", value)
|
436
|
+
|
402
437
|
@property
|
403
438
|
@pulumi.getter(name="privateNetwork")
|
404
439
|
def private_network(self) -> Optional[pulumi.Input['MongoDbInstancePrivateNetworkArgs']]:
|
@@ -427,7 +462,8 @@ class _MongoDbInstanceState:
|
|
427
462
|
@pulumi.getter(name="publicNetwork")
|
428
463
|
def public_network(self) -> Optional[pulumi.Input['MongoDbInstancePublicNetworkArgs']]:
|
429
464
|
"""
|
430
|
-
Public network
|
465
|
+
Public network endpoint configuration (no arguments).
|
466
|
+
> **Important** If neither private_network nor public_network is specified, a public network endpoint is created by default.
|
431
467
|
"""
|
432
468
|
return pulumi.get(self, "public_network")
|
433
469
|
|
@@ -558,6 +594,7 @@ class MongoDbInstance(pulumi.CustomResource):
|
|
558
594
|
node_number: Optional[pulumi.Input[int]] = None,
|
559
595
|
node_type: Optional[pulumi.Input[str]] = None,
|
560
596
|
password: Optional[pulumi.Input[str]] = None,
|
597
|
+
private_ips: Optional[pulumi.Input[Sequence[pulumi.Input[Union['MongoDbInstancePrivateIpArgs', 'MongoDbInstancePrivateIpArgsDict']]]]] = None,
|
561
598
|
private_network: Optional[pulumi.Input[Union['MongoDbInstancePrivateNetworkArgs', 'MongoDbInstancePrivateNetworkArgsDict']]] = None,
|
562
599
|
project_id: Optional[pulumi.Input[str]] = None,
|
563
600
|
public_network: Optional[pulumi.Input[Union['MongoDbInstancePublicNetworkArgs', 'MongoDbInstancePublicNetworkArgsDict']]] = None,
|
@@ -614,6 +651,29 @@ class MongoDbInstance(pulumi.CustomResource):
|
|
614
651
|
})
|
615
652
|
```
|
616
653
|
|
654
|
+
### Private Network and Public Network
|
655
|
+
|
656
|
+
```python
|
657
|
+
import pulumi
|
658
|
+
import pulumiverse_scaleway as scaleway
|
659
|
+
|
660
|
+
pn01 = scaleway.network.PrivateNetwork("pn01",
|
661
|
+
name="my_private_network",
|
662
|
+
region="fr-par")
|
663
|
+
main = scaleway.mongodb.Instance("main",
|
664
|
+
name="test-mongodb-basic1",
|
665
|
+
version="7.0.12",
|
666
|
+
node_type="MGDB-PLAY2-NANO",
|
667
|
+
node_number=1,
|
668
|
+
user_name="my_initial_user",
|
669
|
+
password="thiZ_is_v&ry_s3cret",
|
670
|
+
volume_size_in_gb=5,
|
671
|
+
private_network={
|
672
|
+
"pn_id": pn02["id"],
|
673
|
+
},
|
674
|
+
public_network={})
|
675
|
+
```
|
676
|
+
|
617
677
|
### Restore From Snapshot
|
618
678
|
|
619
679
|
```python
|
@@ -643,9 +703,11 @@ class MongoDbInstance(pulumi.CustomResource):
|
|
643
703
|
:param pulumi.Input[int] node_number: Number of nodes in the instance
|
644
704
|
:param pulumi.Input[str] node_type: The type of MongoDB® intance to create.
|
645
705
|
:param pulumi.Input[str] password: Password of the user.
|
706
|
+
:param pulumi.Input[Sequence[pulumi.Input[Union['MongoDbInstancePrivateIpArgs', 'MongoDbInstancePrivateIpArgsDict']]]] private_ips: The private IPv4 address associated with the instance.
|
646
707
|
:param pulumi.Input[Union['MongoDbInstancePrivateNetworkArgs', 'MongoDbInstancePrivateNetworkArgsDict']] private_network: Private Network endpoints of the Database Instance.
|
647
708
|
:param pulumi.Input[str] project_id: The project_id you want to attach the resource to
|
648
|
-
:param pulumi.Input[Union['MongoDbInstancePublicNetworkArgs', 'MongoDbInstancePublicNetworkArgsDict']] public_network: Public network
|
709
|
+
:param pulumi.Input[Union['MongoDbInstancePublicNetworkArgs', 'MongoDbInstancePublicNetworkArgsDict']] public_network: Public network endpoint configuration (no arguments).
|
710
|
+
> **Important** If neither private_network nor public_network is specified, a public network endpoint is created by default.
|
649
711
|
:param pulumi.Input[str] region: The region you want to attach the resource to
|
650
712
|
:param pulumi.Input[Mapping[str, pulumi.Input[str]]] settings: Map of settings to define for the instance.
|
651
713
|
:param pulumi.Input[str] snapshot_id: Snapshot ID to restore the MongoDB® instance from.
|
@@ -705,6 +767,29 @@ class MongoDbInstance(pulumi.CustomResource):
|
|
705
767
|
})
|
706
768
|
```
|
707
769
|
|
770
|
+
### Private Network and Public Network
|
771
|
+
|
772
|
+
```python
|
773
|
+
import pulumi
|
774
|
+
import pulumiverse_scaleway as scaleway
|
775
|
+
|
776
|
+
pn01 = scaleway.network.PrivateNetwork("pn01",
|
777
|
+
name="my_private_network",
|
778
|
+
region="fr-par")
|
779
|
+
main = scaleway.mongodb.Instance("main",
|
780
|
+
name="test-mongodb-basic1",
|
781
|
+
version="7.0.12",
|
782
|
+
node_type="MGDB-PLAY2-NANO",
|
783
|
+
node_number=1,
|
784
|
+
user_name="my_initial_user",
|
785
|
+
password="thiZ_is_v&ry_s3cret",
|
786
|
+
volume_size_in_gb=5,
|
787
|
+
private_network={
|
788
|
+
"pn_id": pn02["id"],
|
789
|
+
},
|
790
|
+
public_network={})
|
791
|
+
```
|
792
|
+
|
708
793
|
### Restore From Snapshot
|
709
794
|
|
710
795
|
```python
|
@@ -747,6 +832,7 @@ class MongoDbInstance(pulumi.CustomResource):
|
|
747
832
|
node_number: Optional[pulumi.Input[int]] = None,
|
748
833
|
node_type: Optional[pulumi.Input[str]] = None,
|
749
834
|
password: Optional[pulumi.Input[str]] = None,
|
835
|
+
private_ips: Optional[pulumi.Input[Sequence[pulumi.Input[Union['MongoDbInstancePrivateIpArgs', 'MongoDbInstancePrivateIpArgsDict']]]]] = None,
|
750
836
|
private_network: Optional[pulumi.Input[Union['MongoDbInstancePrivateNetworkArgs', 'MongoDbInstancePrivateNetworkArgsDict']]] = None,
|
751
837
|
project_id: Optional[pulumi.Input[str]] = None,
|
752
838
|
public_network: Optional[pulumi.Input[Union['MongoDbInstancePublicNetworkArgs', 'MongoDbInstancePublicNetworkArgsDict']]] = None,
|
@@ -776,6 +862,7 @@ class MongoDbInstance(pulumi.CustomResource):
|
|
776
862
|
raise TypeError("Missing required property 'node_type'")
|
777
863
|
__props__.__dict__["node_type"] = node_type
|
778
864
|
__props__.__dict__["password"] = None if password is None else pulumi.Output.secret(password)
|
865
|
+
__props__.__dict__["private_ips"] = private_ips
|
779
866
|
__props__.__dict__["private_network"] = private_network
|
780
867
|
__props__.__dict__["project_id"] = project_id
|
781
868
|
__props__.__dict__["public_network"] = public_network
|
@@ -806,6 +893,7 @@ class MongoDbInstance(pulumi.CustomResource):
|
|
806
893
|
node_number: Optional[pulumi.Input[int]] = None,
|
807
894
|
node_type: Optional[pulumi.Input[str]] = None,
|
808
895
|
password: Optional[pulumi.Input[str]] = None,
|
896
|
+
private_ips: Optional[pulumi.Input[Sequence[pulumi.Input[Union['MongoDbInstancePrivateIpArgs', 'MongoDbInstancePrivateIpArgsDict']]]]] = None,
|
809
897
|
private_network: Optional[pulumi.Input[Union['MongoDbInstancePrivateNetworkArgs', 'MongoDbInstancePrivateNetworkArgsDict']]] = None,
|
810
898
|
project_id: Optional[pulumi.Input[str]] = None,
|
811
899
|
public_network: Optional[pulumi.Input[Union['MongoDbInstancePublicNetworkArgs', 'MongoDbInstancePublicNetworkArgsDict']]] = None,
|
@@ -830,9 +918,11 @@ class MongoDbInstance(pulumi.CustomResource):
|
|
830
918
|
:param pulumi.Input[int] node_number: Number of nodes in the instance
|
831
919
|
:param pulumi.Input[str] node_type: The type of MongoDB® intance to create.
|
832
920
|
:param pulumi.Input[str] password: Password of the user.
|
921
|
+
:param pulumi.Input[Sequence[pulumi.Input[Union['MongoDbInstancePrivateIpArgs', 'MongoDbInstancePrivateIpArgsDict']]]] private_ips: The private IPv4 address associated with the instance.
|
833
922
|
:param pulumi.Input[Union['MongoDbInstancePrivateNetworkArgs', 'MongoDbInstancePrivateNetworkArgsDict']] private_network: Private Network endpoints of the Database Instance.
|
834
923
|
:param pulumi.Input[str] project_id: The project_id you want to attach the resource to
|
835
|
-
:param pulumi.Input[Union['MongoDbInstancePublicNetworkArgs', 'MongoDbInstancePublicNetworkArgsDict']] public_network: Public network
|
924
|
+
:param pulumi.Input[Union['MongoDbInstancePublicNetworkArgs', 'MongoDbInstancePublicNetworkArgsDict']] public_network: Public network endpoint configuration (no arguments).
|
925
|
+
> **Important** If neither private_network nor public_network is specified, a public network endpoint is created by default.
|
836
926
|
:param pulumi.Input[str] region: The region you want to attach the resource to
|
837
927
|
:param pulumi.Input[Mapping[str, pulumi.Input[str]]] settings: Map of settings to define for the instance.
|
838
928
|
:param pulumi.Input[str] snapshot_id: Snapshot ID to restore the MongoDB® instance from.
|
@@ -852,6 +942,7 @@ class MongoDbInstance(pulumi.CustomResource):
|
|
852
942
|
__props__.__dict__["node_number"] = node_number
|
853
943
|
__props__.__dict__["node_type"] = node_type
|
854
944
|
__props__.__dict__["password"] = password
|
945
|
+
__props__.__dict__["private_ips"] = private_ips
|
855
946
|
__props__.__dict__["private_network"] = private_network
|
856
947
|
__props__.__dict__["project_id"] = project_id
|
857
948
|
__props__.__dict__["public_network"] = public_network
|
@@ -906,6 +997,14 @@ class MongoDbInstance(pulumi.CustomResource):
|
|
906
997
|
"""
|
907
998
|
return pulumi.get(self, "password")
|
908
999
|
|
1000
|
+
@property
|
1001
|
+
@pulumi.getter(name="privateIps")
|
1002
|
+
def private_ips(self) -> pulumi.Output[Sequence['outputs.MongoDbInstancePrivateIp']]:
|
1003
|
+
"""
|
1004
|
+
The private IPv4 address associated with the instance.
|
1005
|
+
"""
|
1006
|
+
return pulumi.get(self, "private_ips")
|
1007
|
+
|
909
1008
|
@property
|
910
1009
|
@pulumi.getter(name="privateNetwork")
|
911
1010
|
def private_network(self) -> pulumi.Output[Optional['outputs.MongoDbInstancePrivateNetwork']]:
|
@@ -926,7 +1025,8 @@ class MongoDbInstance(pulumi.CustomResource):
|
|
926
1025
|
@pulumi.getter(name="publicNetwork")
|
927
1026
|
def public_network(self) -> pulumi.Output['outputs.MongoDbInstancePublicNetwork']:
|
928
1027
|
"""
|
929
|
-
Public network
|
1028
|
+
Public network endpoint configuration (no arguments).
|
1029
|
+
> **Important** If neither private_network nor public_network is specified, a public network endpoint is created by default.
|
930
1030
|
"""
|
931
1031
|
return pulumi.get(self, "public_network")
|
932
1032
|
|
@@ -15,6 +15,8 @@ else:
|
|
15
15
|
from .. import _utilities
|
16
16
|
|
17
17
|
__all__ = [
|
18
|
+
'InstancePrivateIpArgs',
|
19
|
+
'InstancePrivateIpArgsDict',
|
18
20
|
'InstancePrivateNetworkArgs',
|
19
21
|
'InstancePrivateNetworkArgsDict',
|
20
22
|
'InstancePublicNetworkArgs',
|
@@ -23,6 +25,58 @@ __all__ = [
|
|
23
25
|
|
24
26
|
MYPY = False
|
25
27
|
|
28
|
+
if not MYPY:
|
29
|
+
class InstancePrivateIpArgsDict(TypedDict):
|
30
|
+
address: NotRequired[pulumi.Input[str]]
|
31
|
+
"""
|
32
|
+
The private IPv4 address.
|
33
|
+
"""
|
34
|
+
id: NotRequired[pulumi.Input[str]]
|
35
|
+
"""
|
36
|
+
The ID of the endpoint.
|
37
|
+
"""
|
38
|
+
elif False:
|
39
|
+
InstancePrivateIpArgsDict: TypeAlias = Mapping[str, Any]
|
40
|
+
|
41
|
+
@pulumi.input_type
|
42
|
+
class InstancePrivateIpArgs:
|
43
|
+
def __init__(__self__, *,
|
44
|
+
address: Optional[pulumi.Input[str]] = None,
|
45
|
+
id: Optional[pulumi.Input[str]] = None):
|
46
|
+
"""
|
47
|
+
:param pulumi.Input[str] address: The private IPv4 address.
|
48
|
+
:param pulumi.Input[str] id: The ID of the endpoint.
|
49
|
+
"""
|
50
|
+
if address is not None:
|
51
|
+
pulumi.set(__self__, "address", address)
|
52
|
+
if id is not None:
|
53
|
+
pulumi.set(__self__, "id", id)
|
54
|
+
|
55
|
+
@property
|
56
|
+
@pulumi.getter
|
57
|
+
def address(self) -> Optional[pulumi.Input[str]]:
|
58
|
+
"""
|
59
|
+
The private IPv4 address.
|
60
|
+
"""
|
61
|
+
return pulumi.get(self, "address")
|
62
|
+
|
63
|
+
@address.setter
|
64
|
+
def address(self, value: Optional[pulumi.Input[str]]):
|
65
|
+
pulumi.set(self, "address", value)
|
66
|
+
|
67
|
+
@property
|
68
|
+
@pulumi.getter
|
69
|
+
def id(self) -> Optional[pulumi.Input[str]]:
|
70
|
+
"""
|
71
|
+
The ID of the endpoint.
|
72
|
+
"""
|
73
|
+
return pulumi.get(self, "id")
|
74
|
+
|
75
|
+
@id.setter
|
76
|
+
def id(self, value: Optional[pulumi.Input[str]]):
|
77
|
+
pulumi.set(self, "id", value)
|
78
|
+
|
79
|
+
|
26
80
|
if not MYPY:
|
27
81
|
class InstancePrivateNetworkArgsDict(TypedDict):
|
28
82
|
pn_id: pulumi.Input[str]
|
@@ -27,7 +27,7 @@ class GetInstanceResult:
|
|
27
27
|
"""
|
28
28
|
A collection of values returned by getInstance.
|
29
29
|
"""
|
30
|
-
def __init__(__self__, created_at=None, id=None, instance_id=None, name=None, node_number=None, node_type=None, password=None, private_networks=None, project_id=None, public_networks=None, region=None, settings=None, snapshot_id=None, tags=None, updated_at=None, user_name=None, version=None, volume_size_in_gb=None, volume_type=None):
|
30
|
+
def __init__(__self__, created_at=None, id=None, instance_id=None, name=None, node_number=None, node_type=None, password=None, private_ips=None, private_networks=None, project_id=None, public_networks=None, region=None, settings=None, snapshot_id=None, tags=None, updated_at=None, user_name=None, version=None, volume_size_in_gb=None, volume_type=None):
|
31
31
|
if created_at and not isinstance(created_at, str):
|
32
32
|
raise TypeError("Expected argument 'created_at' to be a str")
|
33
33
|
pulumi.set(__self__, "created_at", created_at)
|
@@ -49,6 +49,9 @@ class GetInstanceResult:
|
|
49
49
|
if password and not isinstance(password, str):
|
50
50
|
raise TypeError("Expected argument 'password' to be a str")
|
51
51
|
pulumi.set(__self__, "password", password)
|
52
|
+
if private_ips and not isinstance(private_ips, list):
|
53
|
+
raise TypeError("Expected argument 'private_ips' to be a list")
|
54
|
+
pulumi.set(__self__, "private_ips", private_ips)
|
52
55
|
if private_networks and not isinstance(private_networks, list):
|
53
56
|
raise TypeError("Expected argument 'private_networks' to be a list")
|
54
57
|
pulumi.set(__self__, "private_networks", private_networks)
|
@@ -136,6 +139,11 @@ class GetInstanceResult:
|
|
136
139
|
def password(self) -> str:
|
137
140
|
return pulumi.get(self, "password")
|
138
141
|
|
142
|
+
@property
|
143
|
+
@pulumi.getter(name="privateIps")
|
144
|
+
def private_ips(self) -> Sequence['outputs.GetInstancePrivateIpResult']:
|
145
|
+
return pulumi.get(self, "private_ips")
|
146
|
+
|
139
147
|
@property
|
140
148
|
@pulumi.getter(name="privateNetworks")
|
141
149
|
def private_networks(self) -> Sequence['outputs.GetInstancePrivateNetworkResult']:
|
@@ -228,6 +236,7 @@ class AwaitableGetInstanceResult(GetInstanceResult):
|
|
228
236
|
node_number=self.node_number,
|
229
237
|
node_type=self.node_type,
|
230
238
|
password=self.password,
|
239
|
+
private_ips=self.private_ips,
|
231
240
|
private_networks=self.private_networks,
|
232
241
|
project_id=self.project_id,
|
233
242
|
public_networks=self.public_networks,
|
@@ -276,6 +285,7 @@ def get_instance(instance_id: Optional[str] = None,
|
|
276
285
|
node_number=pulumi.get(__ret__, 'node_number'),
|
277
286
|
node_type=pulumi.get(__ret__, 'node_type'),
|
278
287
|
password=pulumi.get(__ret__, 'password'),
|
288
|
+
private_ips=pulumi.get(__ret__, 'private_ips'),
|
279
289
|
private_networks=pulumi.get(__ret__, 'private_networks'),
|
280
290
|
project_id=pulumi.get(__ret__, 'project_id'),
|
281
291
|
public_networks=pulumi.get(__ret__, 'public_networks'),
|
@@ -321,6 +331,7 @@ def get_instance_output(instance_id: Optional[pulumi.Input[Optional[str]]] = Non
|
|
321
331
|
node_number=pulumi.get(__response__, 'node_number'),
|
322
332
|
node_type=pulumi.get(__response__, 'node_type'),
|
323
333
|
password=pulumi.get(__response__, 'password'),
|
334
|
+
private_ips=pulumi.get(__response__, 'private_ips'),
|
324
335
|
private_networks=pulumi.get(__response__, 'private_networks'),
|
325
336
|
project_id=pulumi.get(__response__, 'project_id'),
|
326
337
|
public_networks=pulumi.get(__response__, 'public_networks'),
|