pulumiverse-scaleway 1.16.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.

Files changed (205) hide show
  1. pulumiverse_scaleway/__init__.py +1073 -0
  2. pulumiverse_scaleway/_inputs.py +8665 -0
  3. pulumiverse_scaleway/_utilities.py +327 -0
  4. pulumiverse_scaleway/account_project.py +316 -0
  5. pulumiverse_scaleway/account_ssh_key.py +450 -0
  6. pulumiverse_scaleway/apple_silicon_server.py +564 -0
  7. pulumiverse_scaleway/baremetal_server.py +1390 -0
  8. pulumiverse_scaleway/block_snapshot.py +391 -0
  9. pulumiverse_scaleway/block_volume.py +521 -0
  10. pulumiverse_scaleway/cockpit.py +299 -0
  11. pulumiverse_scaleway/cockpit_alert_manager.py +345 -0
  12. pulumiverse_scaleway/cockpit_grafana_user.py +326 -0
  13. pulumiverse_scaleway/cockpit_source.py +481 -0
  14. pulumiverse_scaleway/cockpit_token.py +461 -0
  15. pulumiverse_scaleway/config/__init__.py +8 -0
  16. pulumiverse_scaleway/config/__init__.pyi +56 -0
  17. pulumiverse_scaleway/config/vars.py +78 -0
  18. pulumiverse_scaleway/container.py +1387 -0
  19. pulumiverse_scaleway/container_cron.py +493 -0
  20. pulumiverse_scaleway/container_domain.py +400 -0
  21. pulumiverse_scaleway/container_namespace.py +589 -0
  22. pulumiverse_scaleway/container_token.py +454 -0
  23. pulumiverse_scaleway/container_trigger.py +478 -0
  24. pulumiverse_scaleway/database.py +407 -0
  25. pulumiverse_scaleway/database_acl.py +332 -0
  26. pulumiverse_scaleway/database_backup.py +574 -0
  27. pulumiverse_scaleway/database_instance.py +1636 -0
  28. pulumiverse_scaleway/database_privilege.py +422 -0
  29. pulumiverse_scaleway/database_read_replica.py +528 -0
  30. pulumiverse_scaleway/database_user.py +446 -0
  31. pulumiverse_scaleway/documentdb_database.py +450 -0
  32. pulumiverse_scaleway/documentdb_instance.py +812 -0
  33. pulumiverse_scaleway/documentdb_private_network_endpoint.py +352 -0
  34. pulumiverse_scaleway/documentdb_privilege.py +402 -0
  35. pulumiverse_scaleway/documentdb_read_replica.py +405 -0
  36. pulumiverse_scaleway/documentdb_user.py +442 -0
  37. pulumiverse_scaleway/domain_record.py +1074 -0
  38. pulumiverse_scaleway/domain_zone.py +458 -0
  39. pulumiverse_scaleway/flexible_ip.py +702 -0
  40. pulumiverse_scaleway/flexible_ip_mac_address.py +510 -0
  41. pulumiverse_scaleway/function.py +1145 -0
  42. pulumiverse_scaleway/function_cron.py +480 -0
  43. pulumiverse_scaleway/function_domain.py +361 -0
  44. pulumiverse_scaleway/function_namespace.py +533 -0
  45. pulumiverse_scaleway/function_token.py +462 -0
  46. pulumiverse_scaleway/function_trigger.py +478 -0
  47. pulumiverse_scaleway/get_account_project.py +164 -0
  48. pulumiverse_scaleway/get_account_ssh_key.py +201 -0
  49. pulumiverse_scaleway/get_availability_zones.py +131 -0
  50. pulumiverse_scaleway/get_baremetal_offer.py +245 -0
  51. pulumiverse_scaleway/get_baremetal_option.py +168 -0
  52. pulumiverse_scaleway/get_baremetal_os.py +174 -0
  53. pulumiverse_scaleway/get_baremetal_server.py +411 -0
  54. pulumiverse_scaleway/get_billing_consumptions.py +134 -0
  55. pulumiverse_scaleway/get_billing_invoices.py +154 -0
  56. pulumiverse_scaleway/get_block_snapshot.py +170 -0
  57. pulumiverse_scaleway/get_block_volume.py +186 -0
  58. pulumiverse_scaleway/get_cockpit.py +179 -0
  59. pulumiverse_scaleway/get_cockpit_plan.py +113 -0
  60. pulumiverse_scaleway/get_config.py +180 -0
  61. pulumiverse_scaleway/get_container.py +502 -0
  62. pulumiverse_scaleway/get_container_namespace.py +262 -0
  63. pulumiverse_scaleway/get_database.py +187 -0
  64. pulumiverse_scaleway/get_database_acl.py +143 -0
  65. pulumiverse_scaleway/get_database_backup.py +253 -0
  66. pulumiverse_scaleway/get_database_instance.py +404 -0
  67. pulumiverse_scaleway/get_database_privilege.py +181 -0
  68. pulumiverse_scaleway/get_documentdb_database.py +198 -0
  69. pulumiverse_scaleway/get_documentdb_instance.py +245 -0
  70. pulumiverse_scaleway/get_documentdb_load_balancer_endpoint.py +198 -0
  71. pulumiverse_scaleway/get_domain_record.py +334 -0
  72. pulumiverse_scaleway/get_domain_zone.py +225 -0
  73. pulumiverse_scaleway/get_flexible_ip.py +247 -0
  74. pulumiverse_scaleway/get_flexible_ips.py +240 -0
  75. pulumiverse_scaleway/get_function.py +357 -0
  76. pulumiverse_scaleway/get_function_namespace.py +227 -0
  77. pulumiverse_scaleway/get_iam_api_key.py +210 -0
  78. pulumiverse_scaleway/get_iam_application.py +210 -0
  79. pulumiverse_scaleway/get_iam_group.py +236 -0
  80. pulumiverse_scaleway/get_iam_ssh_key.py +212 -0
  81. pulumiverse_scaleway/get_iam_user.py +157 -0
  82. pulumiverse_scaleway/get_instance_image.py +305 -0
  83. pulumiverse_scaleway/get_instance_ip.py +204 -0
  84. pulumiverse_scaleway/get_instance_placement_group.py +212 -0
  85. pulumiverse_scaleway/get_instance_private_nic.py +215 -0
  86. pulumiverse_scaleway/get_instance_security_group.py +268 -0
  87. pulumiverse_scaleway/get_instance_server.py +502 -0
  88. pulumiverse_scaleway/get_instance_servers.py +187 -0
  89. pulumiverse_scaleway/get_instance_snapshot.py +248 -0
  90. pulumiverse_scaleway/get_instance_volume.py +215 -0
  91. pulumiverse_scaleway/get_iot_device.py +257 -0
  92. pulumiverse_scaleway/get_iot_hub.py +322 -0
  93. pulumiverse_scaleway/get_ipam_ip.py +419 -0
  94. pulumiverse_scaleway/get_ipam_ips.py +358 -0
  95. pulumiverse_scaleway/get_k8s_version.py +196 -0
  96. pulumiverse_scaleway/get_kubernetes_cluster.py +417 -0
  97. pulumiverse_scaleway/get_kubernetes_node_pool.py +436 -0
  98. pulumiverse_scaleway/get_lb_acls.py +198 -0
  99. pulumiverse_scaleway/get_lb_backend.py +486 -0
  100. pulumiverse_scaleway/get_lb_backends.py +196 -0
  101. pulumiverse_scaleway/get_lb_frontend.py +274 -0
  102. pulumiverse_scaleway/get_lb_frontends.py +196 -0
  103. pulumiverse_scaleway/get_lb_ips.py +198 -0
  104. pulumiverse_scaleway/get_lb_route.py +217 -0
  105. pulumiverse_scaleway/get_lb_routes.py +179 -0
  106. pulumiverse_scaleway/get_lbs.py +187 -0
  107. pulumiverse_scaleway/get_loadbalancer.py +339 -0
  108. pulumiverse_scaleway/get_loadbalancer_certificate.py +230 -0
  109. pulumiverse_scaleway/get_loadbalancer_ip.py +222 -0
  110. pulumiverse_scaleway/get_marketplace_image.py +147 -0
  111. pulumiverse_scaleway/get_mnq_sqs.py +150 -0
  112. pulumiverse_scaleway/get_object_bucket.py +278 -0
  113. pulumiverse_scaleway/get_object_bucket_policy.py +157 -0
  114. pulumiverse_scaleway/get_redis_cluster.py +347 -0
  115. pulumiverse_scaleway/get_registry_image.py +239 -0
  116. pulumiverse_scaleway/get_registry_namespace.py +199 -0
  117. pulumiverse_scaleway/get_secret.py +290 -0
  118. pulumiverse_scaleway/get_secret_version.py +303 -0
  119. pulumiverse_scaleway/get_tem_domain.py +367 -0
  120. pulumiverse_scaleway/get_vpc.py +246 -0
  121. pulumiverse_scaleway/get_vpc_gateway_network.py +287 -0
  122. pulumiverse_scaleway/get_vpc_private_network.py +282 -0
  123. pulumiverse_scaleway/get_vpc_public_gateway.py +304 -0
  124. pulumiverse_scaleway/get_vpc_public_gateway_dhcp.py +305 -0
  125. pulumiverse_scaleway/get_vpc_public_gateway_dhcp_reservation.py +382 -0
  126. pulumiverse_scaleway/get_vpc_public_gateway_ip.py +199 -0
  127. pulumiverse_scaleway/get_vpc_public_pat_rule.py +313 -0
  128. pulumiverse_scaleway/get_vpc_routes.py +208 -0
  129. pulumiverse_scaleway/get_vpcs.py +174 -0
  130. pulumiverse_scaleway/get_web_host_offer.py +192 -0
  131. pulumiverse_scaleway/get_webhosting.py +332 -0
  132. pulumiverse_scaleway/iam_api_key.py +620 -0
  133. pulumiverse_scaleway/iam_application.py +417 -0
  134. pulumiverse_scaleway/iam_group.py +566 -0
  135. pulumiverse_scaleway/iam_group_membership.py +323 -0
  136. pulumiverse_scaleway/iam_policy.py +727 -0
  137. pulumiverse_scaleway/iam_ssh_key.py +455 -0
  138. pulumiverse_scaleway/iam_user.py +466 -0
  139. pulumiverse_scaleway/instance_image.py +750 -0
  140. pulumiverse_scaleway/instance_ip.py +483 -0
  141. pulumiverse_scaleway/instance_ip_reverse_dns.py +308 -0
  142. pulumiverse_scaleway/instance_placement_group.py +479 -0
  143. pulumiverse_scaleway/instance_private_nic.py +454 -0
  144. pulumiverse_scaleway/instance_security_group.py +720 -0
  145. pulumiverse_scaleway/instance_security_group_rules.py +439 -0
  146. pulumiverse_scaleway/instance_server.py +1907 -0
  147. pulumiverse_scaleway/instance_snapshot.py +669 -0
  148. pulumiverse_scaleway/instance_user_data.py +435 -0
  149. pulumiverse_scaleway/instance_volume.py +535 -0
  150. pulumiverse_scaleway/iot_device.py +750 -0
  151. pulumiverse_scaleway/iot_hub.py +896 -0
  152. pulumiverse_scaleway/iot_network.py +425 -0
  153. pulumiverse_scaleway/iot_route.py +660 -0
  154. pulumiverse_scaleway/ipam_ip.py +666 -0
  155. pulumiverse_scaleway/ipam_ip_reverse_dns.py +318 -0
  156. pulumiverse_scaleway/job_definition.py +692 -0
  157. pulumiverse_scaleway/kubernetes_cluster.py +1538 -0
  158. pulumiverse_scaleway/kubernetes_node_pool.py +1255 -0
  159. pulumiverse_scaleway/loadbalancer.py +1095 -0
  160. pulumiverse_scaleway/loadbalancer_acl.py +520 -0
  161. pulumiverse_scaleway/loadbalancer_backend.py +1588 -0
  162. pulumiverse_scaleway/loadbalancer_certificate.py +460 -0
  163. pulumiverse_scaleway/loadbalancer_frontend.py +829 -0
  164. pulumiverse_scaleway/loadbalancer_ip.py +514 -0
  165. pulumiverse_scaleway/loadbalancer_route.py +523 -0
  166. pulumiverse_scaleway/mnq_nats_account.py +334 -0
  167. pulumiverse_scaleway/mnq_nats_credentials.py +328 -0
  168. pulumiverse_scaleway/mnq_sns.py +306 -0
  169. pulumiverse_scaleway/mnq_sns_credentials.py +413 -0
  170. pulumiverse_scaleway/mnq_sns_topic.py +659 -0
  171. pulumiverse_scaleway/mnq_sns_topic_subscription.py +699 -0
  172. pulumiverse_scaleway/mnq_sqs.py +304 -0
  173. pulumiverse_scaleway/mnq_sqs_credentials.py +413 -0
  174. pulumiverse_scaleway/mnq_sqs_queue.py +800 -0
  175. pulumiverse_scaleway/object_bucket.py +888 -0
  176. pulumiverse_scaleway/object_bucket_acl.py +592 -0
  177. pulumiverse_scaleway/object_bucket_lock_configuration.py +393 -0
  178. pulumiverse_scaleway/object_bucket_policy.py +671 -0
  179. pulumiverse_scaleway/object_bucket_website_configuration.py +532 -0
  180. pulumiverse_scaleway/object_item.py +711 -0
  181. pulumiverse_scaleway/outputs.py +11663 -0
  182. pulumiverse_scaleway/provider.py +327 -0
  183. pulumiverse_scaleway/pulumi-plugin.json +6 -0
  184. pulumiverse_scaleway/py.typed +0 -0
  185. pulumiverse_scaleway/redis_cluster.py +1166 -0
  186. pulumiverse_scaleway/registry_namespace.py +458 -0
  187. pulumiverse_scaleway/sdb_database.py +428 -0
  188. pulumiverse_scaleway/secret.py +560 -0
  189. pulumiverse_scaleway/secret_version.py +482 -0
  190. pulumiverse_scaleway/tem_domain.py +950 -0
  191. pulumiverse_scaleway/tem_domain_validation.py +303 -0
  192. pulumiverse_scaleway/vpc.py +536 -0
  193. pulumiverse_scaleway/vpc_gateway_network.py +866 -0
  194. pulumiverse_scaleway/vpc_private_network.py +734 -0
  195. pulumiverse_scaleway/vpc_public_gateway.py +789 -0
  196. pulumiverse_scaleway/vpc_public_gateway_dhcp.py +933 -0
  197. pulumiverse_scaleway/vpc_public_gateway_dhcp_reservation.py +514 -0
  198. pulumiverse_scaleway/vpc_public_gateway_ip.py +457 -0
  199. pulumiverse_scaleway/vpc_public_gateway_ip_reverse_dns.py +306 -0
  200. pulumiverse_scaleway/vpc_public_gateway_pat_rule.py +591 -0
  201. pulumiverse_scaleway/webhosting.py +805 -0
  202. pulumiverse_scaleway-1.16.0.dist-info/METADATA +69 -0
  203. pulumiverse_scaleway-1.16.0.dist-info/RECORD +205 -0
  204. pulumiverse_scaleway-1.16.0.dist-info/WHEEL +5 -0
  205. pulumiverse_scaleway-1.16.0.dist-info/top_level.txt +1 -0
