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,305 @@
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
+ 'GetVpcPublicGatewayDhcpResult',
19
+ 'AwaitableGetVpcPublicGatewayDhcpResult',
20
+ 'get_vpc_public_gateway_dhcp',
21
+ 'get_vpc_public_gateway_dhcp_output',
22
+ ]
23
+
24
+ @pulumi.output_type
25
+ class GetVpcPublicGatewayDhcpResult:
26
+ """
27
+ A collection of values returned by getVpcPublicGatewayDhcp.
28
+ """
29
+ def __init__(__self__, address=None, created_at=None, dhcp_id=None, dns_local_name=None, dns_searches=None, dns_servers_overrides=None, enable_dynamic=None, id=None, organization_id=None, pool_high=None, pool_low=None, project_id=None, push_default_route=None, push_dns_server=None, rebind_timer=None, renew_timer=None, subnet=None, updated_at=None, valid_lifetime=None, zone=None):
30
+ if address and not isinstance(address, str):
31
+ raise TypeError("Expected argument 'address' to be a str")
32
+ pulumi.set(__self__, "address", address)
33
+ if created_at and not isinstance(created_at, str):
34
+ raise TypeError("Expected argument 'created_at' to be a str")
35
+ pulumi.set(__self__, "created_at", created_at)
36
+ if dhcp_id and not isinstance(dhcp_id, str):
37
+ raise TypeError("Expected argument 'dhcp_id' to be a str")
38
+ pulumi.set(__self__, "dhcp_id", dhcp_id)
39
+ if dns_local_name and not isinstance(dns_local_name, str):
40
+ raise TypeError("Expected argument 'dns_local_name' to be a str")
41
+ pulumi.set(__self__, "dns_local_name", dns_local_name)
42
+ if dns_searches and not isinstance(dns_searches, list):
43
+ raise TypeError("Expected argument 'dns_searches' to be a list")
44
+ pulumi.set(__self__, "dns_searches", dns_searches)
45
+ if dns_servers_overrides and not isinstance(dns_servers_overrides, list):
46
+ raise TypeError("Expected argument 'dns_servers_overrides' to be a list")
47
+ pulumi.set(__self__, "dns_servers_overrides", dns_servers_overrides)
48
+ if enable_dynamic and not isinstance(enable_dynamic, bool):
49
+ raise TypeError("Expected argument 'enable_dynamic' to be a bool")
50
+ pulumi.set(__self__, "enable_dynamic", enable_dynamic)
51
+ if id and not isinstance(id, str):
52
+ raise TypeError("Expected argument 'id' to be a str")
53
+ pulumi.set(__self__, "id", id)
54
+ if organization_id and not isinstance(organization_id, str):
55
+ raise TypeError("Expected argument 'organization_id' to be a str")
56
+ pulumi.set(__self__, "organization_id", organization_id)
57
+ if pool_high and not isinstance(pool_high, str):
58
+ raise TypeError("Expected argument 'pool_high' to be a str")
59
+ pulumi.set(__self__, "pool_high", pool_high)
60
+ if pool_low and not isinstance(pool_low, str):
61
+ raise TypeError("Expected argument 'pool_low' to be a str")
62
+ pulumi.set(__self__, "pool_low", pool_low)
63
+ if project_id and not isinstance(project_id, str):
64
+ raise TypeError("Expected argument 'project_id' to be a str")
65
+ pulumi.set(__self__, "project_id", project_id)
66
+ if push_default_route and not isinstance(push_default_route, bool):
67
+ raise TypeError("Expected argument 'push_default_route' to be a bool")
68
+ pulumi.set(__self__, "push_default_route", push_default_route)
69
+ if push_dns_server and not isinstance(push_dns_server, bool):
70
+ raise TypeError("Expected argument 'push_dns_server' to be a bool")
71
+ pulumi.set(__self__, "push_dns_server", push_dns_server)
72
+ if rebind_timer and not isinstance(rebind_timer, int):
73
+ raise TypeError("Expected argument 'rebind_timer' to be a int")
74
+ pulumi.set(__self__, "rebind_timer", rebind_timer)
75
+ if renew_timer and not isinstance(renew_timer, int):
76
+ raise TypeError("Expected argument 'renew_timer' to be a int")
77
+ pulumi.set(__self__, "renew_timer", renew_timer)
78
+ if subnet and not isinstance(subnet, str):
79
+ raise TypeError("Expected argument 'subnet' to be a str")
80
+ pulumi.set(__self__, "subnet", subnet)
81
+ if updated_at and not isinstance(updated_at, str):
82
+ raise TypeError("Expected argument 'updated_at' to be a str")
83
+ pulumi.set(__self__, "updated_at", updated_at)
84
+ if valid_lifetime and not isinstance(valid_lifetime, int):
85
+ raise TypeError("Expected argument 'valid_lifetime' to be a int")
86
+ pulumi.set(__self__, "valid_lifetime", valid_lifetime)
87
+ if zone and not isinstance(zone, str):
88
+ raise TypeError("Expected argument 'zone' to be a str")
89
+ pulumi.set(__self__, "zone", zone)
90
+
91
+ @property
92
+ @pulumi.getter
93
+ def address(self) -> str:
94
+ return pulumi.get(self, "address")
95
+
96
+ @property
97
+ @pulumi.getter(name="createdAt")
98
+ def created_at(self) -> str:
99
+ return pulumi.get(self, "created_at")
100
+
101
+ @property
102
+ @pulumi.getter(name="dhcpId")
103
+ def dhcp_id(self) -> str:
104
+ return pulumi.get(self, "dhcp_id")
105
+
106
+ @property
107
+ @pulumi.getter(name="dnsLocalName")
108
+ def dns_local_name(self) -> str:
109
+ return pulumi.get(self, "dns_local_name")
110
+
111
+ @property
112
+ @pulumi.getter(name="dnsSearches")
113
+ def dns_searches(self) -> Sequence[str]:
114
+ return pulumi.get(self, "dns_searches")
115
+
116
+ @property
117
+ @pulumi.getter(name="dnsServersOverrides")
118
+ def dns_servers_overrides(self) -> Sequence[str]:
119
+ return pulumi.get(self, "dns_servers_overrides")
120
+
121
+ @property
122
+ @pulumi.getter(name="enableDynamic")
123
+ def enable_dynamic(self) -> bool:
124
+ return pulumi.get(self, "enable_dynamic")
125
+
126
+ @property
127
+ @pulumi.getter
128
+ def id(self) -> str:
129
+ """
130
+ The provider-assigned unique ID for this managed resource.
131
+ """
132
+ return pulumi.get(self, "id")
133
+
134
+ @property
135
+ @pulumi.getter(name="organizationId")
136
+ def organization_id(self) -> str:
137
+ return pulumi.get(self, "organization_id")
138
+
139
+ @property
140
+ @pulumi.getter(name="poolHigh")
141
+ def pool_high(self) -> str:
142
+ return pulumi.get(self, "pool_high")
143
+
144
+ @property
145
+ @pulumi.getter(name="poolLow")
146
+ def pool_low(self) -> str:
147
+ return pulumi.get(self, "pool_low")
148
+
149
+ @property
150
+ @pulumi.getter(name="projectId")
151
+ def project_id(self) -> str:
152
+ return pulumi.get(self, "project_id")
153
+
154
+ @property
155
+ @pulumi.getter(name="pushDefaultRoute")
156
+ def push_default_route(self) -> bool:
157
+ return pulumi.get(self, "push_default_route")
158
+
159
+ @property
160
+ @pulumi.getter(name="pushDnsServer")
161
+ def push_dns_server(self) -> bool:
162
+ return pulumi.get(self, "push_dns_server")
163
+
164
+ @property
165
+ @pulumi.getter(name="rebindTimer")
166
+ def rebind_timer(self) -> int:
167
+ return pulumi.get(self, "rebind_timer")
168
+
169
+ @property
170
+ @pulumi.getter(name="renewTimer")
171
+ def renew_timer(self) -> int:
172
+ return pulumi.get(self, "renew_timer")
173
+
174
+ @property
175
+ @pulumi.getter
176
+ def subnet(self) -> str:
177
+ return pulumi.get(self, "subnet")
178
+
179
+ @property
180
+ @pulumi.getter(name="updatedAt")
181
+ def updated_at(self) -> str:
182
+ return pulumi.get(self, "updated_at")
183
+
184
+ @property
185
+ @pulumi.getter(name="validLifetime")
186
+ def valid_lifetime(self) -> int:
187
+ return pulumi.get(self, "valid_lifetime")
188
+
189
+ @property
190
+ @pulumi.getter
191
+ def zone(self) -> str:
192
+ return pulumi.get(self, "zone")
193
+
194
+
195
+ class AwaitableGetVpcPublicGatewayDhcpResult(GetVpcPublicGatewayDhcpResult):
196
+ # pylint: disable=using-constant-test
197
+ def __await__(self):
198
+ if False:
199
+ yield self
200
+ return GetVpcPublicGatewayDhcpResult(
201
+ address=self.address,
202
+ created_at=self.created_at,
203
+ dhcp_id=self.dhcp_id,
204
+ dns_local_name=self.dns_local_name,
205
+ dns_searches=self.dns_searches,
206
+ dns_servers_overrides=self.dns_servers_overrides,
207
+ enable_dynamic=self.enable_dynamic,
208
+ id=self.id,
209
+ organization_id=self.organization_id,
210
+ pool_high=self.pool_high,
211
+ pool_low=self.pool_low,
212
+ project_id=self.project_id,
213
+ push_default_route=self.push_default_route,
214
+ push_dns_server=self.push_dns_server,
215
+ rebind_timer=self.rebind_timer,
216
+ renew_timer=self.renew_timer,
217
+ subnet=self.subnet,
218
+ updated_at=self.updated_at,
219
+ valid_lifetime=self.valid_lifetime,
220
+ zone=self.zone)
221
+
222
+
223
+ def get_vpc_public_gateway_dhcp(dhcp_id: Optional[str] = None,
224
+ opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetVpcPublicGatewayDhcpResult:
225
+ """
226
+ Gets information about a Public Gateway DHCP configuration.
227
+
228
+ ## Example Usage
229
+
230
+ ```python
231
+ import pulumi
232
+ import pulumi_scaleway as scaleway
233
+ import pulumiverse_scaleway as scaleway
234
+
235
+ main = scaleway.VpcPublicGatewayDhcp("main", subnet="192.168.0.0/24")
236
+ dhcp_by_id = scaleway.get_vpc_public_gateway_dhcp_output(dhcp_id=main.id)
237
+ ```
238
+ """
239
+ __args__ = dict()
240
+ __args__['dhcpId'] = dhcp_id
241
+ opts = pulumi.InvokeOptions.merge(_utilities.get_invoke_opts_defaults(), opts)
242
+ __ret__ = pulumi.runtime.invoke('scaleway:index/getVpcPublicGatewayDhcp:getVpcPublicGatewayDhcp', __args__, opts=opts, typ=GetVpcPublicGatewayDhcpResult).value
243
+
244
+ return AwaitableGetVpcPublicGatewayDhcpResult(
245
+ address=pulumi.get(__ret__, 'address'),
246
+ created_at=pulumi.get(__ret__, 'created_at'),
247
+ dhcp_id=pulumi.get(__ret__, 'dhcp_id'),
248
+ dns_local_name=pulumi.get(__ret__, 'dns_local_name'),
249
+ dns_searches=pulumi.get(__ret__, 'dns_searches'),
250
+ dns_servers_overrides=pulumi.get(__ret__, 'dns_servers_overrides'),
251
+ enable_dynamic=pulumi.get(__ret__, 'enable_dynamic'),
252
+ id=pulumi.get(__ret__, 'id'),
253
+ organization_id=pulumi.get(__ret__, 'organization_id'),
254
+ pool_high=pulumi.get(__ret__, 'pool_high'),
255
+ pool_low=pulumi.get(__ret__, 'pool_low'),
256
+ project_id=pulumi.get(__ret__, 'project_id'),
257
+ push_default_route=pulumi.get(__ret__, 'push_default_route'),
258
+ push_dns_server=pulumi.get(__ret__, 'push_dns_server'),
259
+ rebind_timer=pulumi.get(__ret__, 'rebind_timer'),
260
+ renew_timer=pulumi.get(__ret__, 'renew_timer'),
261
+ subnet=pulumi.get(__ret__, 'subnet'),
262
+ updated_at=pulumi.get(__ret__, 'updated_at'),
263
+ valid_lifetime=pulumi.get(__ret__, 'valid_lifetime'),
264
+ zone=pulumi.get(__ret__, 'zone'))
265
+ def get_vpc_public_gateway_dhcp_output(dhcp_id: Optional[pulumi.Input[str]] = None,
266
+ opts: Optional[pulumi.InvokeOptions] = None) -> pulumi.Output[GetVpcPublicGatewayDhcpResult]:
267
+ """
268
+ Gets information about a Public Gateway DHCP configuration.
269
+
270
+ ## Example Usage
271
+
272
+ ```python
273
+ import pulumi
274
+ import pulumi_scaleway as scaleway
275
+ import pulumiverse_scaleway as scaleway
276
+
277
+ main = scaleway.VpcPublicGatewayDhcp("main", subnet="192.168.0.0/24")
278
+ dhcp_by_id = scaleway.get_vpc_public_gateway_dhcp_output(dhcp_id=main.id)
279
+ ```
280
+ """
281
+ __args__ = dict()
282
+ __args__['dhcpId'] = dhcp_id
283
+ opts = pulumi.InvokeOptions.merge(_utilities.get_invoke_opts_defaults(), opts)
284
+ __ret__ = pulumi.runtime.invoke_output('scaleway:index/getVpcPublicGatewayDhcp:getVpcPublicGatewayDhcp', __args__, opts=opts, typ=GetVpcPublicGatewayDhcpResult)
285
+ return __ret__.apply(lambda __response__: GetVpcPublicGatewayDhcpResult(
286
+ address=pulumi.get(__response__, 'address'),
287
+ created_at=pulumi.get(__response__, 'created_at'),
288
+ dhcp_id=pulumi.get(__response__, 'dhcp_id'),
289
+ dns_local_name=pulumi.get(__response__, 'dns_local_name'),
290
+ dns_searches=pulumi.get(__response__, 'dns_searches'),
291
+ dns_servers_overrides=pulumi.get(__response__, 'dns_servers_overrides'),
292
+ enable_dynamic=pulumi.get(__response__, 'enable_dynamic'),
293
+ id=pulumi.get(__response__, 'id'),
294
+ organization_id=pulumi.get(__response__, 'organization_id'),
295
+ pool_high=pulumi.get(__response__, 'pool_high'),
296
+ pool_low=pulumi.get(__response__, 'pool_low'),
297
+ project_id=pulumi.get(__response__, 'project_id'),
298
+ push_default_route=pulumi.get(__response__, 'push_default_route'),
299
+ push_dns_server=pulumi.get(__response__, 'push_dns_server'),
300
+ rebind_timer=pulumi.get(__response__, 'rebind_timer'),
301
+ renew_timer=pulumi.get(__response__, 'renew_timer'),
302
+ subnet=pulumi.get(__response__, 'subnet'),
303
+ updated_at=pulumi.get(__response__, 'updated_at'),
304
+ valid_lifetime=pulumi.get(__response__, 'valid_lifetime'),
305
+ zone=pulumi.get(__response__, 'zone')))
@@ -0,0 +1,382 @@
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
+ 'GetVpcPublicGatewayDhcpReservationResult',
19
+ 'AwaitableGetVpcPublicGatewayDhcpReservationResult',
20
+ 'get_vpc_public_gateway_dhcp_reservation',
21
+ 'get_vpc_public_gateway_dhcp_reservation_output',
22
+ ]
23
+
24
+ @pulumi.output_type
25
+ class GetVpcPublicGatewayDhcpReservationResult:
26
+ """
27
+ A collection of values returned by getVpcPublicGatewayDhcpReservation.
28
+ """
29
+ def __init__(__self__, created_at=None, gateway_network_id=None, hostname=None, id=None, ip_address=None, mac_address=None, reservation_id=None, type=None, updated_at=None, wait_for_dhcp=None, zone=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 gateway_network_id and not isinstance(gateway_network_id, str):
34
+ raise TypeError("Expected argument 'gateway_network_id' to be a str")
35
+ pulumi.set(__self__, "gateway_network_id", gateway_network_id)
36
+ if hostname and not isinstance(hostname, str):
37
+ raise TypeError("Expected argument 'hostname' to be a str")
38
+ pulumi.set(__self__, "hostname", hostname)
39
+ if id and not isinstance(id, str):
40
+ raise TypeError("Expected argument 'id' to be a str")
41
+ pulumi.set(__self__, "id", id)
42
+ if ip_address and not isinstance(ip_address, str):
43
+ raise TypeError("Expected argument 'ip_address' to be a str")
44
+ pulumi.set(__self__, "ip_address", ip_address)
45
+ if mac_address and not isinstance(mac_address, str):
46
+ raise TypeError("Expected argument 'mac_address' to be a str")
47
+ pulumi.set(__self__, "mac_address", mac_address)
48
+ if reservation_id and not isinstance(reservation_id, str):
49
+ raise TypeError("Expected argument 'reservation_id' to be a str")
50
+ pulumi.set(__self__, "reservation_id", reservation_id)
51
+ if type and not isinstance(type, str):
52
+ raise TypeError("Expected argument 'type' to be a str")
53
+ pulumi.set(__self__, "type", type)
54
+ if updated_at and not isinstance(updated_at, str):
55
+ raise TypeError("Expected argument 'updated_at' to be a str")
56
+ pulumi.set(__self__, "updated_at", updated_at)
57
+ if wait_for_dhcp and not isinstance(wait_for_dhcp, bool):
58
+ raise TypeError("Expected argument 'wait_for_dhcp' to be a bool")
59
+ pulumi.set(__self__, "wait_for_dhcp", wait_for_dhcp)
60
+ if zone and not isinstance(zone, str):
61
+ raise TypeError("Expected argument 'zone' to be a str")
62
+ pulumi.set(__self__, "zone", zone)
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="gatewayNetworkId")
71
+ def gateway_network_id(self) -> Optional[str]:
72
+ return pulumi.get(self, "gateway_network_id")
73
+
74
+ @property
75
+ @pulumi.getter
76
+ def hostname(self) -> str:
77
+ return pulumi.get(self, "hostname")
78
+
79
+ @property
80
+ @pulumi.getter
81
+ def id(self) -> str:
82
+ """
83
+ The provider-assigned unique ID for this managed resource.
84
+ """
85
+ return pulumi.get(self, "id")
86
+
87
+ @property
88
+ @pulumi.getter(name="ipAddress")
89
+ def ip_address(self) -> str:
90
+ return pulumi.get(self, "ip_address")
91
+
92
+ @property
93
+ @pulumi.getter(name="macAddress")
94
+ def mac_address(self) -> Optional[str]:
95
+ return pulumi.get(self, "mac_address")
96
+
97
+ @property
98
+ @pulumi.getter(name="reservationId")
99
+ def reservation_id(self) -> Optional[str]:
100
+ return pulumi.get(self, "reservation_id")
101
+
102
+ @property
103
+ @pulumi.getter
104
+ def type(self) -> str:
105
+ return pulumi.get(self, "type")
106
+
107
+ @property
108
+ @pulumi.getter(name="updatedAt")
109
+ def updated_at(self) -> str:
110
+ return pulumi.get(self, "updated_at")
111
+
112
+ @property
113
+ @pulumi.getter(name="waitForDhcp")
114
+ def wait_for_dhcp(self) -> Optional[bool]:
115
+ return pulumi.get(self, "wait_for_dhcp")
116
+
117
+ @property
118
+ @pulumi.getter
119
+ def zone(self) -> Optional[str]:
120
+ return pulumi.get(self, "zone")
121
+
122
+
123
+ class AwaitableGetVpcPublicGatewayDhcpReservationResult(GetVpcPublicGatewayDhcpReservationResult):
124
+ # pylint: disable=using-constant-test
125
+ def __await__(self):
126
+ if False:
127
+ yield self
128
+ return GetVpcPublicGatewayDhcpReservationResult(
129
+ created_at=self.created_at,
130
+ gateway_network_id=self.gateway_network_id,
131
+ hostname=self.hostname,
132
+ id=self.id,
133
+ ip_address=self.ip_address,
134
+ mac_address=self.mac_address,
135
+ reservation_id=self.reservation_id,
136
+ type=self.type,
137
+ updated_at=self.updated_at,
138
+ wait_for_dhcp=self.wait_for_dhcp,
139
+ zone=self.zone)
140
+
141
+
142
+ def get_vpc_public_gateway_dhcp_reservation(gateway_network_id: Optional[str] = None,
143
+ mac_address: Optional[str] = None,
144
+ reservation_id: Optional[str] = None,
145
+ wait_for_dhcp: Optional[bool] = None,
146
+ zone: Optional[str] = None,
147
+ opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetVpcPublicGatewayDhcpReservationResult:
148
+ """
149
+ Gets information about a DHCP entry. For further information, please see the
150
+ API [documentation](https://www.scaleway.com/en/developers/api/public-gateway/#path-dhcp-entries-list-dhcp-entries)/
151
+
152
+ ## Example Dynamic
153
+
154
+ ```python
155
+ import pulumi
156
+ import pulumi_scaleway as scaleway
157
+ import pulumiverse_scaleway as scaleway
158
+
159
+ main = scaleway.VpcPrivateNetwork("main")
160
+ main_instance_server = scaleway.InstanceServer("main",
161
+ image="ubuntu_jammy",
162
+ type="DEV1-S",
163
+ zone="fr-par-1")
164
+ main_instance_private_nic = scaleway.InstancePrivateNic("main",
165
+ server_id=main_instance_server.id,
166
+ private_network_id=main.id)
167
+ main_vpc_public_gateway_ip = scaleway.VpcPublicGatewayIp("main")
168
+ main_vpc_public_gateway_dhcp = scaleway.VpcPublicGatewayDhcp("main", subnet="192.168.1.0/24")
169
+ main_vpc_public_gateway = scaleway.VpcPublicGateway("main",
170
+ name="foobar",
171
+ type="VPC-GW-S",
172
+ ip_id=main_vpc_public_gateway_ip.id)
173
+ main_vpc_gateway_network = scaleway.VpcGatewayNetwork("main",
174
+ gateway_id=main_vpc_public_gateway.id,
175
+ private_network_id=main.id,
176
+ dhcp_id=main_vpc_public_gateway_dhcp.id,
177
+ cleanup_dhcp=True,
178
+ enable_masquerade=True)
179
+ ## Retrieve the dynamic entries generated by mac address & gateway network
180
+ by_mac_address_and_gw_network = scaleway.get_vpc_public_gateway_dhcp_reservation_output(mac_address=main_instance_private_nic.mac_address,
181
+ gateway_network_id=main_vpc_gateway_network.id)
182
+ ```
183
+
184
+ ## Example Static and PAT Rule
185
+
186
+ ```python
187
+ import pulumi
188
+ import pulumi_scaleway as scaleway
189
+ import pulumiverse_scaleway as scaleway
190
+
191
+ main = scaleway.VpcPrivateNetwork("main")
192
+ main_instance_security_group = scaleway.InstanceSecurityGroup("main",
193
+ inbound_default_policy="drop",
194
+ outbound_default_policy="accept",
195
+ inbound_rules=[{
196
+ "action": "accept",
197
+ "port": 22,
198
+ }])
199
+ main_instance_server = scaleway.InstanceServer("main",
200
+ image="ubuntu_jammy",
201
+ type="DEV1-S",
202
+ zone="fr-par-1",
203
+ security_group_id=main_instance_security_group.id)
204
+ main_instance_private_nic = scaleway.InstancePrivateNic("main",
205
+ server_id=main_instance_server.id,
206
+ private_network_id=main.id)
207
+ main_vpc_public_gateway_ip = scaleway.VpcPublicGatewayIp("main")
208
+ main_vpc_public_gateway_dhcp = scaleway.VpcPublicGatewayDhcp("main", subnet="192.168.1.0/24")
209
+ main_vpc_public_gateway = scaleway.VpcPublicGateway("main",
210
+ name="foobar",
211
+ type="VPC-GW-S",
212
+ ip_id=main_vpc_public_gateway_ip.id)
213
+ main_vpc_gateway_network = scaleway.VpcGatewayNetwork("main",
214
+ gateway_id=main_vpc_public_gateway.id,
215
+ private_network_id=main.id,
216
+ dhcp_id=main_vpc_public_gateway_dhcp.id,
217
+ cleanup_dhcp=True,
218
+ enable_masquerade=True)
219
+ main_vpc_public_gateway_dhcp_reservation = scaleway.VpcPublicGatewayDhcpReservation("main",
220
+ gateway_network_id=main_vpc_gateway_network.id,
221
+ mac_address=main_instance_private_nic.mac_address,
222
+ ip_address="192.168.1.4")
223
+ ### VPC PAT RULE
224
+ main_vpc_public_gateway_pat_rule = scaleway.VpcPublicGatewayPatRule("main",
225
+ gateway_id=main_vpc_public_gateway.id,
226
+ private_ip=main_vpc_public_gateway_dhcp_reservation.ip_address,
227
+ private_port=22,
228
+ public_port=2222,
229
+ protocol="tcp")
230
+ by_id = scaleway.get_vpc_public_gateway_dhcp_reservation_output(reservation_id=main_vpc_public_gateway_dhcp_reservation.id)
231
+ ```
232
+
233
+
234
+ :param str gateway_network_id: The ID of the owning GatewayNetwork.
235
+
236
+ > Only one of `reservation_id` or `mac_address` with `gateway_network_id` should be specified.
237
+ :param str mac_address: The MAC address of the reservation to retrieve.
238
+ :param str reservation_id: The ID of the reservation (DHCP entry) to retrieve.
239
+ :param bool wait_for_dhcp: Whether to wait for `mac_address` to exist in DHCP.
240
+ :param str zone: `zone`). The zone in which the reservation exists.
241
+ """
242
+ __args__ = dict()
243
+ __args__['gatewayNetworkId'] = gateway_network_id
244
+ __args__['macAddress'] = mac_address
245
+ __args__['reservationId'] = reservation_id
246
+ __args__['waitForDhcp'] = wait_for_dhcp
247
+ __args__['zone'] = zone
248
+ opts = pulumi.InvokeOptions.merge(_utilities.get_invoke_opts_defaults(), opts)
249
+ __ret__ = pulumi.runtime.invoke('scaleway:index/getVpcPublicGatewayDhcpReservation:getVpcPublicGatewayDhcpReservation', __args__, opts=opts, typ=GetVpcPublicGatewayDhcpReservationResult).value
250
+
251
+ return AwaitableGetVpcPublicGatewayDhcpReservationResult(
252
+ created_at=pulumi.get(__ret__, 'created_at'),
253
+ gateway_network_id=pulumi.get(__ret__, 'gateway_network_id'),
254
+ hostname=pulumi.get(__ret__, 'hostname'),
255
+ id=pulumi.get(__ret__, 'id'),
256
+ ip_address=pulumi.get(__ret__, 'ip_address'),
257
+ mac_address=pulumi.get(__ret__, 'mac_address'),
258
+ reservation_id=pulumi.get(__ret__, 'reservation_id'),
259
+ type=pulumi.get(__ret__, 'type'),
260
+ updated_at=pulumi.get(__ret__, 'updated_at'),
261
+ wait_for_dhcp=pulumi.get(__ret__, 'wait_for_dhcp'),
262
+ zone=pulumi.get(__ret__, 'zone'))
263
+ def get_vpc_public_gateway_dhcp_reservation_output(gateway_network_id: Optional[pulumi.Input[Optional[str]]] = None,
264
+ mac_address: Optional[pulumi.Input[Optional[str]]] = None,
265
+ reservation_id: Optional[pulumi.Input[Optional[str]]] = None,
266
+ wait_for_dhcp: Optional[pulumi.Input[Optional[bool]]] = None,
267
+ zone: Optional[pulumi.Input[Optional[str]]] = None,
268
+ opts: Optional[pulumi.InvokeOptions] = None) -> pulumi.Output[GetVpcPublicGatewayDhcpReservationResult]:
269
+ """
270
+ Gets information about a DHCP entry. For further information, please see the
271
+ API [documentation](https://www.scaleway.com/en/developers/api/public-gateway/#path-dhcp-entries-list-dhcp-entries)/
272
+
273
+ ## Example Dynamic
274
+
275
+ ```python
276
+ import pulumi
277
+ import pulumi_scaleway as scaleway
278
+ import pulumiverse_scaleway as scaleway
279
+
280
+ main = scaleway.VpcPrivateNetwork("main")
281
+ main_instance_server = scaleway.InstanceServer("main",
282
+ image="ubuntu_jammy",
283
+ type="DEV1-S",
284
+ zone="fr-par-1")
285
+ main_instance_private_nic = scaleway.InstancePrivateNic("main",
286
+ server_id=main_instance_server.id,
287
+ private_network_id=main.id)
288
+ main_vpc_public_gateway_ip = scaleway.VpcPublicGatewayIp("main")
289
+ main_vpc_public_gateway_dhcp = scaleway.VpcPublicGatewayDhcp("main", subnet="192.168.1.0/24")
290
+ main_vpc_public_gateway = scaleway.VpcPublicGateway("main",
291
+ name="foobar",
292
+ type="VPC-GW-S",
293
+ ip_id=main_vpc_public_gateway_ip.id)
294
+ main_vpc_gateway_network = scaleway.VpcGatewayNetwork("main",
295
+ gateway_id=main_vpc_public_gateway.id,
296
+ private_network_id=main.id,
297
+ dhcp_id=main_vpc_public_gateway_dhcp.id,
298
+ cleanup_dhcp=True,
299
+ enable_masquerade=True)
300
+ ## Retrieve the dynamic entries generated by mac address & gateway network
301
+ by_mac_address_and_gw_network = scaleway.get_vpc_public_gateway_dhcp_reservation_output(mac_address=main_instance_private_nic.mac_address,
302
+ gateway_network_id=main_vpc_gateway_network.id)
303
+ ```
304
+
305
+ ## Example Static and PAT Rule
306
+
307
+ ```python
308
+ import pulumi
309
+ import pulumi_scaleway as scaleway
310
+ import pulumiverse_scaleway as scaleway
311
+
312
+ main = scaleway.VpcPrivateNetwork("main")
313
+ main_instance_security_group = scaleway.InstanceSecurityGroup("main",
314
+ inbound_default_policy="drop",
315
+ outbound_default_policy="accept",
316
+ inbound_rules=[{
317
+ "action": "accept",
318
+ "port": 22,
319
+ }])
320
+ main_instance_server = scaleway.InstanceServer("main",
321
+ image="ubuntu_jammy",
322
+ type="DEV1-S",
323
+ zone="fr-par-1",
324
+ security_group_id=main_instance_security_group.id)
325
+ main_instance_private_nic = scaleway.InstancePrivateNic("main",
326
+ server_id=main_instance_server.id,
327
+ private_network_id=main.id)
328
+ main_vpc_public_gateway_ip = scaleway.VpcPublicGatewayIp("main")
329
+ main_vpc_public_gateway_dhcp = scaleway.VpcPublicGatewayDhcp("main", subnet="192.168.1.0/24")
330
+ main_vpc_public_gateway = scaleway.VpcPublicGateway("main",
331
+ name="foobar",
332
+ type="VPC-GW-S",
333
+ ip_id=main_vpc_public_gateway_ip.id)
334
+ main_vpc_gateway_network = scaleway.VpcGatewayNetwork("main",
335
+ gateway_id=main_vpc_public_gateway.id,
336
+ private_network_id=main.id,
337
+ dhcp_id=main_vpc_public_gateway_dhcp.id,
338
+ cleanup_dhcp=True,
339
+ enable_masquerade=True)
340
+ main_vpc_public_gateway_dhcp_reservation = scaleway.VpcPublicGatewayDhcpReservation("main",
341
+ gateway_network_id=main_vpc_gateway_network.id,
342
+ mac_address=main_instance_private_nic.mac_address,
343
+ ip_address="192.168.1.4")
344
+ ### VPC PAT RULE
345
+ main_vpc_public_gateway_pat_rule = scaleway.VpcPublicGatewayPatRule("main",
346
+ gateway_id=main_vpc_public_gateway.id,
347
+ private_ip=main_vpc_public_gateway_dhcp_reservation.ip_address,
348
+ private_port=22,
349
+ public_port=2222,
350
+ protocol="tcp")
351
+ by_id = scaleway.get_vpc_public_gateway_dhcp_reservation_output(reservation_id=main_vpc_public_gateway_dhcp_reservation.id)
352
+ ```
353
+
354
+
355
+ :param str gateway_network_id: The ID of the owning GatewayNetwork.
356
+
357
+ > Only one of `reservation_id` or `mac_address` with `gateway_network_id` should be specified.
358
+ :param str mac_address: The MAC address of the reservation to retrieve.
359
+ :param str reservation_id: The ID of the reservation (DHCP entry) to retrieve.
360
+ :param bool wait_for_dhcp: Whether to wait for `mac_address` to exist in DHCP.
361
+ :param str zone: `zone`). The zone in which the reservation exists.
362
+ """
363
+ __args__ = dict()
364
+ __args__['gatewayNetworkId'] = gateway_network_id
365
+ __args__['macAddress'] = mac_address
366
+ __args__['reservationId'] = reservation_id
367
+ __args__['waitForDhcp'] = wait_for_dhcp
368
+ __args__['zone'] = zone
369
+ opts = pulumi.InvokeOptions.merge(_utilities.get_invoke_opts_defaults(), opts)
370
+ __ret__ = pulumi.runtime.invoke_output('scaleway:index/getVpcPublicGatewayDhcpReservation:getVpcPublicGatewayDhcpReservation', __args__, opts=opts, typ=GetVpcPublicGatewayDhcpReservationResult)
371
+ return __ret__.apply(lambda __response__: GetVpcPublicGatewayDhcpReservationResult(
372
+ created_at=pulumi.get(__response__, 'created_at'),
373
+ gateway_network_id=pulumi.get(__response__, 'gateway_network_id'),
374
+ hostname=pulumi.get(__response__, 'hostname'),
375
+ id=pulumi.get(__response__, 'id'),
376
+ ip_address=pulumi.get(__response__, 'ip_address'),
377
+ mac_address=pulumi.get(__response__, 'mac_address'),
378
+ reservation_id=pulumi.get(__response__, 'reservation_id'),
379
+ type=pulumi.get(__response__, 'type'),
380
+ updated_at=pulumi.get(__response__, 'updated_at'),
381
+ wait_for_dhcp=pulumi.get(__response__, 'wait_for_dhcp'),
382
+ zone=pulumi.get(__response__, 'zone')))