pulumiverse-scaleway 1.23.0a1736837529__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 +1065 -0
  2. pulumiverse_scaleway/_inputs.py +8688 -0
  3. pulumiverse_scaleway/_utilities.py +327 -0
  4. pulumiverse_scaleway/account_project.py +316 -0
  5. pulumiverse_scaleway/account_ssh_key.py +454 -0
  6. pulumiverse_scaleway/apple_silicon_server.py +564 -0
  7. pulumiverse_scaleway/baremetal_server.py +1579 -0
  8. pulumiverse_scaleway/block_snapshot.py +401 -0
  9. pulumiverse_scaleway/block_volume.py +527 -0
  10. pulumiverse_scaleway/cockpit.py +314 -0
  11. pulumiverse_scaleway/cockpit_alert_manager.py +401 -0
  12. pulumiverse_scaleway/cockpit_grafana_user.py +362 -0
  13. pulumiverse_scaleway/cockpit_source.py +567 -0
  14. pulumiverse_scaleway/cockpit_token.py +479 -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 +1373 -0
  19. pulumiverse_scaleway/container_cron.py +458 -0
  20. pulumiverse_scaleway/container_domain.py +406 -0
  21. pulumiverse_scaleway/container_namespace.py +636 -0
  22. pulumiverse_scaleway/container_token.py +452 -0
  23. pulumiverse_scaleway/container_trigger.py +480 -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 +1641 -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/domain_record.py +1116 -0
  32. pulumiverse_scaleway/domain_zone.py +430 -0
  33. pulumiverse_scaleway/flexible_ip.py +702 -0
  34. pulumiverse_scaleway/flexible_ip_mac_address.py +510 -0
  35. pulumiverse_scaleway/function.py +1103 -0
  36. pulumiverse_scaleway/function_cron.py +462 -0
  37. pulumiverse_scaleway/function_domain.py +370 -0
  38. pulumiverse_scaleway/function_namespace.py +580 -0
  39. pulumiverse_scaleway/function_token.py +460 -0
  40. pulumiverse_scaleway/function_trigger.py +480 -0
  41. pulumiverse_scaleway/get_account_project.py +170 -0
  42. pulumiverse_scaleway/get_account_ssh_key.py +205 -0
  43. pulumiverse_scaleway/get_availability_zones.py +139 -0
  44. pulumiverse_scaleway/get_baremetal_offer.py +245 -0
  45. pulumiverse_scaleway/get_baremetal_option.py +168 -0
  46. pulumiverse_scaleway/get_baremetal_os.py +174 -0
  47. pulumiverse_scaleway/get_baremetal_server.py +422 -0
  48. pulumiverse_scaleway/get_billing_consumptions.py +134 -0
  49. pulumiverse_scaleway/get_billing_invoices.py +154 -0
  50. pulumiverse_scaleway/get_block_snapshot.py +174 -0
  51. pulumiverse_scaleway/get_block_volume.py +188 -0
  52. pulumiverse_scaleway/get_cockpit.py +204 -0
  53. pulumiverse_scaleway/get_cockpit_plan.py +125 -0
  54. pulumiverse_scaleway/get_cockpit_source.py +262 -0
  55. pulumiverse_scaleway/get_config.py +180 -0
  56. pulumiverse_scaleway/get_container.py +522 -0
  57. pulumiverse_scaleway/get_container_namespace.py +283 -0
  58. pulumiverse_scaleway/get_database.py +187 -0
  59. pulumiverse_scaleway/get_database_acl.py +143 -0
  60. pulumiverse_scaleway/get_database_backup.py +253 -0
  61. pulumiverse_scaleway/get_database_instance.py +404 -0
  62. pulumiverse_scaleway/get_database_privilege.py +181 -0
  63. pulumiverse_scaleway/get_domain_record.py +340 -0
  64. pulumiverse_scaleway/get_domain_zone.py +201 -0
  65. pulumiverse_scaleway/get_flexible_ip.py +247 -0
  66. pulumiverse_scaleway/get_flexible_ips.py +240 -0
  67. pulumiverse_scaleway/get_function.py +365 -0
  68. pulumiverse_scaleway/get_function_namespace.py +238 -0
  69. pulumiverse_scaleway/get_iam_api_key.py +210 -0
  70. pulumiverse_scaleway/get_iam_application.py +210 -0
  71. pulumiverse_scaleway/get_iam_group.py +236 -0
  72. pulumiverse_scaleway/get_iam_ssh_key.py +212 -0
  73. pulumiverse_scaleway/get_iam_user.py +177 -0
  74. pulumiverse_scaleway/get_instance_image.py +305 -0
  75. pulumiverse_scaleway/get_instance_ip.py +204 -0
  76. pulumiverse_scaleway/get_instance_placement_group.py +212 -0
  77. pulumiverse_scaleway/get_instance_private_nic.py +226 -0
  78. pulumiverse_scaleway/get_instance_security_group.py +268 -0
  79. pulumiverse_scaleway/get_instance_server.py +502 -0
  80. pulumiverse_scaleway/get_instance_servers.py +187 -0
  81. pulumiverse_scaleway/get_instance_snapshot.py +248 -0
  82. pulumiverse_scaleway/get_instance_volume.py +215 -0
  83. pulumiverse_scaleway/get_iot_device.py +257 -0
  84. pulumiverse_scaleway/get_iot_hub.py +322 -0
  85. pulumiverse_scaleway/get_ipam_ip.py +419 -0
  86. pulumiverse_scaleway/get_ipam_ips.py +358 -0
  87. pulumiverse_scaleway/get_k8s_version.py +196 -0
  88. pulumiverse_scaleway/get_kubernetes_cluster.py +417 -0
  89. pulumiverse_scaleway/get_kubernetes_node_pool.py +436 -0
  90. pulumiverse_scaleway/get_lb_acls.py +198 -0
  91. pulumiverse_scaleway/get_lb_backend.py +486 -0
  92. pulumiverse_scaleway/get_lb_backends.py +196 -0
  93. pulumiverse_scaleway/get_lb_frontend.py +274 -0
  94. pulumiverse_scaleway/get_lb_frontends.py +196 -0
  95. pulumiverse_scaleway/get_lb_ips.py +198 -0
  96. pulumiverse_scaleway/get_lb_route.py +217 -0
  97. pulumiverse_scaleway/get_lb_routes.py +179 -0
  98. pulumiverse_scaleway/get_lbs.py +187 -0
  99. pulumiverse_scaleway/get_loadbalancer.py +339 -0
  100. pulumiverse_scaleway/get_loadbalancer_certificate.py +230 -0
  101. pulumiverse_scaleway/get_loadbalancer_ip.py +228 -0
  102. pulumiverse_scaleway/get_marketplace_image.py +147 -0
  103. pulumiverse_scaleway/get_mnq_sns.py +150 -0
  104. pulumiverse_scaleway/get_mnq_sqs.py +150 -0
  105. pulumiverse_scaleway/get_mongo_db_instance.py +324 -0
  106. pulumiverse_scaleway/get_object_bucket.py +290 -0
  107. pulumiverse_scaleway/get_object_bucket_policy.py +163 -0
  108. pulumiverse_scaleway/get_redis_cluster.py +347 -0
  109. pulumiverse_scaleway/get_registry_image.py +239 -0
  110. pulumiverse_scaleway/get_registry_image_tag.py +229 -0
  111. pulumiverse_scaleway/get_registry_namespace.py +199 -0
  112. pulumiverse_scaleway/get_secret.py +338 -0
  113. pulumiverse_scaleway/get_secret_version.py +340 -0
  114. pulumiverse_scaleway/get_tem_domain.py +378 -0
  115. pulumiverse_scaleway/get_vpc.py +246 -0
  116. pulumiverse_scaleway/get_vpc_gateway_network.py +287 -0
  117. pulumiverse_scaleway/get_vpc_private_network.py +282 -0
  118. pulumiverse_scaleway/get_vpc_public_gateway.py +304 -0
  119. pulumiverse_scaleway/get_vpc_public_gateway_dhcp.py +305 -0
  120. pulumiverse_scaleway/get_vpc_public_gateway_dhcp_reservation.py +382 -0
  121. pulumiverse_scaleway/get_vpc_public_gateway_ip.py +199 -0
  122. pulumiverse_scaleway/get_vpc_public_pat_rule.py +313 -0
  123. pulumiverse_scaleway/get_vpc_routes.py +208 -0
  124. pulumiverse_scaleway/get_vpcs.py +174 -0
  125. pulumiverse_scaleway/get_web_host_offer.py +192 -0
  126. pulumiverse_scaleway/get_webhosting.py +332 -0
  127. pulumiverse_scaleway/iam_api_key.py +620 -0
  128. pulumiverse_scaleway/iam_application.py +417 -0
  129. pulumiverse_scaleway/iam_group.py +566 -0
  130. pulumiverse_scaleway/iam_group_membership.py +323 -0
  131. pulumiverse_scaleway/iam_policy.py +773 -0
  132. pulumiverse_scaleway/iam_ssh_key.py +455 -0
  133. pulumiverse_scaleway/iam_user.py +513 -0
  134. pulumiverse_scaleway/inference_deployment.py +822 -0
  135. pulumiverse_scaleway/instance_image.py +750 -0
  136. pulumiverse_scaleway/instance_ip.py +483 -0
  137. pulumiverse_scaleway/instance_ip_reverse_dns.py +308 -0
  138. pulumiverse_scaleway/instance_placement_group.py +479 -0
  139. pulumiverse_scaleway/instance_private_nic.py +555 -0
  140. pulumiverse_scaleway/instance_security_group.py +720 -0
  141. pulumiverse_scaleway/instance_security_group_rules.py +439 -0
  142. pulumiverse_scaleway/instance_server.py +2006 -0
  143. pulumiverse_scaleway/instance_snapshot.py +669 -0
  144. pulumiverse_scaleway/instance_user_data.py +435 -0
  145. pulumiverse_scaleway/instance_volume.py +535 -0
  146. pulumiverse_scaleway/iot_device.py +750 -0
  147. pulumiverse_scaleway/iot_hub.py +896 -0
  148. pulumiverse_scaleway/iot_network.py +472 -0
  149. pulumiverse_scaleway/iot_route.py +660 -0
  150. pulumiverse_scaleway/ipam_ip.py +757 -0
  151. pulumiverse_scaleway/ipam_ip_reverse_dns.py +318 -0
  152. pulumiverse_scaleway/job_definition.py +692 -0
  153. pulumiverse_scaleway/kubernetes_cluster.py +1538 -0
  154. pulumiverse_scaleway/kubernetes_node_pool.py +1255 -0
  155. pulumiverse_scaleway/loadbalancer.py +1061 -0
  156. pulumiverse_scaleway/loadbalancer_acl.py +520 -0
  157. pulumiverse_scaleway/loadbalancer_backend.py +1588 -0
  158. pulumiverse_scaleway/loadbalancer_certificate.py +460 -0
  159. pulumiverse_scaleway/loadbalancer_frontend.py +829 -0
  160. pulumiverse_scaleway/loadbalancer_ip.py +514 -0
  161. pulumiverse_scaleway/loadbalancer_route.py +523 -0
  162. pulumiverse_scaleway/mnq_nats_account.py +334 -0
  163. pulumiverse_scaleway/mnq_nats_credentials.py +330 -0
  164. pulumiverse_scaleway/mnq_sns.py +306 -0
  165. pulumiverse_scaleway/mnq_sns_credentials.py +413 -0
  166. pulumiverse_scaleway/mnq_sns_topic.py +659 -0
  167. pulumiverse_scaleway/mnq_sns_topic_subscription.py +699 -0
  168. pulumiverse_scaleway/mnq_sqs.py +304 -0
  169. pulumiverse_scaleway/mnq_sqs_credentials.py +413 -0
  170. pulumiverse_scaleway/mnq_sqs_queue.py +800 -0
  171. pulumiverse_scaleway/mongo_db_instance.py +907 -0
  172. pulumiverse_scaleway/mongo_db_snapshot.py +521 -0
  173. pulumiverse_scaleway/object_bucket.py +874 -0
  174. pulumiverse_scaleway/object_bucket_acl.py +596 -0
  175. pulumiverse_scaleway/object_bucket_lock_configuration.py +395 -0
  176. pulumiverse_scaleway/object_bucket_policy.py +673 -0
  177. pulumiverse_scaleway/object_bucket_website_configuration.py +534 -0
  178. pulumiverse_scaleway/object_item.py +776 -0
  179. pulumiverse_scaleway/outputs.py +11808 -0
  180. pulumiverse_scaleway/provider.py +327 -0
  181. pulumiverse_scaleway/pulumi-plugin.json +6 -0
  182. pulumiverse_scaleway/py.typed +0 -0
  183. pulumiverse_scaleway/redis_cluster.py +1201 -0
  184. pulumiverse_scaleway/registry_namespace.py +458 -0
  185. pulumiverse_scaleway/sdb_database.py +432 -0
  186. pulumiverse_scaleway/secret.py +663 -0
  187. pulumiverse_scaleway/secret_version.py +487 -0
  188. pulumiverse_scaleway/tem_domain.py +1030 -0
  189. pulumiverse_scaleway/tem_domain_validation.py +303 -0
  190. pulumiverse_scaleway/tem_webhook.py +640 -0
  191. pulumiverse_scaleway/vpc.py +536 -0
  192. pulumiverse_scaleway/vpc_gateway_network.py +866 -0
  193. pulumiverse_scaleway/vpc_private_network.py +734 -0
  194. pulumiverse_scaleway/vpc_public_gateway.py +789 -0
  195. pulumiverse_scaleway/vpc_public_gateway_dhcp.py +933 -0
  196. pulumiverse_scaleway/vpc_public_gateway_dhcp_reservation.py +514 -0
  197. pulumiverse_scaleway/vpc_public_gateway_ip.py +457 -0
  198. pulumiverse_scaleway/vpc_public_gateway_ip_reverse_dns.py +306 -0
  199. pulumiverse_scaleway/vpc_public_gateway_pat_rule.py +591 -0
  200. pulumiverse_scaleway/vpc_route.py +577 -0
  201. pulumiverse_scaleway/webhosting.py +805 -0
  202. pulumiverse_scaleway-1.23.0a1736837529.dist-info/METADATA +77 -0
  203. pulumiverse_scaleway-1.23.0a1736837529.dist-info/RECORD +205 -0
  204. pulumiverse_scaleway-1.23.0a1736837529.dist-info/WHEEL +5 -0
  205. pulumiverse_scaleway-1.23.0a1736837529.dist-info/top_level.txt +1 -0