@@ -0,0 +1,246 @@
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
+ 'GetVpcResult',
19
+ 'AwaitableGetVpcResult',
20
+ 'get_vpc',
21
+ 'get_vpc_output',
22
+ ]
23
+
24
+ @pulumi.output_type
25
+ class GetVpcResult:
26
+ """
27
+ A collection of values returned by getVpc.
28
+ """
29
+ def __init__(__self__, created_at=None, enable_routing=None, id=None, is_default=None, name=None, organization_id=None, project_id=None, region=None, tags=None, updated_at=None, vpc_id=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 enable_routing and not isinstance(enable_routing, bool):
34
+ raise TypeError("Expected argument 'enable_routing' to be a bool")
35
+ pulumi.set(__self__, "enable_routing", enable_routing)
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 is_default and not isinstance(is_default, bool):
40
+ raise TypeError("Expected argument 'is_default' to be a bool")
41
+ pulumi.set(__self__, "is_default", is_default)
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 tags and not isinstance(tags, list):
55
+ raise TypeError("Expected argument 'tags' to be a list")
56
+ pulumi.set(__self__, "tags", tags)
57
+ if updated_at and not isinstance(updated_at, str):
58
+ raise TypeError("Expected argument 'updated_at' to be a str")
59
+ pulumi.set(__self__, "updated_at", updated_at)
60
+ if vpc_id and not isinstance(vpc_id, str):
61
+ raise TypeError("Expected argument 'vpc_id' to be a str")
62
+ pulumi.set(__self__, "vpc_id", vpc_id)
63
+
64
+ @property
65
+ @pulumi.getter(name="createdAt")
66
+ def created_at(self) -> str:
67
+ return pulumi.get(self, "created_at")
68
+
69
+ @property
70
+ @pulumi.getter(name="enableRouting")
71
+ def enable_routing(self) -> bool:
72
+ return pulumi.get(self, "enable_routing")
73
+
74
+ @property
75
+ @pulumi.getter
76
+ def id(self) -> str:
77
+ """
78
+ The provider-assigned unique ID for this managed resource.
79
+ """
80
+ return pulumi.get(self, "id")
81
+
82
+ @property
83
+ @pulumi.getter(name="isDefault")
84
+ def is_default(self) -> Optional[bool]:
85
+ return pulumi.get(self, "is_default")
86
+
87
+ @property
88
+ @pulumi.getter
89
+ def name(self) -> Optional[str]:
90
+ return pulumi.get(self, "name")
91
+
92
+ @property
93
+ @pulumi.getter(name="organizationId")
94
+ def organization_id(self) -> str:
95
+ return pulumi.get(self, "organization_id")
96
+
97
+ @property
98
+ @pulumi.getter(name="projectId")
99
+ def project_id(self) -> Optional[str]:
100
+ return pulumi.get(self, "project_id")
101
+
102
+ @property
103
+ @pulumi.getter
104
+ def region(self) -> Optional[str]:
105
+ return pulumi.get(self, "region")
106
+
107
+ @property
108
+ @pulumi.getter
109
+ def tags(self) -> Sequence[str]:
110
+ return pulumi.get(self, "tags")
111
+
112
+ @property
113
+ @pulumi.getter(name="updatedAt")
114
+ def updated_at(self) -> str:
115
+ return pulumi.get(self, "updated_at")
116
+
117
+ @property
118
+ @pulumi.getter(name="vpcId")
119
+ def vpc_id(self) -> Optional[str]:
120
+ return pulumi.get(self, "vpc_id")
121
+
122
+
123
+ class AwaitableGetVpcResult(GetVpcResult):
124
+ # pylint: disable=using-constant-test
125
+ def __await__(self):
126
+ if False:
127
+ yield self
128
+ return GetVpcResult(
129
+ created_at=self.created_at,
130
+ enable_routing=self.enable_routing,
131
+ id=self.id,
132
+ is_default=self.is_default,
133
+ name=self.name,
134
+ organization_id=self.organization_id,
135
+ project_id=self.project_id,
136
+ region=self.region,
137
+ tags=self.tags,
138
+ updated_at=self.updated_at,
139
+ vpc_id=self.vpc_id)
140
+
141
+
142
+ def get_vpc(is_default: Optional[bool] = None,
143
+ name: Optional[str] = None,
144
+ organization_id: Optional[str] = None,
145
+ project_id: Optional[str] = None,
146
+ region: Optional[str] = None,
147
+ vpc_id: Optional[str] = None,
148
+ opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetVpcResult:
149
+ """
150
+ Gets information about a Scaleway Virtual Private Cloud.
151
+
152
+ ## Example Usage
153
+
154
+ ```python
155
+ import pulumi
156
+ import pulumi_scaleway as scaleway
157
+
158
+ # Get info by name
159
+ by_name = scaleway.get_vpc(name="foobar")
160
+ # Get info by ID
161
+ by_id = scaleway.get_vpc(vpc_id="11111111-1111-1111-1111-111111111111")
162
+ # Get default VPC info
163
+ default = scaleway.get_vpc(is_default=True)
164
+ ```
165
+
166
+
167
+ :param bool is_default: Whether the targeted VPC is the default VPC.
168
+ :param str name: Name of the VPC. A maximum of one of `name` and `vpc_id` should be specified.
169
+ :param str organization_id: The ID of the Organization the VPC is associated with.
170
+ :param str project_id: `project_id`) The ID of the Project the VPC is associated with.
171
+ :param str vpc_id: ID of the VPC. A maximum of one of `name` and `vpc_id` should be specified.
172
+ """
173
+ __args__ = dict()
174
+ __args__['isDefault'] = is_default
175
+ __args__['name'] = name
176
+ __args__['organizationId'] = organization_id
177
+ __args__['projectId'] = project_id
178
+ __args__['region'] = region
179
+ __args__['vpcId'] = vpc_id
180
+ opts = pulumi.InvokeOptions.merge(_utilities.get_invoke_opts_defaults(), opts)
181
+ __ret__ = pulumi.runtime.invoke('scaleway:index/getVpc:getVpc', __args__, opts=opts, typ=GetVpcResult).value
182
+
183
+ return AwaitableGetVpcResult(
184
+ created_at=pulumi.get(__ret__, 'created_at'),
185
+ enable_routing=pulumi.get(__ret__, 'enable_routing'),
186
+ id=pulumi.get(__ret__, 'id'),
187
+ is_default=pulumi.get(__ret__, 'is_default'),
188
+ name=pulumi.get(__ret__, 'name'),
189
+ organization_id=pulumi.get(__ret__, 'organization_id'),
190
+ project_id=pulumi.get(__ret__, 'project_id'),
191
+ region=pulumi.get(__ret__, 'region'),
192
+ tags=pulumi.get(__ret__, 'tags'),
193
+ updated_at=pulumi.get(__ret__, 'updated_at'),
194
+ vpc_id=pulumi.get(__ret__, 'vpc_id'))
195
+ def get_vpc_output(is_default: Optional[pulumi.Input[Optional[bool]]] = None,
196
+ name: Optional[pulumi.Input[Optional[str]]] = None,
197
+ organization_id: Optional[pulumi.Input[Optional[str]]] = None,
198
+ project_id: Optional[pulumi.Input[Optional[str]]] = None,
199
+ region: Optional[pulumi.Input[Optional[str]]] = None,
200
+ vpc_id: Optional[pulumi.Input[Optional[str]]] = None,
201
+ opts: Optional[pulumi.InvokeOptions] = None) -> pulumi.Output[GetVpcResult]:
202
+ """
203
+ Gets information about a Scaleway Virtual Private Cloud.
204
+
205
+ ## Example Usage
206
+
207
+ ```python
208
+ import pulumi
209
+ import pulumi_scaleway as scaleway
210
+
211
+ # Get info by name
212
+ by_name = scaleway.get_vpc(name="foobar")
213
+ # Get info by ID
214
+ by_id = scaleway.get_vpc(vpc_id="11111111-1111-1111-1111-111111111111")
215
+ # Get default VPC info
216
+ default = scaleway.get_vpc(is_default=True)
217
+ ```
218
+
219
+
220
+ :param bool is_default: Whether the targeted VPC is the default VPC.
221
+ :param str name: Name of the VPC. A maximum of one of `name` and `vpc_id` should be specified.
222
+ :param str organization_id: The ID of the Organization the VPC is associated with.
223
+ :param str project_id: `project_id`) The ID of the Project the VPC is associated with.
224
+ :param str vpc_id: ID of the VPC. A maximum of one of `name` and `vpc_id` should be specified.
225
+ """
226
+ __args__ = dict()
227
+ __args__['isDefault'] = is_default
228
+ __args__['name'] = name
229
+ __args__['organizationId'] = organization_id
230
+ __args__['projectId'] = project_id
231
+ __args__['region'] = region
232
+ __args__['vpcId'] = vpc_id
233
+ opts = pulumi.InvokeOptions.merge(_utilities.get_invoke_opts_defaults(), opts)
234
+ __ret__ = pulumi.runtime.invoke_output('scaleway:index/getVpc:getVpc', __args__, opts=opts, typ=GetVpcResult)
235
+ return __ret__.apply(lambda __response__: GetVpcResult(
236
+ created_at=pulumi.get(__response__, 'created_at'),
237
+ enable_routing=pulumi.get(__response__, 'enable_routing'),
238
+ id=pulumi.get(__response__, 'id'),
239
+ is_default=pulumi.get(__response__, 'is_default'),
240
+ name=pulumi.get(__response__, 'name'),
241
+ organization_id=pulumi.get(__response__, 'organization_id'),
242
+ project_id=pulumi.get(__response__, 'project_id'),
243
+ region=pulumi.get(__response__, 'region'),
244
+ tags=pulumi.get(__response__, 'tags'),
245
+ updated_at=pulumi.get(__response__, 'updated_at'),
246
+ vpc_id=pulumi.get(__response__, 'vpc_id')))
@@ -0,0 +1,287 @@
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
+ from . import outputs
17
+
18
+ __all__ = [
19
+ 'GetVpcGatewayNetworkResult',
20
+ 'AwaitableGetVpcGatewayNetworkResult',
21
+ 'get_vpc_gateway_network',
22
+ 'get_vpc_gateway_network_output',
23
+ ]
24
+
25
+ @pulumi.output_type
26
+ class GetVpcGatewayNetworkResult:
27
+ """
28
+ A collection of values returned by getVpcGatewayNetwork.
29
+ """
30
+ def __init__(__self__, cleanup_dhcp=None, created_at=None, dhcp_id=None, enable_dhcp=None, enable_masquerade=None, gateway_id=None, gateway_network_id=None, id=None, ipam_configs=None, mac_address=None, private_network_id=None, static_address=None, status=None, updated_at=None, zone=None):
31
+ if cleanup_dhcp and not isinstance(cleanup_dhcp, bool):
32
+ raise TypeError("Expected argument 'cleanup_dhcp' to be a bool")
33
+ pulumi.set(__self__, "cleanup_dhcp", cleanup_dhcp)
34
+ if created_at and not isinstance(created_at, str):
35
+ raise TypeError("Expected argument 'created_at' to be a str")
36
+ pulumi.set(__self__, "created_at", created_at)
37
+ if dhcp_id and not isinstance(dhcp_id, str):
38
+ raise TypeError("Expected argument 'dhcp_id' to be a str")
39
+ pulumi.set(__self__, "dhcp_id", dhcp_id)
40
+ if enable_dhcp and not isinstance(enable_dhcp, bool):
41
+ raise TypeError("Expected argument 'enable_dhcp' to be a bool")
42
+ pulumi.set(__self__, "enable_dhcp", enable_dhcp)
43
+ if enable_masquerade and not isinstance(enable_masquerade, bool):
44
+ raise TypeError("Expected argument 'enable_masquerade' to be a bool")
45
+ pulumi.set(__self__, "enable_masquerade", enable_masquerade)
46
+ if gateway_id and not isinstance(gateway_id, str):
47
+ raise TypeError("Expected argument 'gateway_id' to be a str")
48
+ pulumi.set(__self__, "gateway_id", gateway_id)
49
+ if gateway_network_id and not isinstance(gateway_network_id, str):
50
+ raise TypeError("Expected argument 'gateway_network_id' to be a str")
51
+ pulumi.set(__self__, "gateway_network_id", gateway_network_id)
52
+ if id and not isinstance(id, str):
53
+ raise TypeError("Expected argument 'id' to be a str")
54
+ pulumi.set(__self__, "id", id)
55
+ if ipam_configs and not isinstance(ipam_configs, list):
56
+ raise TypeError("Expected argument 'ipam_configs' to be a list")
57
+ pulumi.set(__self__, "ipam_configs", ipam_configs)
58
+ if mac_address and not isinstance(mac_address, str):
59
+ raise TypeError("Expected argument 'mac_address' to be a str")
60
+ pulumi.set(__self__, "mac_address", mac_address)
61
+ if private_network_id and not isinstance(private_network_id, str):
62
+ raise TypeError("Expected argument 'private_network_id' to be a str")
63
+ pulumi.set(__self__, "private_network_id", private_network_id)
64
+ if static_address and not isinstance(static_address, str):
65
+ raise TypeError("Expected argument 'static_address' to be a str")
66
+ pulumi.set(__self__, "static_address", static_address)
67
+ if status and not isinstance(status, str):
68
+ raise TypeError("Expected argument 'status' to be a str")
69
+ pulumi.set(__self__, "status", status)
70
+ if updated_at and not isinstance(updated_at, str):
71
+ raise TypeError("Expected argument 'updated_at' to be a str")
72
+ pulumi.set(__self__, "updated_at", updated_at)
73
+ if zone and not isinstance(zone, str):
74
+ raise TypeError("Expected argument 'zone' to be a str")
75
+ pulumi.set(__self__, "zone", zone)
76
+
77
+ @property
78
+ @pulumi.getter(name="cleanupDhcp")
79
+ def cleanup_dhcp(self) -> bool:
80
+ return pulumi.get(self, "cleanup_dhcp")
81
+
82
+ @property
83
+ @pulumi.getter(name="createdAt")
84
+ def created_at(self) -> str:
85
+ return pulumi.get(self, "created_at")
86
+
87
+ @property
88
+ @pulumi.getter(name="dhcpId")
89
+ def dhcp_id(self) -> Optional[str]:
90
+ return pulumi.get(self, "dhcp_id")
91
+
92
+ @property
93
+ @pulumi.getter(name="enableDhcp")
94
+ def enable_dhcp(self) -> bool:
95
+ return pulumi.get(self, "enable_dhcp")
96
+
97
+ @property
98
+ @pulumi.getter(name="enableMasquerade")
99
+ def enable_masquerade(self) -> Optional[bool]:
100
+ return pulumi.get(self, "enable_masquerade")
101
+
102
+ @property
103
+ @pulumi.getter(name="gatewayId")
104
+ def gateway_id(self) -> Optional[str]:
105
+ return pulumi.get(self, "gateway_id")
106
+
107
+ @property
108
+ @pulumi.getter(name="gatewayNetworkId")
109
+ def gateway_network_id(self) -> Optional[str]:
110
+ return pulumi.get(self, "gateway_network_id")
111
+
112
+ @property
113
+ @pulumi.getter
114
+ def id(self) -> str:
115
+ """
116
+ The provider-assigned unique ID for this managed resource.
117
+ """
118
+ return pulumi.get(self, "id")
119
+
120
+ @property
121
+ @pulumi.getter(name="ipamConfigs")
122
+ def ipam_configs(self) -> Sequence['outputs.GetVpcGatewayNetworkIpamConfigResult']:
123
+ return pulumi.get(self, "ipam_configs")
124
+
125
+ @property
126
+ @pulumi.getter(name="macAddress")
127
+ def mac_address(self) -> str:
128
+ return pulumi.get(self, "mac_address")
129
+
130
+ @property
131
+ @pulumi.getter(name="privateNetworkId")
132
+ def private_network_id(self) -> Optional[str]:
133
+ return pulumi.get(self, "private_network_id")
134
+
135
+ @property
136
+ @pulumi.getter(name="staticAddress")
137
+ def static_address(self) -> str:
138
+ return pulumi.get(self, "static_address")
139
+
140
+ @property
141
+ @pulumi.getter
142
+ def status(self) -> str:
143
+ return pulumi.get(self, "status")
144
+
145
+ @property
146
+ @pulumi.getter(name="updatedAt")
147
+ def updated_at(self) -> str:
148
+ return pulumi.get(self, "updated_at")
149
+
150
+ @property
151
+ @pulumi.getter
152
+ def zone(self) -> str:
153
+ return pulumi.get(self, "zone")
154
+
155
+
156
+ class AwaitableGetVpcGatewayNetworkResult(GetVpcGatewayNetworkResult):
157
+ # pylint: disable=using-constant-test
158
+ def __await__(self):
159
+ if False:
160
+ yield self
161
+ return GetVpcGatewayNetworkResult(
162
+ cleanup_dhcp=self.cleanup_dhcp,
163
+ created_at=self.created_at,
164
+ dhcp_id=self.dhcp_id,
165
+ enable_dhcp=self.enable_dhcp,
166
+ enable_masquerade=self.enable_masquerade,
167
+ gateway_id=self.gateway_id,
168
+ gateway_network_id=self.gateway_network_id,
169
+ id=self.id,
170
+ ipam_configs=self.ipam_configs,
171
+ mac_address=self.mac_address,
172
+ private_network_id=self.private_network_id,
173
+ static_address=self.static_address,
174
+ status=self.status,
175
+ updated_at=self.updated_at,
176
+ zone=self.zone)
177
+
178
+
179
+ def get_vpc_gateway_network(dhcp_id: Optional[str] = None,
180
+ enable_masquerade: Optional[bool] = None,
181
+ gateway_id: Optional[str] = None,
182
+ gateway_network_id: Optional[str] = None,
183
+ private_network_id: Optional[str] = None,
184
+ opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetVpcGatewayNetworkResult:
185
+ """
186
+ Gets information about a GatewayNetwork (a connection between a Public Gateway and a Private Network).
187
+
188
+ ## Example Usage
189
+
190
+ ```python
191
+ import pulumi
192
+ import pulumi_scaleway as scaleway
193
+ import pulumiverse_scaleway as scaleway
194
+
195
+ main = scaleway.VpcGatewayNetwork("main",
196
+ gateway_id=pg01["id"],
197
+ private_network_id=pn01["id"],
198
+ dhcp_id=dhcp01["id"],
199
+ cleanup_dhcp=True,
200
+ enable_masquerade=True)
201
+ by_id = scaleway.get_vpc_gateway_network_output(gateway_network_id=main.id)
202
+ by_gateway_and_pn = scaleway.get_vpc_gateway_network(gateway_id=pg01["id"],
203
+ private_network_id=pn01["id"])
204
+ ```
205
+
206
+
207
+ :param str gateway_network_id: ID of the GatewayNetwork.
208
+ """
209
+ __args__ = dict()
210
+ __args__['dhcpId'] = dhcp_id
211
+ __args__['enableMasquerade'] = enable_masquerade
212
+ __args__['gatewayId'] = gateway_id
213
+ __args__['gatewayNetworkId'] = gateway_network_id
214
+ __args__['privateNetworkId'] = private_network_id
215
+ opts = pulumi.InvokeOptions.merge(_utilities.get_invoke_opts_defaults(), opts)
216
+ __ret__ = pulumi.runtime.invoke('scaleway:index/getVpcGatewayNetwork:getVpcGatewayNetwork', __args__, opts=opts, typ=GetVpcGatewayNetworkResult).value
217
+
218
+ return AwaitableGetVpcGatewayNetworkResult(
219
+ cleanup_dhcp=pulumi.get(__ret__, 'cleanup_dhcp'),
220
+ created_at=pulumi.get(__ret__, 'created_at'),
221
+ dhcp_id=pulumi.get(__ret__, 'dhcp_id'),
222
+ enable_dhcp=pulumi.get(__ret__, 'enable_dhcp'),
223
+ enable_masquerade=pulumi.get(__ret__, 'enable_masquerade'),
224
+ gateway_id=pulumi.get(__ret__, 'gateway_id'),
225
+ gateway_network_id=pulumi.get(__ret__, 'gateway_network_id'),
226
+ id=pulumi.get(__ret__, 'id'),
227
+ ipam_configs=pulumi.get(__ret__, 'ipam_configs'),
228
+ mac_address=pulumi.get(__ret__, 'mac_address'),
229
+ private_network_id=pulumi.get(__ret__, 'private_network_id'),
230
+ static_address=pulumi.get(__ret__, 'static_address'),
231
+ status=pulumi.get(__ret__, 'status'),
232
+ updated_at=pulumi.get(__ret__, 'updated_at'),
233
+ zone=pulumi.get(__ret__, 'zone'))
234
+ def get_vpc_gateway_network_output(dhcp_id: Optional[pulumi.Input[Optional[str]]] = None,
235
+ enable_masquerade: Optional[pulumi.Input[Optional[bool]]] = None,
236
+ gateway_id: Optional[pulumi.Input[Optional[str]]] = None,
237
+ gateway_network_id: Optional[pulumi.Input[Optional[str]]] = None,
238
+ private_network_id: Optional[pulumi.Input[Optional[str]]] = None,
239
+ opts: Optional[pulumi.InvokeOptions] = None) -> pulumi.Output[GetVpcGatewayNetworkResult]:
240
+ """
241
+ Gets information about a GatewayNetwork (a connection between a Public Gateway and a Private Network).
242
+
243
+ ## Example Usage
244
+
245
+ ```python
246
+ import pulumi
247
+ import pulumi_scaleway as scaleway
248
+ import pulumiverse_scaleway as scaleway
249
+
250
+ main = scaleway.VpcGatewayNetwork("main",
251
+ gateway_id=pg01["id"],
252
+ private_network_id=pn01["id"],
253
+ dhcp_id=dhcp01["id"],
254
+ cleanup_dhcp=True,
255
+ enable_masquerade=True)
256
+ by_id = scaleway.get_vpc_gateway_network_output(gateway_network_id=main.id)
257
+ by_gateway_and_pn = scaleway.get_vpc_gateway_network(gateway_id=pg01["id"],
258
+ private_network_id=pn01["id"])
259
+ ```
260
+
261
+
262
+ :param str gateway_network_id: ID of the GatewayNetwork.
263
+ """
264
+ __args__ = dict()
265
+ __args__['dhcpId'] = dhcp_id
266
+ __args__['enableMasquerade'] = enable_masquerade
267
+ __args__['gatewayId'] = gateway_id
268
+ __args__['gatewayNetworkId'] = gateway_network_id
269
+ __args__['privateNetworkId'] = private_network_id
270
+ opts = pulumi.InvokeOptions.merge(_utilities.get_invoke_opts_defaults(), opts)
271
+ __ret__ = pulumi.runtime.invoke_output('scaleway:index/getVpcGatewayNetwork:getVpcGatewayNetwork', __args__, opts=opts, typ=GetVpcGatewayNetworkResult)
272
+ return __ret__.apply(lambda __response__: GetVpcGatewayNetworkResult(
273
+ cleanup_dhcp=pulumi.get(__response__, 'cleanup_dhcp'),
274
+ created_at=pulumi.get(__response__, 'created_at'),
275
+ dhcp_id=pulumi.get(__response__, 'dhcp_id'),
276
+ enable_dhcp=pulumi.get(__response__, 'enable_dhcp'),
277
+ enable_masquerade=pulumi.get(__response__, 'enable_masquerade'),
278
+ gateway_id=pulumi.get(__response__, 'gateway_id'),
279
+ gateway_network_id=pulumi.get(__response__, 'gateway_network_id'),
280
+ id=pulumi.get(__response__, 'id'),
281
+ ipam_configs=pulumi.get(__response__, 'ipam_configs'),
282
+ mac_address=pulumi.get(__response__, 'mac_address'),
283
+ private_network_id=pulumi.get(__response__, 'private_network_id'),
284
+ static_address=pulumi.get(__response__, 'static_address'),
285
+ status=pulumi.get(__response__, 'status'),
286
+ updated_at=pulumi.get(__response__, 'updated_at'),
287
+ zone=pulumi.get(__response__, 'zone')))