@@ -0,0 +1,577 @@
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__ = ['VpcRouteArgs', 'VpcRoute']
18
+
19
+ @pulumi.input_type
20
+ class VpcRouteArgs:
21
+ def __init__(__self__, *,
22
+ vpc_id: pulumi.Input[str],
23
+ description: Optional[pulumi.Input[str]] = None,
24
+ destination: Optional[pulumi.Input[str]] = None,
25
+ nexthop_private_network_id: Optional[pulumi.Input[str]] = None,
26
+ nexthop_resource_id: Optional[pulumi.Input[str]] = None,
27
+ region: Optional[pulumi.Input[str]] = None,
28
+ tags: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None):
29
+ """
30
+ The set of arguments for constructing a VpcRoute resource.
31
+ :param pulumi.Input[str] vpc_id: The VPC ID the route belongs to.
32
+ :param pulumi.Input[str] description: The route description.
33
+ :param pulumi.Input[str] destination: The destination of the route.
34
+ :param pulumi.Input[str] nexthop_private_network_id: The ID of the nexthop private network.
35
+ :param pulumi.Input[str] nexthop_resource_id: The ID of the nexthop resource.
36
+ :param pulumi.Input[str] region: `region`) The region of the route.
37
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] tags: The tags to associate with the route.
38
+ """
39
+ pulumi.set(__self__, "vpc_id", vpc_id)
40
+ if description is not None:
41
+ pulumi.set(__self__, "description", description)
42
+ if destination is not None:
43
+ pulumi.set(__self__, "destination", destination)
44
+ if nexthop_private_network_id is not None:
45
+ pulumi.set(__self__, "nexthop_private_network_id", nexthop_private_network_id)
46
+ if nexthop_resource_id is not None:
47
+ pulumi.set(__self__, "nexthop_resource_id", nexthop_resource_id)
48
+ if region is not None:
49
+ pulumi.set(__self__, "region", region)
50
+ if tags is not None:
51
+ pulumi.set(__self__, "tags", tags)
52
+
53
+ @property
54
+ @pulumi.getter(name="vpcId")
55
+ def vpc_id(self) -> pulumi.Input[str]:
56
+ """
57
+ The VPC ID the route belongs to.
58
+ """
59
+ return pulumi.get(self, "vpc_id")
60
+
61
+ @vpc_id.setter
62
+ def vpc_id(self, value: pulumi.Input[str]):
63
+ pulumi.set(self, "vpc_id", value)
64
+
65
+ @property
66
+ @pulumi.getter
67
+ def description(self) -> Optional[pulumi.Input[str]]:
68
+ """
69
+ The route description.
70
+ """
71
+ return pulumi.get(self, "description")
72
+
73
+ @description.setter
74
+ def description(self, value: Optional[pulumi.Input[str]]):
75
+ pulumi.set(self, "description", value)
76
+
77
+ @property
78
+ @pulumi.getter
79
+ def destination(self) -> Optional[pulumi.Input[str]]:
80
+ """
81
+ The destination of the route.
82
+ """
83
+ return pulumi.get(self, "destination")
84
+
85
+ @destination.setter
86
+ def destination(self, value: Optional[pulumi.Input[str]]):
87
+ pulumi.set(self, "destination", value)
88
+
89
+ @property
90
+ @pulumi.getter(name="nexthopPrivateNetworkId")
91
+ def nexthop_private_network_id(self) -> Optional[pulumi.Input[str]]:
92
+ """
93
+ The ID of the nexthop private network.
94
+ """
95
+ return pulumi.get(self, "nexthop_private_network_id")
96
+
97
+ @nexthop_private_network_id.setter
98
+ def nexthop_private_network_id(self, value: Optional[pulumi.Input[str]]):
99
+ pulumi.set(self, "nexthop_private_network_id", value)
100
+
101
+ @property
102
+ @pulumi.getter(name="nexthopResourceId")
103
+ def nexthop_resource_id(self) -> Optional[pulumi.Input[str]]:
104
+ """
105
+ The ID of the nexthop resource.
106
+ """
107
+ return pulumi.get(self, "nexthop_resource_id")
108
+
109
+ @nexthop_resource_id.setter
110
+ def nexthop_resource_id(self, value: Optional[pulumi.Input[str]]):
111
+ pulumi.set(self, "nexthop_resource_id", value)
112
+
113
+ @property
114
+ @pulumi.getter
115
+ def region(self) -> Optional[pulumi.Input[str]]:
116
+ """
117
+ `region`) The region of the route.
118
+ """
119
+ return pulumi.get(self, "region")
120
+
121
+ @region.setter
122
+ def region(self, value: Optional[pulumi.Input[str]]):
123
+ pulumi.set(self, "region", value)
124
+
125
+ @property
126
+ @pulumi.getter
127
+ def tags(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
128
+ """
129
+ The tags to associate with the route.
130
+ """
131
+ return pulumi.get(self, "tags")
132
+
133
+ @tags.setter
134
+ def tags(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
135
+ pulumi.set(self, "tags", value)
136
+
137
+
138
+ @pulumi.input_type
139
+ class _VpcRouteState:
140
+ def __init__(__self__, *,
141
+ created_at: Optional[pulumi.Input[str]] = None,
142
+ description: Optional[pulumi.Input[str]] = None,
143
+ destination: Optional[pulumi.Input[str]] = None,
144
+ nexthop_private_network_id: Optional[pulumi.Input[str]] = None,
145
+ nexthop_resource_id: Optional[pulumi.Input[str]] = None,
146
+ region: Optional[pulumi.Input[str]] = None,
147
+ tags: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
148
+ updated_at: Optional[pulumi.Input[str]] = None,
149
+ vpc_id: Optional[pulumi.Input[str]] = None):
150
+ """
151
+ Input properties used for looking up and filtering VpcRoute resources.
152
+ :param pulumi.Input[str] created_at: The date and time of the creation of the route (RFC 3339 format).
153
+ :param pulumi.Input[str] description: The route description.
154
+ :param pulumi.Input[str] destination: The destination of the route.
155
+ :param pulumi.Input[str] nexthop_private_network_id: The ID of the nexthop private network.
156
+ :param pulumi.Input[str] nexthop_resource_id: The ID of the nexthop resource.
157
+ :param pulumi.Input[str] region: `region`) The region of the route.
158
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] tags: The tags to associate with the route.
159
+ :param pulumi.Input[str] updated_at: The date and time of the creation of the route (RFC 3339 format).
160
+ :param pulumi.Input[str] vpc_id: The VPC ID the route belongs to.
161
+ """
162
+ if created_at is not None:
163
+ pulumi.set(__self__, "created_at", created_at)
164
+ if description is not None:
165
+ pulumi.set(__self__, "description", description)
166
+ if destination is not None:
167
+ pulumi.set(__self__, "destination", destination)
168
+ if nexthop_private_network_id is not None:
169
+ pulumi.set(__self__, "nexthop_private_network_id", nexthop_private_network_id)
170
+ if nexthop_resource_id is not None:
171
+ pulumi.set(__self__, "nexthop_resource_id", nexthop_resource_id)
172
+ if region is not None:
173
+ pulumi.set(__self__, "region", region)
174
+ if tags is not None:
175
+ pulumi.set(__self__, "tags", tags)
176
+ if updated_at is not None:
177
+ pulumi.set(__self__, "updated_at", updated_at)
178
+ if vpc_id is not None:
179
+ pulumi.set(__self__, "vpc_id", vpc_id)
180
+
181
+ @property
182
+ @pulumi.getter(name="createdAt")
183
+ def created_at(self) -> Optional[pulumi.Input[str]]:
184
+ """
185
+ The date and time of the creation of the route (RFC 3339 format).
186
+ """
187
+ return pulumi.get(self, "created_at")
188
+
189
+ @created_at.setter
190
+ def created_at(self, value: Optional[pulumi.Input[str]]):
191
+ pulumi.set(self, "created_at", value)
192
+
193
+ @property
194
+ @pulumi.getter
195
+ def description(self) -> Optional[pulumi.Input[str]]:
196
+ """
197
+ The route description.
198
+ """
199
+ return pulumi.get(self, "description")
200
+
201
+ @description.setter
202
+ def description(self, value: Optional[pulumi.Input[str]]):
203
+ pulumi.set(self, "description", value)
204
+
205
+ @property
206
+ @pulumi.getter
207
+ def destination(self) -> Optional[pulumi.Input[str]]:
208
+ """
209
+ The destination of the route.
210
+ """
211
+ return pulumi.get(self, "destination")
212
+
213
+ @destination.setter
214
+ def destination(self, value: Optional[pulumi.Input[str]]):
215
+ pulumi.set(self, "destination", value)
216
+
217
+ @property
218
+ @pulumi.getter(name="nexthopPrivateNetworkId")
219
+ def nexthop_private_network_id(self) -> Optional[pulumi.Input[str]]:
220
+ """
221
+ The ID of the nexthop private network.
222
+ """
223
+ return pulumi.get(self, "nexthop_private_network_id")
224
+
225
+ @nexthop_private_network_id.setter
226
+ def nexthop_private_network_id(self, value: Optional[pulumi.Input[str]]):
227
+ pulumi.set(self, "nexthop_private_network_id", value)
228
+
229
+ @property
230
+ @pulumi.getter(name="nexthopResourceId")
231
+ def nexthop_resource_id(self) -> Optional[pulumi.Input[str]]:
232
+ """
233
+ The ID of the nexthop resource.
234
+ """
235
+ return pulumi.get(self, "nexthop_resource_id")
236
+
237
+ @nexthop_resource_id.setter
238
+ def nexthop_resource_id(self, value: Optional[pulumi.Input[str]]):
239
+ pulumi.set(self, "nexthop_resource_id", value)
240
+
241
+ @property
242
+ @pulumi.getter
243
+ def region(self) -> Optional[pulumi.Input[str]]:
244
+ """
245
+ `region`) The region of the route.
246
+ """
247
+ return pulumi.get(self, "region")
248
+
249
+ @region.setter
250
+ def region(self, value: Optional[pulumi.Input[str]]):
251
+ pulumi.set(self, "region", value)
252
+
253
+ @property
254
+ @pulumi.getter
255
+ def tags(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
256
+ """
257
+ The tags to associate with the route.
258
+ """
259
+ return pulumi.get(self, "tags")
260
+
261
+ @tags.setter
262
+ def tags(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
263
+ pulumi.set(self, "tags", value)
264
+
265
+ @property
266
+ @pulumi.getter(name="updatedAt")
267
+ def updated_at(self) -> Optional[pulumi.Input[str]]:
268
+ """
269
+ The date and time of the creation of the route (RFC 3339 format).
270
+ """
271
+ return pulumi.get(self, "updated_at")
272
+
273
+ @updated_at.setter
274
+ def updated_at(self, value: Optional[pulumi.Input[str]]):
275
+ pulumi.set(self, "updated_at", value)
276
+
277
+ @property
278
+ @pulumi.getter(name="vpcId")
279
+ def vpc_id(self) -> Optional[pulumi.Input[str]]:
280
+ """
281
+ The VPC ID the route belongs to.
282
+ """
283
+ return pulumi.get(self, "vpc_id")
284
+
285
+ @vpc_id.setter
286
+ def vpc_id(self, value: Optional[pulumi.Input[str]]):
287
+ pulumi.set(self, "vpc_id", value)
288
+
289
+
290
+ class VpcRoute(pulumi.CustomResource):
291
+ @overload
292
+ def __init__(__self__,
293
+ resource_name: str,
294
+ opts: Optional[pulumi.ResourceOptions] = None,
295
+ description: Optional[pulumi.Input[str]] = None,
296
+ destination: Optional[pulumi.Input[str]] = None,
297
+ nexthop_private_network_id: Optional[pulumi.Input[str]] = None,
298
+ nexthop_resource_id: Optional[pulumi.Input[str]] = None,
299
+ region: Optional[pulumi.Input[str]] = None,
300
+ tags: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
301
+ vpc_id: Optional[pulumi.Input[str]] = None,
302
+ __props__=None):
303
+ """
304
+ Creates and manages Scaleway VPC Routes.
305
+ For more information, see [the main documentation](https://www.scaleway.com/en/docs/network/vpc/concepts/).
306
+
307
+ ## Example Usage
308
+
309
+ ### Basic
310
+
311
+ ```python
312
+ import pulumi
313
+ import pulumiverse_scaleway as scaleway
314
+
315
+ vpc01 = scaleway.Vpc("vpc01", name="tf-vpc-vpn")
316
+ pn01 = scaleway.VpcPrivateNetwork("pn01",
317
+ name="tf-pn-vpn",
318
+ ipv4_subnet={
319
+ "subnet": "172.16.64.0/22",
320
+ },
321
+ vpc_id=vpc01.id)
322
+ server01 = scaleway.InstanceServer("server01",
323
+ name="tf-server-vpn",
324
+ type="PLAY2-MICRO",
325
+ image="openvpn")
326
+ pnic01 = scaleway.InstancePrivateNic("pnic01",
327
+ private_network_id=pn01.id,
328
+ server_id=server01.id)
329
+ rt01 = scaleway.VpcRoute("rt01",
330
+ vpc_id=vpc01.id,
331
+ description="tf-route-vpn",
332
+ tags=[
333
+ "tf",
334
+ "route",
335
+ ],
336
+ destination="10.0.0.0/24",
337
+ nexthop_resource_id=pnic01.id)
338
+ ```
339
+
340
+ ## Import
341
+
342
+ Routes can be imported using `{region}/{id}`, e.g.
343
+
344
+ bash
345
+
346
+ ```sh
347
+ $ pulumi import scaleway:index/vpcRoute:VpcRoute main fr-par/11111111-1111-1111-1111-111111111111
348
+ ```
349
+
350
+ :param str resource_name: The name of the resource.
351
+ :param pulumi.ResourceOptions opts: Options for the resource.
352
+ :param pulumi.Input[str] description: The route description.
353
+ :param pulumi.Input[str] destination: The destination of the route.
354
+ :param pulumi.Input[str] nexthop_private_network_id: The ID of the nexthop private network.
355
+ :param pulumi.Input[str] nexthop_resource_id: The ID of the nexthop resource.
356
+ :param pulumi.Input[str] region: `region`) The region of the route.
357
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] tags: The tags to associate with the route.
358
+ :param pulumi.Input[str] vpc_id: The VPC ID the route belongs to.
359
+ """
360
+ ...
361
+ @overload
362
+ def __init__(__self__,
363
+ resource_name: str,
364
+ args: VpcRouteArgs,
365
+ opts: Optional[pulumi.ResourceOptions] = None):
366
+ """
367
+ Creates and manages Scaleway VPC Routes.
368
+ For more information, see [the main documentation](https://www.scaleway.com/en/docs/network/vpc/concepts/).
369
+
370
+ ## Example Usage
371
+
372
+ ### Basic
373
+
374
+ ```python
375
+ import pulumi
376
+ import pulumiverse_scaleway as scaleway
377
+
378
+ vpc01 = scaleway.Vpc("vpc01", name="tf-vpc-vpn")
379
+ pn01 = scaleway.VpcPrivateNetwork("pn01",
380
+ name="tf-pn-vpn",
381
+ ipv4_subnet={
382
+ "subnet": "172.16.64.0/22",
383
+ },
384
+ vpc_id=vpc01.id)
385
+ server01 = scaleway.InstanceServer("server01",
386
+ name="tf-server-vpn",
387
+ type="PLAY2-MICRO",
388
+ image="openvpn")
389
+ pnic01 = scaleway.InstancePrivateNic("pnic01",
390
+ private_network_id=pn01.id,
391
+ server_id=server01.id)
392
+ rt01 = scaleway.VpcRoute("rt01",
393
+ vpc_id=vpc01.id,
394
+ description="tf-route-vpn",
395
+ tags=[
396
+ "tf",
397
+ "route",
398
+ ],
399
+ destination="10.0.0.0/24",
400
+ nexthop_resource_id=pnic01.id)
401
+ ```
402
+
403
+ ## Import
404
+
405
+ Routes can be imported using `{region}/{id}`, e.g.
406
+
407
+ bash
408
+
409
+ ```sh
410
+ $ pulumi import scaleway:index/vpcRoute:VpcRoute main fr-par/11111111-1111-1111-1111-111111111111
411
+ ```
412
+
413
+ :param str resource_name: The name of the resource.
414
+ :param VpcRouteArgs args: The arguments to use to populate this resource's properties.
415
+ :param pulumi.ResourceOptions opts: Options for the resource.
416
+ """
417
+ ...
418
+ def __init__(__self__, resource_name: str, *args, **kwargs):
419
+ resource_args, opts = _utilities.get_resource_args_opts(VpcRouteArgs, pulumi.ResourceOptions, *args, **kwargs)
420
+ if resource_args is not None:
421
+ __self__._internal_init(resource_name, opts, **resource_args.__dict__)
422
+ else:
423
+ __self__._internal_init(resource_name, *args, **kwargs)
424
+
425
+ def _internal_init(__self__,
426
+ resource_name: str,
427
+ opts: Optional[pulumi.ResourceOptions] = None,
428
+ description: Optional[pulumi.Input[str]] = None,
429
+ destination: Optional[pulumi.Input[str]] = None,
430
+ nexthop_private_network_id: Optional[pulumi.Input[str]] = None,
431
+ nexthop_resource_id: Optional[pulumi.Input[str]] = None,
432
+ region: Optional[pulumi.Input[str]] = None,
433
+ tags: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
434
+ vpc_id: Optional[pulumi.Input[str]] = None,
435
+ __props__=None):
436
+ opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts)
437
+ if not isinstance(opts, pulumi.ResourceOptions):
438
+ raise TypeError('Expected resource options to be a ResourceOptions instance')
439
+ if opts.id is None:
440
+ if __props__ is not None:
441
+ raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource')
442
+ __props__ = VpcRouteArgs.__new__(VpcRouteArgs)
443
+
444
+ __props__.__dict__["description"] = description
445
+ __props__.__dict__["destination"] = destination
446
+ __props__.__dict__["nexthop_private_network_id"] = nexthop_private_network_id
447
+ __props__.__dict__["nexthop_resource_id"] = nexthop_resource_id
448
+ __props__.__dict__["region"] = region
449
+ __props__.__dict__["tags"] = tags
450
+ if vpc_id is None and not opts.urn:
451
+ raise TypeError("Missing required property 'vpc_id'")
452
+ __props__.__dict__["vpc_id"] = vpc_id
453
+ __props__.__dict__["created_at"] = None
454
+ __props__.__dict__["updated_at"] = None
455
+ super(VpcRoute, __self__).__init__(
456
+ 'scaleway:index/vpcRoute:VpcRoute',
457
+ resource_name,
458
+ __props__,
459
+ opts)
460
+
461
+ @staticmethod
462
+ def get(resource_name: str,
463
+ id: pulumi.Input[str],
464
+ opts: Optional[pulumi.ResourceOptions] = None,
465
+ created_at: Optional[pulumi.Input[str]] = None,
466
+ description: Optional[pulumi.Input[str]] = None,
467
+ destination: Optional[pulumi.Input[str]] = None,
468
+ nexthop_private_network_id: Optional[pulumi.Input[str]] = None,
469
+ nexthop_resource_id: Optional[pulumi.Input[str]] = None,
470
+ region: Optional[pulumi.Input[str]] = None,
471
+ tags: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
472
+ updated_at: Optional[pulumi.Input[str]] = None,
473
+ vpc_id: Optional[pulumi.Input[str]] = None) -> 'VpcRoute':
474
+ """
475
+ Get an existing VpcRoute resource's state with the given name, id, and optional extra
476
+ properties used to qualify the lookup.
477
+
478
+ :param str resource_name: The unique name of the resulting resource.
479
+ :param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
480
+ :param pulumi.ResourceOptions opts: Options for the resource.
481
+ :param pulumi.Input[str] created_at: The date and time of the creation of the route (RFC 3339 format).
482
+ :param pulumi.Input[str] description: The route description.
483
+ :param pulumi.Input[str] destination: The destination of the route.
484
+ :param pulumi.Input[str] nexthop_private_network_id: The ID of the nexthop private network.
485
+ :param pulumi.Input[str] nexthop_resource_id: The ID of the nexthop resource.
486
+ :param pulumi.Input[str] region: `region`) The region of the route.
487
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] tags: The tags to associate with the route.
488
+ :param pulumi.Input[str] updated_at: The date and time of the creation of the route (RFC 3339 format).
489
+ :param pulumi.Input[str] vpc_id: The VPC ID the route belongs to.
490
+ """
491
+ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
492
+
493
+ __props__ = _VpcRouteState.__new__(_VpcRouteState)
494
+
495
+ __props__.__dict__["created_at"] = created_at
496
+ __props__.__dict__["description"] = description
497
+ __props__.__dict__["destination"] = destination
498
+ __props__.__dict__["nexthop_private_network_id"] = nexthop_private_network_id
499
+ __props__.__dict__["nexthop_resource_id"] = nexthop_resource_id
500
+ __props__.__dict__["region"] = region
501
+ __props__.__dict__["tags"] = tags
502
+ __props__.__dict__["updated_at"] = updated_at
503
+ __props__.__dict__["vpc_id"] = vpc_id
504
+ return VpcRoute(resource_name, opts=opts, __props__=__props__)
505
+
506
+ @property
507
+ @pulumi.getter(name="createdAt")
508
+ def created_at(self) -> pulumi.Output[str]:
509
+ """
510
+ The date and time of the creation of the route (RFC 3339 format).
511
+ """
512
+ return pulumi.get(self, "created_at")
513
+
514
+ @property
515
+ @pulumi.getter
516
+ def description(self) -> pulumi.Output[Optional[str]]:
517
+ """
518
+ The route description.
519
+ """
520
+ return pulumi.get(self, "description")
521
+
522
+ @property
523
+ @pulumi.getter
524
+ def destination(self) -> pulumi.Output[Optional[str]]:
525
+ """
526
+ The destination of the route.
527
+ """
528
+ return pulumi.get(self, "destination")
529
+
530
+ @property
531
+ @pulumi.getter(name="nexthopPrivateNetworkId")
532
+ def nexthop_private_network_id(self) -> pulumi.Output[Optional[str]]:
533
+ """
534
+ The ID of the nexthop private network.
535
+ """
536
+ return pulumi.get(self, "nexthop_private_network_id")
537
+
538
+ @property
539
+ @pulumi.getter(name="nexthopResourceId")
540
+ def nexthop_resource_id(self) -> pulumi.Output[Optional[str]]:
541
+ """
542
+ The ID of the nexthop resource.
543
+ """
544
+ return pulumi.get(self, "nexthop_resource_id")
545
+
546
+ @property
547
+ @pulumi.getter
548
+ def region(self) -> pulumi.Output[str]:
549
+ """
550
+ `region`) The region of the route.
551
+ """
552
+ return pulumi.get(self, "region")
553
+
554
+ @property
555
+ @pulumi.getter
556
+ def tags(self) -> pulumi.Output[Optional[Sequence[str]]]:
557
+ """
558
+ The tags to associate with the route.
559
+ """
560
+ return pulumi.get(self, "tags")
561
+
562
+ @property
563
+ @pulumi.getter(name="updatedAt")
564
+ def updated_at(self) -> pulumi.Output[str]:
565
+ """
566
+ The date and time of the creation of the route (RFC 3339 format).
567
+ """
568
+ return pulumi.get(self, "updated_at")
569
+
570
+ @property
571
+ @pulumi.getter(name="vpcId")
572
+ def vpc_id(self) -> pulumi.Output[str]:
573
+ """
574
+ The VPC ID the route belongs to.
575
+ """
576
+ return pulumi.get(self, "vpc_id")
577
+