pulumiverse-scaleway 1.25.0a1742464679__py3-none-any.whl → 1.25.0a1742668904__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.
Files changed (461) hide show
  1. pulumiverse_scaleway/__init__.py +929 -0
  2. pulumiverse_scaleway/account/__init__.py +12 -0
  3. pulumiverse_scaleway/account/get_availability_zones.py +139 -0
  4. pulumiverse_scaleway/account/get_project.py +170 -0
  5. pulumiverse_scaleway/account/get_ssh_key.py +205 -0
  6. pulumiverse_scaleway/account/project.py +318 -0
  7. pulumiverse_scaleway/account/ssh_key.py +456 -0
  8. pulumiverse_scaleway/account_project.py +6 -0
  9. pulumiverse_scaleway/account_ssh_key.py +12 -6
  10. pulumiverse_scaleway/apple_silicon_server.py +8 -2
  11. pulumiverse_scaleway/applesilicon/__init__.py +10 -0
  12. pulumiverse_scaleway/applesilicon/_inputs.py +154 -0
  13. pulumiverse_scaleway/applesilicon/outputs.py +119 -0
  14. pulumiverse_scaleway/applesilicon/server.py +690 -0
  15. pulumiverse_scaleway/baremetal_server.py +64 -58
  16. pulumiverse_scaleway/billing/__init__.py +10 -0
  17. pulumiverse_scaleway/billing/get_consumptions.py +134 -0
  18. pulumiverse_scaleway/billing/get_invoices.py +154 -0
  19. pulumiverse_scaleway/billing/outputs.py +288 -0
  20. pulumiverse_scaleway/block/__init__.py +11 -0
  21. pulumiverse_scaleway/block/get_snapshot.py +174 -0
  22. pulumiverse_scaleway/block/get_volume.py +199 -0
  23. pulumiverse_scaleway/block/snapshot.py +403 -0
  24. pulumiverse_scaleway/block/volume.py +576 -0
  25. pulumiverse_scaleway/block_snapshot.py +12 -6
  26. pulumiverse_scaleway/block_volume.py +16 -10
  27. pulumiverse_scaleway/cockpit.py +10 -4
  28. pulumiverse_scaleway/cockpit_alert_manager.py +12 -6
  29. pulumiverse_scaleway/cockpit_grafana_user.py +12 -6
  30. pulumiverse_scaleway/cockpit_source.py +12 -6
  31. pulumiverse_scaleway/cockpit_token.py +16 -10
  32. pulumiverse_scaleway/container.py +16 -10
  33. pulumiverse_scaleway/container_cron.py +14 -8
  34. pulumiverse_scaleway/container_domain.py +24 -18
  35. pulumiverse_scaleway/container_namespace.py +10 -4
  36. pulumiverse_scaleway/container_token.py +32 -26
  37. pulumiverse_scaleway/container_trigger.py +12 -6
  38. pulumiverse_scaleway/containers/__init__.py +17 -0
  39. pulumiverse_scaleway/containers/_inputs.py +389 -0
  40. pulumiverse_scaleway/containers/container.py +1635 -0
  41. pulumiverse_scaleway/containers/cron.py +460 -0
  42. pulumiverse_scaleway/containers/domain.py +408 -0
  43. pulumiverse_scaleway/containers/get_container.py +562 -0
  44. pulumiverse_scaleway/containers/get_namespace.py +283 -0
  45. pulumiverse_scaleway/containers/namespace.py +638 -0
  46. pulumiverse_scaleway/containers/outputs.py +412 -0
  47. pulumiverse_scaleway/containers/token.py +454 -0
  48. pulumiverse_scaleway/containers/trigger.py +482 -0
  49. pulumiverse_scaleway/database.py +10 -4
  50. pulumiverse_scaleway/database_acl.py +10 -4
  51. pulumiverse_scaleway/database_backup.py +14 -8
  52. pulumiverse_scaleway/database_instance.py +24 -18
  53. pulumiverse_scaleway/database_privilege.py +16 -10
  54. pulumiverse_scaleway/database_read_replica.py +22 -16
  55. pulumiverse_scaleway/database_user.py +10 -4
  56. pulumiverse_scaleway/databases/__init__.py +23 -0
  57. pulumiverse_scaleway/databases/_inputs.py +822 -0
  58. pulumiverse_scaleway/databases/acl.py +334 -0
  59. pulumiverse_scaleway/databases/database.py +409 -0
  60. pulumiverse_scaleway/databases/database_backup.py +576 -0
  61. pulumiverse_scaleway/databases/get_acl.py +143 -0
  62. pulumiverse_scaleway/databases/get_database.py +187 -0
  63. pulumiverse_scaleway/databases/get_database_backup.py +253 -0
  64. pulumiverse_scaleway/databases/get_instance.py +415 -0
  65. pulumiverse_scaleway/databases/get_privilege.py +181 -0
  66. pulumiverse_scaleway/databases/instance.py +1696 -0
  67. pulumiverse_scaleway/databases/outputs.py +866 -0
  68. pulumiverse_scaleway/databases/privilege.py +424 -0
  69. pulumiverse_scaleway/databases/read_replica.py +530 -0
  70. pulumiverse_scaleway/databases/serverless_database.py +434 -0
  71. pulumiverse_scaleway/databases/snapshot.py +610 -0
  72. pulumiverse_scaleway/databases/user.py +448 -0
  73. pulumiverse_scaleway/domain/__init__.py +13 -0
  74. pulumiverse_scaleway/domain/_inputs.py +341 -0
  75. pulumiverse_scaleway/domain/get_record.py +340 -0
  76. pulumiverse_scaleway/domain/get_zone.py +201 -0
  77. pulumiverse_scaleway/domain/outputs.py +408 -0
  78. pulumiverse_scaleway/domain/record.py +1118 -0
  79. pulumiverse_scaleway/domain/zone.py +432 -0
  80. pulumiverse_scaleway/domain_record.py +36 -30
  81. pulumiverse_scaleway/domain_zone.py +6 -0
  82. pulumiverse_scaleway/elasticmetal/__init__.py +18 -0
  83. pulumiverse_scaleway/elasticmetal/_inputs.py +509 -0
  84. pulumiverse_scaleway/elasticmetal/get_ip.py +247 -0
  85. pulumiverse_scaleway/elasticmetal/get_ips.py +240 -0
  86. pulumiverse_scaleway/elasticmetal/get_offer.py +245 -0
  87. pulumiverse_scaleway/elasticmetal/get_option.py +168 -0
  88. pulumiverse_scaleway/elasticmetal/get_os.py +174 -0
  89. pulumiverse_scaleway/elasticmetal/get_server.py +422 -0
  90. pulumiverse_scaleway/elasticmetal/ip.py +704 -0
  91. pulumiverse_scaleway/elasticmetal/ip_mac_address.py +512 -0
  92. pulumiverse_scaleway/elasticmetal/outputs.py +974 -0
  93. pulumiverse_scaleway/elasticmetal/server.py +1591 -0
  94. pulumiverse_scaleway/flexible_ip.py +22 -16
  95. pulumiverse_scaleway/flexible_ip_mac_address.py +22 -16
  96. pulumiverse_scaleway/function.py +6 -0
  97. pulumiverse_scaleway/function_cron.py +16 -10
  98. pulumiverse_scaleway/function_domain.py +16 -10
  99. pulumiverse_scaleway/function_namespace.py +10 -4
  100. pulumiverse_scaleway/function_token.py +32 -26
  101. pulumiverse_scaleway/function_trigger.py +12 -6
  102. pulumiverse_scaleway/functions/__init__.py +17 -0
  103. pulumiverse_scaleway/functions/_inputs.py +211 -0
  104. pulumiverse_scaleway/functions/cron.py +464 -0
  105. pulumiverse_scaleway/functions/domain.py +372 -0
  106. pulumiverse_scaleway/functions/function.py +1105 -0
  107. pulumiverse_scaleway/functions/get_function.py +365 -0
  108. pulumiverse_scaleway/functions/get_namespace.py +238 -0
  109. pulumiverse_scaleway/functions/namespace.py +582 -0
  110. pulumiverse_scaleway/functions/outputs.py +168 -0
  111. pulumiverse_scaleway/functions/token.py +462 -0
  112. pulumiverse_scaleway/functions/trigger.py +482 -0
  113. pulumiverse_scaleway/get_account_project.py +6 -2
  114. pulumiverse_scaleway/get_account_ssh_key.py +6 -2
  115. pulumiverse_scaleway/get_availability_zones.py +8 -4
  116. pulumiverse_scaleway/get_baremetal_offer.py +4 -0
  117. pulumiverse_scaleway/get_baremetal_option.py +8 -4
  118. pulumiverse_scaleway/get_baremetal_os.py +8 -4
  119. pulumiverse_scaleway/get_baremetal_server.py +8 -4
  120. pulumiverse_scaleway/get_billing_consumptions.py +4 -0
  121. pulumiverse_scaleway/get_billing_invoices.py +4 -0
  122. pulumiverse_scaleway/get_block_snapshot.py +6 -2
  123. pulumiverse_scaleway/get_block_volume.py +6 -2
  124. pulumiverse_scaleway/get_cockpit.py +12 -8
  125. pulumiverse_scaleway/get_cockpit_plan.py +10 -6
  126. pulumiverse_scaleway/get_cockpit_source.py +8 -4
  127. pulumiverse_scaleway/get_container.py +16 -12
  128. pulumiverse_scaleway/get_container_namespace.py +10 -6
  129. pulumiverse_scaleway/get_database.py +6 -2
  130. pulumiverse_scaleway/get_database_acl.py +6 -2
  131. pulumiverse_scaleway/get_database_backup.py +10 -6
  132. pulumiverse_scaleway/get_database_instance.py +4 -0
  133. pulumiverse_scaleway/get_database_privilege.py +6 -2
  134. pulumiverse_scaleway/get_domain_record.py +10 -6
  135. pulumiverse_scaleway/get_domain_zone.py +4 -0
  136. pulumiverse_scaleway/get_flexible_ip.py +4 -0
  137. pulumiverse_scaleway/get_flexible_ips.py +16 -12
  138. pulumiverse_scaleway/get_function.py +6 -2
  139. pulumiverse_scaleway/get_function_namespace.py +6 -2
  140. pulumiverse_scaleway/get_iam_api_key.py +6 -2
  141. pulumiverse_scaleway/get_iam_application.py +8 -4
  142. pulumiverse_scaleway/get_iam_group.py +8 -4
  143. pulumiverse_scaleway/get_iam_ssh_key.py +4 -0
  144. pulumiverse_scaleway/get_iam_user.py +8 -4
  145. pulumiverse_scaleway/get_instance_image.py +4 -0
  146. pulumiverse_scaleway/get_instance_ip.py +4 -0
  147. pulumiverse_scaleway/get_instance_placement_group.py +4 -0
  148. pulumiverse_scaleway/get_instance_private_nic.py +10 -6
  149. pulumiverse_scaleway/get_instance_security_group.py +4 -0
  150. pulumiverse_scaleway/get_instance_server.py +4 -0
  151. pulumiverse_scaleway/get_instance_servers.py +4 -0
  152. pulumiverse_scaleway/get_instance_snapshot.py +8 -4
  153. pulumiverse_scaleway/get_instance_volume.py +4 -0
  154. pulumiverse_scaleway/get_iot_device.py +4 -0
  155. pulumiverse_scaleway/get_iot_hub.py +4 -0
  156. pulumiverse_scaleway/get_ipam_ip.py +18 -14
  157. pulumiverse_scaleway/get_ipam_ips.py +14 -10
  158. pulumiverse_scaleway/get_k8s_version.py +8 -4
  159. pulumiverse_scaleway/get_kubernetes_cluster.py +4 -0
  160. pulumiverse_scaleway/get_kubernetes_node_pool.py +4 -0
  161. pulumiverse_scaleway/get_lb_acls.py +8 -4
  162. pulumiverse_scaleway/get_lb_backend.py +18 -14
  163. pulumiverse_scaleway/get_lb_backends.py +8 -4
  164. pulumiverse_scaleway/get_lb_frontend.py +16 -12
  165. pulumiverse_scaleway/get_lb_frontends.py +8 -4
  166. pulumiverse_scaleway/get_lb_ips.py +4 -0
  167. pulumiverse_scaleway/get_lb_route.py +16 -12
  168. pulumiverse_scaleway/get_lb_routes.py +8 -4
  169. pulumiverse_scaleway/get_lbs.py +4 -0
  170. pulumiverse_scaleway/get_loadbalancer.py +8 -4
  171. pulumiverse_scaleway/get_loadbalancer_certificate.py +4 -0
  172. pulumiverse_scaleway/get_loadbalancer_ip.py +4 -0
  173. pulumiverse_scaleway/get_mnq_sns.py +8 -4
  174. pulumiverse_scaleway/get_mnq_sqs.py +8 -4
  175. pulumiverse_scaleway/get_mongo_db_instance.py +4 -0
  176. pulumiverse_scaleway/get_object_bucket.py +12 -8
  177. pulumiverse_scaleway/get_object_bucket_policy.py +8 -4
  178. pulumiverse_scaleway/get_redis_cluster.py +4 -0
  179. pulumiverse_scaleway/get_registry_image.py +4 -0
  180. pulumiverse_scaleway/get_registry_image_tag.py +4 -0
  181. pulumiverse_scaleway/get_registry_namespace.py +4 -0
  182. pulumiverse_scaleway/get_secret.py +12 -8
  183. pulumiverse_scaleway/get_secret_version.py +14 -10
  184. pulumiverse_scaleway/get_tem_domain.py +4 -0
  185. pulumiverse_scaleway/get_vpc.py +10 -6
  186. pulumiverse_scaleway/get_vpc_gateway_network.py +10 -6
  187. pulumiverse_scaleway/get_vpc_private_network.py +10 -6
  188. pulumiverse_scaleway/get_vpc_public_gateway.py +10 -6
  189. pulumiverse_scaleway/get_vpc_public_gateway_dhcp.py +8 -4
  190. pulumiverse_scaleway/get_vpc_public_gateway_dhcp_reservation.py +70 -66
  191. pulumiverse_scaleway/get_vpc_public_gateway_ip.py +8 -4
  192. pulumiverse_scaleway/get_vpc_public_pat_rule.py +26 -22
  193. pulumiverse_scaleway/get_vpc_routes.py +4 -0
  194. pulumiverse_scaleway/get_vpcs.py +4 -0
  195. pulumiverse_scaleway/get_web_host_offer.py +8 -4
  196. pulumiverse_scaleway/get_webhosting.py +8 -4
  197. pulumiverse_scaleway/hosting/__init__.py +12 -0
  198. pulumiverse_scaleway/hosting/_inputs.py +295 -0
  199. pulumiverse_scaleway/hosting/get_hosting.py +354 -0
  200. pulumiverse_scaleway/hosting/get_offer.py +229 -0
  201. pulumiverse_scaleway/hosting/hosting.py +870 -0
  202. pulumiverse_scaleway/hosting/outputs.py +626 -0
  203. pulumiverse_scaleway/iam/__init__.py +21 -0
  204. pulumiverse_scaleway/iam/_inputs.py +138 -0
  205. pulumiverse_scaleway/iam/api_key.py +622 -0
  206. pulumiverse_scaleway/iam/application.py +419 -0
  207. pulumiverse_scaleway/iam/get_api_key.py +210 -0
  208. pulumiverse_scaleway/iam/get_application.py +210 -0
  209. pulumiverse_scaleway/iam/get_group.py +236 -0
  210. pulumiverse_scaleway/iam/get_ssh_key.py +212 -0
  211. pulumiverse_scaleway/iam/get_user.py +177 -0
  212. pulumiverse_scaleway/iam/group.py +568 -0
  213. pulumiverse_scaleway/iam/group_membership.py +325 -0
  214. pulumiverse_scaleway/iam/outputs.py +111 -0
  215. pulumiverse_scaleway/iam/policy.py +775 -0
  216. pulumiverse_scaleway/iam/ssh_key.py +457 -0
  217. pulumiverse_scaleway/iam/user.py +515 -0
  218. pulumiverse_scaleway/iam_api_key.py +16 -10
  219. pulumiverse_scaleway/iam_application.py +8 -2
  220. pulumiverse_scaleway/iam_group.py +12 -6
  221. pulumiverse_scaleway/iam_group_membership.py +12 -6
  222. pulumiverse_scaleway/iam_policy.py +18 -12
  223. pulumiverse_scaleway/iam_ssh_key.py +8 -2
  224. pulumiverse_scaleway/iam_user.py +8 -2
  225. pulumiverse_scaleway/inference/__init__.py +10 -0
  226. pulumiverse_scaleway/inference/_inputs.py +209 -0
  227. pulumiverse_scaleway/inference/deployment.py +824 -0
  228. pulumiverse_scaleway/inference/outputs.py +169 -0
  229. pulumiverse_scaleway/inference_deployment.py +8 -2
  230. pulumiverse_scaleway/instance/__init__.py +29 -0
  231. pulumiverse_scaleway/instance/_inputs.py +1237 -0
  232. pulumiverse_scaleway/instance/get_image.py +305 -0
  233. pulumiverse_scaleway/instance/get_ip.py +204 -0
  234. pulumiverse_scaleway/instance/get_placement_group.py +212 -0
  235. pulumiverse_scaleway/instance/get_private_nic.py +226 -0
  236. pulumiverse_scaleway/instance/get_security_group.py +268 -0
  237. pulumiverse_scaleway/instance/get_server.py +488 -0
  238. pulumiverse_scaleway/instance/get_servers.py +187 -0
  239. pulumiverse_scaleway/instance/get_snapshot.py +248 -0
  240. pulumiverse_scaleway/instance/get_volume.py +226 -0
  241. pulumiverse_scaleway/instance/image.py +752 -0
  242. pulumiverse_scaleway/instance/ip.py +471 -0
  243. pulumiverse_scaleway/instance/ip_reverse_dns.py +310 -0
  244. pulumiverse_scaleway/instance/outputs.py +1533 -0
  245. pulumiverse_scaleway/instance/placement_group.py +481 -0
  246. pulumiverse_scaleway/instance/private_nic.py +557 -0
  247. pulumiverse_scaleway/instance/security_group.py +722 -0
  248. pulumiverse_scaleway/instance/security_group_rules.py +441 -0
  249. pulumiverse_scaleway/instance/server.py +1938 -0
  250. pulumiverse_scaleway/instance/snapshot.py +671 -0
  251. pulumiverse_scaleway/instance/user_data.py +437 -0
  252. pulumiverse_scaleway/instance/volume.py +584 -0
  253. pulumiverse_scaleway/instance_image.py +18 -12
  254. pulumiverse_scaleway/instance_ip.py +8 -2
  255. pulumiverse_scaleway/instance_ip_reverse_dns.py +12 -6
  256. pulumiverse_scaleway/instance_placement_group.py +8 -2
  257. pulumiverse_scaleway/instance_private_nic.py +24 -18
  258. pulumiverse_scaleway/instance_security_group.py +6 -0
  259. pulumiverse_scaleway/instance_security_group_rules.py +22 -16
  260. pulumiverse_scaleway/instance_server.py +74 -68
  261. pulumiverse_scaleway/instance_snapshot.py +22 -16
  262. pulumiverse_scaleway/instance_user_data.py +16 -10
  263. pulumiverse_scaleway/instance_volume.py +8 -2
  264. pulumiverse_scaleway/iot/__init__.py +15 -0
  265. pulumiverse_scaleway/iot/_inputs.py +539 -0
  266. pulumiverse_scaleway/iot/device.py +752 -0
  267. pulumiverse_scaleway/iot/get_device.py +257 -0
  268. pulumiverse_scaleway/iot/get_hub.py +322 -0
  269. pulumiverse_scaleway/iot/hub.py +898 -0
  270. pulumiverse_scaleway/iot/network.py +474 -0
  271. pulumiverse_scaleway/iot/outputs.py +465 -0
  272. pulumiverse_scaleway/iot/route.py +662 -0
  273. pulumiverse_scaleway/iot_device.py +14 -8
  274. pulumiverse_scaleway/iot_hub.py +8 -2
  275. pulumiverse_scaleway/iot_network.py +12 -6
  276. pulumiverse_scaleway/iot_route.py +32 -26
  277. pulumiverse_scaleway/ipam/__init__.py +13 -0
  278. pulumiverse_scaleway/ipam/_inputs.py +442 -0
  279. pulumiverse_scaleway/ipam/get_ip.py +419 -0
  280. pulumiverse_scaleway/ipam/get_ips.py +358 -0
  281. pulumiverse_scaleway/ipam/ip.py +759 -0
  282. pulumiverse_scaleway/ipam/ip_reverse_dns.py +320 -0
  283. pulumiverse_scaleway/ipam/outputs.py +481 -0
  284. pulumiverse_scaleway/ipam_ip.py +30 -24
  285. pulumiverse_scaleway/ipam_ip_reverse_dns.py +6 -0
  286. pulumiverse_scaleway/job/__init__.py +10 -0
  287. pulumiverse_scaleway/job/_inputs.py +73 -0
  288. pulumiverse_scaleway/job/definition.py +694 -0
  289. pulumiverse_scaleway/job/outputs.py +49 -0
  290. pulumiverse_scaleway/job_definition.py +8 -2
  291. pulumiverse_scaleway/kubernetes/__init__.py +14 -0
  292. pulumiverse_scaleway/kubernetes/_inputs.py +717 -0
  293. pulumiverse_scaleway/kubernetes/cluster.py +1540 -0
  294. pulumiverse_scaleway/kubernetes/get_cluster.py +417 -0
  295. pulumiverse_scaleway/kubernetes/get_pool.py +436 -0
  296. pulumiverse_scaleway/kubernetes/get_version.py +196 -0
  297. pulumiverse_scaleway/kubernetes/outputs.py +944 -0
  298. pulumiverse_scaleway/kubernetes/pool.py +1313 -0
  299. pulumiverse_scaleway/kubernetes_cluster.py +36 -30
  300. pulumiverse_scaleway/kubernetes_node_pool.py +6 -0
  301. pulumiverse_scaleway/loadbalancer.py +35 -29
  302. pulumiverse_scaleway/loadbalancer_acl.py +8 -2
  303. pulumiverse_scaleway/loadbalancer_backend.py +10 -4
  304. pulumiverse_scaleway/loadbalancer_certificate.py +6 -0
  305. pulumiverse_scaleway/loadbalancer_frontend.py +10 -4
  306. pulumiverse_scaleway/loadbalancer_ip.py +10 -4
  307. pulumiverse_scaleway/loadbalancer_route.py +26 -20
  308. pulumiverse_scaleway/loadbalancers/__init__.py +28 -0
  309. pulumiverse_scaleway/loadbalancers/_inputs.py +1103 -0
  310. pulumiverse_scaleway/loadbalancers/acl.py +522 -0
  311. pulumiverse_scaleway/loadbalancers/backend.py +1590 -0
  312. pulumiverse_scaleway/loadbalancers/certificate.py +462 -0
  313. pulumiverse_scaleway/loadbalancers/frontend.py +831 -0
  314. pulumiverse_scaleway/loadbalancers/get_acls.py +198 -0
  315. pulumiverse_scaleway/loadbalancers/get_backend.py +486 -0
  316. pulumiverse_scaleway/loadbalancers/get_backends.py +196 -0
  317. pulumiverse_scaleway/loadbalancers/get_certificate.py +230 -0
  318. pulumiverse_scaleway/loadbalancers/get_frontend.py +274 -0
  319. pulumiverse_scaleway/loadbalancers/get_frontends.py +196 -0
  320. pulumiverse_scaleway/loadbalancers/get_ip.py +228 -0
  321. pulumiverse_scaleway/loadbalancers/get_ips.py +198 -0
  322. pulumiverse_scaleway/loadbalancers/get_load_balancer.py +339 -0
  323. pulumiverse_scaleway/loadbalancers/get_load_balancers.py +187 -0
  324. pulumiverse_scaleway/loadbalancers/get_route.py +217 -0
  325. pulumiverse_scaleway/loadbalancers/get_routes.py +179 -0
  326. pulumiverse_scaleway/loadbalancers/ip.py +516 -0
  327. pulumiverse_scaleway/loadbalancers/load_balancer.py +1063 -0
  328. pulumiverse_scaleway/loadbalancers/outputs.py +2491 -0
  329. pulumiverse_scaleway/loadbalancers/route.py +525 -0
  330. pulumiverse_scaleway/mnq/__init__.py +20 -0
  331. pulumiverse_scaleway/mnq/_inputs.py +169 -0
  332. pulumiverse_scaleway/mnq/get_sns.py +150 -0
  333. pulumiverse_scaleway/mnq/get_sqs.py +150 -0
  334. pulumiverse_scaleway/mnq/nats_account.py +336 -0
  335. pulumiverse_scaleway/mnq/nats_credentials.py +332 -0
  336. pulumiverse_scaleway/mnq/outputs.py +149 -0
  337. pulumiverse_scaleway/mnq/sns.py +308 -0
  338. pulumiverse_scaleway/mnq/sns_credentials.py +415 -0
  339. pulumiverse_scaleway/mnq/sns_topic.py +661 -0
  340. pulumiverse_scaleway/mnq/sns_topic_subscription.py +701 -0
  341. pulumiverse_scaleway/mnq/sqs.py +306 -0
  342. pulumiverse_scaleway/mnq/sqs_credentials.py +415 -0
  343. pulumiverse_scaleway/mnq/sqs_queue.py +802 -0
  344. pulumiverse_scaleway/mnq_nats_account.py +8 -2
  345. pulumiverse_scaleway/mnq_nats_credentials.py +10 -4
  346. pulumiverse_scaleway/mnq_sns.py +12 -6
  347. pulumiverse_scaleway/mnq_sns_credentials.py +10 -4
  348. pulumiverse_scaleway/mnq_sns_topic.py +16 -10
  349. pulumiverse_scaleway/mnq_sns_topic_subscription.py +22 -16
  350. pulumiverse_scaleway/mnq_sqs.py +12 -6
  351. pulumiverse_scaleway/mnq_sqs_credentials.py +10 -4
  352. pulumiverse_scaleway/mnq_sqs_queue.py +16 -10
  353. pulumiverse_scaleway/mongo_db_instance.py +14 -8
  354. pulumiverse_scaleway/mongo_db_snapshot.py +8 -2
  355. pulumiverse_scaleway/mongodb/__init__.py +12 -0
  356. pulumiverse_scaleway/mongodb/_inputs.py +208 -0
  357. pulumiverse_scaleway/mongodb/get_instance.py +335 -0
  358. pulumiverse_scaleway/mongodb/instance.py +1000 -0
  359. pulumiverse_scaleway/mongodb/outputs.py +270 -0
  360. pulumiverse_scaleway/mongodb/snapshot.py +523 -0
  361. pulumiverse_scaleway/network/__init__.py +29 -0
  362. pulumiverse_scaleway/network/_inputs.py +383 -0
  363. pulumiverse_scaleway/network/gateway_network.py +868 -0
  364. pulumiverse_scaleway/network/get_gateway_network.py +287 -0
  365. pulumiverse_scaleway/network/get_private_network.py +282 -0
  366. pulumiverse_scaleway/network/get_public_gateway.py +304 -0
  367. pulumiverse_scaleway/network/get_public_gateway_dhcp.py +305 -0
  368. pulumiverse_scaleway/network/get_public_gateway_dhcp_reservation.py +382 -0
  369. pulumiverse_scaleway/network/get_public_gateway_ip.py +199 -0
  370. pulumiverse_scaleway/network/get_public_gateway_pat_rule.py +313 -0
  371. pulumiverse_scaleway/network/get_routes.py +208 -0
  372. pulumiverse_scaleway/network/get_vpc.py +246 -0
  373. pulumiverse_scaleway/network/get_vpcs.py +174 -0
  374. pulumiverse_scaleway/network/outputs.py +747 -0
  375. pulumiverse_scaleway/network/private_network.py +736 -0
  376. pulumiverse_scaleway/network/public_gateway.py +791 -0
  377. pulumiverse_scaleway/network/public_gateway_dhcp.py +949 -0
  378. pulumiverse_scaleway/network/public_gateway_dhcp_reservation.py +516 -0
  379. pulumiverse_scaleway/network/public_gateway_ip.py +459 -0
  380. pulumiverse_scaleway/network/public_gateway_ip_reverse_dns.py +308 -0
  381. pulumiverse_scaleway/network/public_gateway_pat_rule.py +593 -0
  382. pulumiverse_scaleway/network/route.py +579 -0
  383. pulumiverse_scaleway/network/vpc.py +538 -0
  384. pulumiverse_scaleway/object/__init__.py +17 -0
  385. pulumiverse_scaleway/object/_inputs.py +831 -0
  386. pulumiverse_scaleway/object/bucket.py +876 -0
  387. pulumiverse_scaleway/object/bucket_acl.py +598 -0
  388. pulumiverse_scaleway/object/bucket_lock_configuration.py +397 -0
  389. pulumiverse_scaleway/object/bucket_policy.py +675 -0
  390. pulumiverse_scaleway/object/bucket_website_configuration.py +536 -0
  391. pulumiverse_scaleway/object/get_bucket.py +290 -0
  392. pulumiverse_scaleway/object/get_bucket_policy.py +163 -0
  393. pulumiverse_scaleway/object/item.py +778 -0
  394. pulumiverse_scaleway/object/outputs.py +802 -0
  395. pulumiverse_scaleway/object_bucket.py +28 -22
  396. pulumiverse_scaleway/object_bucket_acl.py +14 -8
  397. pulumiverse_scaleway/object_bucket_lock_configuration.py +12 -6
  398. pulumiverse_scaleway/object_bucket_policy.py +46 -40
  399. pulumiverse_scaleway/object_bucket_website_configuration.py +18 -12
  400. pulumiverse_scaleway/object_item.py +8 -2
  401. pulumiverse_scaleway/observability/__init__.py +17 -0
  402. pulumiverse_scaleway/observability/_inputs.py +417 -0
  403. pulumiverse_scaleway/observability/alert_manager.py +403 -0
  404. pulumiverse_scaleway/observability/cockpit.py +325 -0
  405. pulumiverse_scaleway/observability/get_instance.py +205 -0
  406. pulumiverse_scaleway/observability/get_plan.py +125 -0
  407. pulumiverse_scaleway/observability/get_source.py +262 -0
  408. pulumiverse_scaleway/observability/grafana_user.py +364 -0
  409. pulumiverse_scaleway/observability/outputs.py +425 -0
  410. pulumiverse_scaleway/observability/source.py +569 -0
  411. pulumiverse_scaleway/observability/token.py +481 -0
  412. pulumiverse_scaleway/pulumi-plugin.json +1 -1
  413. pulumiverse_scaleway/rdb_snapshot.py +16 -10
  414. pulumiverse_scaleway/redis/__init__.py +11 -0
  415. pulumiverse_scaleway/redis/_inputs.py +330 -0
  416. pulumiverse_scaleway/redis/cluster.py +1203 -0
  417. pulumiverse_scaleway/redis/get_cluster.py +347 -0
  418. pulumiverse_scaleway/redis/outputs.py +356 -0
  419. pulumiverse_scaleway/redis_cluster.py +14 -8
  420. pulumiverse_scaleway/registry/__init__.py +11 -0
  421. pulumiverse_scaleway/registry/get_image.py +239 -0
  422. pulumiverse_scaleway/registry/get_image_tag.py +229 -0
  423. pulumiverse_scaleway/registry/get_namespace.py +199 -0
  424. pulumiverse_scaleway/registry/namespace.py +460 -0
  425. pulumiverse_scaleway/registry_namespace.py +8 -2
  426. pulumiverse_scaleway/sdb_database.py +10 -4
  427. pulumiverse_scaleway/secret.py +6 -0
  428. pulumiverse_scaleway/secret_version.py +12 -6
  429. pulumiverse_scaleway/secrets/__init__.py +13 -0
  430. pulumiverse_scaleway/secrets/_inputs.py +94 -0
  431. pulumiverse_scaleway/secrets/get_secret.py +338 -0
  432. pulumiverse_scaleway/secrets/get_version.py +340 -0
  433. pulumiverse_scaleway/secrets/outputs.py +120 -0
  434. pulumiverse_scaleway/secrets/secret.py +665 -0
  435. pulumiverse_scaleway/secrets/version.py +489 -0
  436. pulumiverse_scaleway/tem/__init__.py +13 -0
  437. pulumiverse_scaleway/tem/_inputs.py +135 -0
  438. pulumiverse_scaleway/tem/domain.py +1032 -0
  439. pulumiverse_scaleway/tem/domain_validation.py +305 -0
  440. pulumiverse_scaleway/tem/get_domain.py +378 -0
  441. pulumiverse_scaleway/tem/outputs.py +171 -0
  442. pulumiverse_scaleway/tem/webhook.py +642 -0
  443. pulumiverse_scaleway/tem_domain.py +20 -14
  444. pulumiverse_scaleway/tem_domain_validation.py +10 -4
  445. pulumiverse_scaleway/tem_webhook.py +28 -22
  446. pulumiverse_scaleway/vpc.py +10 -4
  447. pulumiverse_scaleway/vpc_gateway_network.py +40 -34
  448. pulumiverse_scaleway/vpc_private_network.py +10 -4
  449. pulumiverse_scaleway/vpc_public_gateway.py +8 -2
  450. pulumiverse_scaleway/vpc_public_gateway_dhcp.py +15 -9
  451. pulumiverse_scaleway/vpc_public_gateway_dhcp_reservation.py +32 -26
  452. pulumiverse_scaleway/vpc_public_gateway_ip.py +10 -4
  453. pulumiverse_scaleway/vpc_public_gateway_ip_reverse_dns.py +12 -6
  454. pulumiverse_scaleway/vpc_public_gateway_pat_rule.py +26 -20
  455. pulumiverse_scaleway/vpc_route.py +16 -10
  456. pulumiverse_scaleway/webhosting.py +10 -4
  457. {pulumiverse_scaleway-1.25.0a1742464679.dist-info → pulumiverse_scaleway-1.25.0a1742668904.dist-info}/METADATA +1 -1
  458. pulumiverse_scaleway-1.25.0a1742668904.dist-info/RECORD +470 -0
  459. {pulumiverse_scaleway-1.25.0a1742464679.dist-info → pulumiverse_scaleway-1.25.0a1742668904.dist-info}/WHEEL +1 -1
  460. pulumiverse_scaleway-1.25.0a1742464679.dist-info/RECORD +0 -206
  461. {pulumiverse_scaleway-1.25.0a1742464679.dist-info → pulumiverse_scaleway-1.25.0a1742668904.dist-info}/top_level.txt +0 -0
@@ -0,0 +1,791 @@
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__ = ['PublicGatewayArgs', 'PublicGateway']
18
+
19
+ @pulumi.input_type
20
+ class PublicGatewayArgs:
21
+ def __init__(__self__, *,
22
+ type: pulumi.Input[str],
23
+ bastion_enabled: Optional[pulumi.Input[bool]] = None,
24
+ bastion_port: Optional[pulumi.Input[int]] = None,
25
+ enable_smtp: Optional[pulumi.Input[bool]] = None,
26
+ ip_id: Optional[pulumi.Input[str]] = None,
27
+ name: Optional[pulumi.Input[str]] = None,
28
+ project_id: Optional[pulumi.Input[str]] = None,
29
+ refresh_ssh_keys: Optional[pulumi.Input[str]] = None,
30
+ tags: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
31
+ upstream_dns_servers: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
32
+ zone: Optional[pulumi.Input[str]] = None):
33
+ """
34
+ The set of arguments for constructing a PublicGateway resource.
35
+ :param pulumi.Input[str] type: The gateway type.
36
+ :param pulumi.Input[bool] bastion_enabled: Enable SSH bastion on the gateway.
37
+ :param pulumi.Input[int] bastion_port: The port on which the SSH bastion will listen.
38
+ :param pulumi.Input[bool] enable_smtp: Enable SMTP on the gateway.
39
+ :param pulumi.Input[str] ip_id: Attach an existing flexible IP to the gateway.
40
+ :param pulumi.Input[str] name: The name for the Public Gateway. If not provided it will be randomly generated.
41
+ :param pulumi.Input[str] project_id: `project_id`) The ID of the project the public gateway is associated with.
42
+ :param pulumi.Input[str] refresh_ssh_keys: Trigger a refresh of the SSH keys on the Public Gateway by changing this field's value.
43
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] tags: The tags to associate with the Public Gateway.
44
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] upstream_dns_servers: Override the gateway's default recursive DNS servers, if DNS features are enabled.
45
+ :param pulumi.Input[str] zone: `zone`) The zone in which the Public Gateway should be created.
46
+ """
47
+ pulumi.set(__self__, "type", type)
48
+ if bastion_enabled is not None:
49
+ pulumi.set(__self__, "bastion_enabled", bastion_enabled)
50
+ if bastion_port is not None:
51
+ pulumi.set(__self__, "bastion_port", bastion_port)
52
+ if enable_smtp is not None:
53
+ pulumi.set(__self__, "enable_smtp", enable_smtp)
54
+ if ip_id is not None:
55
+ pulumi.set(__self__, "ip_id", ip_id)
56
+ if name is not None:
57
+ pulumi.set(__self__, "name", name)
58
+ if project_id is not None:
59
+ pulumi.set(__self__, "project_id", project_id)
60
+ if refresh_ssh_keys is not None:
61
+ pulumi.set(__self__, "refresh_ssh_keys", refresh_ssh_keys)
62
+ if tags is not None:
63
+ pulumi.set(__self__, "tags", tags)
64
+ if upstream_dns_servers is not None:
65
+ pulumi.set(__self__, "upstream_dns_servers", upstream_dns_servers)
66
+ if zone is not None:
67
+ pulumi.set(__self__, "zone", zone)
68
+
69
+ @property
70
+ @pulumi.getter
71
+ def type(self) -> pulumi.Input[str]:
72
+ """
73
+ The gateway type.
74
+ """
75
+ return pulumi.get(self, "type")
76
+
77
+ @type.setter
78
+ def type(self, value: pulumi.Input[str]):
79
+ pulumi.set(self, "type", value)
80
+
81
+ @property
82
+ @pulumi.getter(name="bastionEnabled")
83
+ def bastion_enabled(self) -> Optional[pulumi.Input[bool]]:
84
+ """
85
+ Enable SSH bastion on the gateway.
86
+ """
87
+ return pulumi.get(self, "bastion_enabled")
88
+
89
+ @bastion_enabled.setter
90
+ def bastion_enabled(self, value: Optional[pulumi.Input[bool]]):
91
+ pulumi.set(self, "bastion_enabled", value)
92
+
93
+ @property
94
+ @pulumi.getter(name="bastionPort")
95
+ def bastion_port(self) -> Optional[pulumi.Input[int]]:
96
+ """
97
+ The port on which the SSH bastion will listen.
98
+ """
99
+ return pulumi.get(self, "bastion_port")
100
+
101
+ @bastion_port.setter
102
+ def bastion_port(self, value: Optional[pulumi.Input[int]]):
103
+ pulumi.set(self, "bastion_port", value)
104
+
105
+ @property
106
+ @pulumi.getter(name="enableSmtp")
107
+ def enable_smtp(self) -> Optional[pulumi.Input[bool]]:
108
+ """
109
+ Enable SMTP on the gateway.
110
+ """
111
+ return pulumi.get(self, "enable_smtp")
112
+
113
+ @enable_smtp.setter
114
+ def enable_smtp(self, value: Optional[pulumi.Input[bool]]):
115
+ pulumi.set(self, "enable_smtp", value)
116
+
117
+ @property
118
+ @pulumi.getter(name="ipId")
119
+ def ip_id(self) -> Optional[pulumi.Input[str]]:
120
+ """
121
+ Attach an existing flexible IP to the gateway.
122
+ """
123
+ return pulumi.get(self, "ip_id")
124
+
125
+ @ip_id.setter
126
+ def ip_id(self, value: Optional[pulumi.Input[str]]):
127
+ pulumi.set(self, "ip_id", value)
128
+
129
+ @property
130
+ @pulumi.getter
131
+ def name(self) -> Optional[pulumi.Input[str]]:
132
+ """
133
+ The name for the Public Gateway. If not provided it will be randomly generated.
134
+ """
135
+ return pulumi.get(self, "name")
136
+
137
+ @name.setter
138
+ def name(self, value: Optional[pulumi.Input[str]]):
139
+ pulumi.set(self, "name", value)
140
+
141
+ @property
142
+ @pulumi.getter(name="projectId")
143
+ def project_id(self) -> Optional[pulumi.Input[str]]:
144
+ """
145
+ `project_id`) The ID of the project the public gateway is associated with.
146
+ """
147
+ return pulumi.get(self, "project_id")
148
+
149
+ @project_id.setter
150
+ def project_id(self, value: Optional[pulumi.Input[str]]):
151
+ pulumi.set(self, "project_id", value)
152
+
153
+ @property
154
+ @pulumi.getter(name="refreshSshKeys")
155
+ def refresh_ssh_keys(self) -> Optional[pulumi.Input[str]]:
156
+ """
157
+ Trigger a refresh of the SSH keys on the Public Gateway by changing this field's value.
158
+ """
159
+ return pulumi.get(self, "refresh_ssh_keys")
160
+
161
+ @refresh_ssh_keys.setter
162
+ def refresh_ssh_keys(self, value: Optional[pulumi.Input[str]]):
163
+ pulumi.set(self, "refresh_ssh_keys", value)
164
+
165
+ @property
166
+ @pulumi.getter
167
+ def tags(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
168
+ """
169
+ The tags to associate with the Public Gateway.
170
+ """
171
+ return pulumi.get(self, "tags")
172
+
173
+ @tags.setter
174
+ def tags(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
175
+ pulumi.set(self, "tags", value)
176
+
177
+ @property
178
+ @pulumi.getter(name="upstreamDnsServers")
179
+ def upstream_dns_servers(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
180
+ """
181
+ Override the gateway's default recursive DNS servers, if DNS features are enabled.
182
+ """
183
+ return pulumi.get(self, "upstream_dns_servers")
184
+
185
+ @upstream_dns_servers.setter
186
+ def upstream_dns_servers(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
187
+ pulumi.set(self, "upstream_dns_servers", value)
188
+
189
+ @property
190
+ @pulumi.getter
191
+ def zone(self) -> Optional[pulumi.Input[str]]:
192
+ """
193
+ `zone`) The zone in which the Public Gateway should be created.
194
+ """
195
+ return pulumi.get(self, "zone")
196
+
197
+ @zone.setter
198
+ def zone(self, value: Optional[pulumi.Input[str]]):
199
+ pulumi.set(self, "zone", value)
200
+
201
+
202
+ @pulumi.input_type
203
+ class _PublicGatewayState:
204
+ def __init__(__self__, *,
205
+ bastion_enabled: Optional[pulumi.Input[bool]] = None,
206
+ bastion_port: Optional[pulumi.Input[int]] = None,
207
+ created_at: Optional[pulumi.Input[str]] = None,
208
+ enable_smtp: Optional[pulumi.Input[bool]] = None,
209
+ ip_id: Optional[pulumi.Input[str]] = None,
210
+ name: Optional[pulumi.Input[str]] = None,
211
+ organization_id: Optional[pulumi.Input[str]] = None,
212
+ project_id: Optional[pulumi.Input[str]] = None,
213
+ refresh_ssh_keys: Optional[pulumi.Input[str]] = None,
214
+ status: Optional[pulumi.Input[str]] = None,
215
+ tags: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
216
+ type: Optional[pulumi.Input[str]] = None,
217
+ updated_at: Optional[pulumi.Input[str]] = None,
218
+ upstream_dns_servers: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
219
+ zone: Optional[pulumi.Input[str]] = None):
220
+ """
221
+ Input properties used for looking up and filtering PublicGateway resources.
222
+ :param pulumi.Input[bool] bastion_enabled: Enable SSH bastion on the gateway.
223
+ :param pulumi.Input[int] bastion_port: The port on which the SSH bastion will listen.
224
+ :param pulumi.Input[str] created_at: The date and time of the creation of the Public Gateway.
225
+ :param pulumi.Input[bool] enable_smtp: Enable SMTP on the gateway.
226
+ :param pulumi.Input[str] ip_id: Attach an existing flexible IP to the gateway.
227
+ :param pulumi.Input[str] name: The name for the Public Gateway. If not provided it will be randomly generated.
228
+ :param pulumi.Input[str] organization_id: The Organization ID the Public Gateway is associated with.
229
+ :param pulumi.Input[str] project_id: `project_id`) The ID of the project the public gateway is associated with.
230
+ :param pulumi.Input[str] refresh_ssh_keys: Trigger a refresh of the SSH keys on the Public Gateway by changing this field's value.
231
+ :param pulumi.Input[str] status: The status of the public gateway.
232
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] tags: The tags to associate with the Public Gateway.
233
+ :param pulumi.Input[str] type: The gateway type.
234
+ :param pulumi.Input[str] updated_at: The date and time of the last update of the Public Gateway.
235
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] upstream_dns_servers: Override the gateway's default recursive DNS servers, if DNS features are enabled.
236
+ :param pulumi.Input[str] zone: `zone`) The zone in which the Public Gateway should be created.
237
+ """
238
+ if bastion_enabled is not None:
239
+ pulumi.set(__self__, "bastion_enabled", bastion_enabled)
240
+ if bastion_port is not None:
241
+ pulumi.set(__self__, "bastion_port", bastion_port)
242
+ if created_at is not None:
243
+ pulumi.set(__self__, "created_at", created_at)
244
+ if enable_smtp is not None:
245
+ pulumi.set(__self__, "enable_smtp", enable_smtp)
246
+ if ip_id is not None:
247
+ pulumi.set(__self__, "ip_id", ip_id)
248
+ if name is not None:
249
+ pulumi.set(__self__, "name", name)
250
+ if organization_id is not None:
251
+ pulumi.set(__self__, "organization_id", organization_id)
252
+ if project_id is not None:
253
+ pulumi.set(__self__, "project_id", project_id)
254
+ if refresh_ssh_keys is not None:
255
+ pulumi.set(__self__, "refresh_ssh_keys", refresh_ssh_keys)
256
+ if status is not None:
257
+ pulumi.set(__self__, "status", status)
258
+ if tags is not None:
259
+ pulumi.set(__self__, "tags", tags)
260
+ if type is not None:
261
+ pulumi.set(__self__, "type", type)
262
+ if updated_at is not None:
263
+ pulumi.set(__self__, "updated_at", updated_at)
264
+ if upstream_dns_servers is not None:
265
+ pulumi.set(__self__, "upstream_dns_servers", upstream_dns_servers)
266
+ if zone is not None:
267
+ pulumi.set(__self__, "zone", zone)
268
+
269
+ @property
270
+ @pulumi.getter(name="bastionEnabled")
271
+ def bastion_enabled(self) -> Optional[pulumi.Input[bool]]:
272
+ """
273
+ Enable SSH bastion on the gateway.
274
+ """
275
+ return pulumi.get(self, "bastion_enabled")
276
+
277
+ @bastion_enabled.setter
278
+ def bastion_enabled(self, value: Optional[pulumi.Input[bool]]):
279
+ pulumi.set(self, "bastion_enabled", value)
280
+
281
+ @property
282
+ @pulumi.getter(name="bastionPort")
283
+ def bastion_port(self) -> Optional[pulumi.Input[int]]:
284
+ """
285
+ The port on which the SSH bastion will listen.
286
+ """
287
+ return pulumi.get(self, "bastion_port")
288
+
289
+ @bastion_port.setter
290
+ def bastion_port(self, value: Optional[pulumi.Input[int]]):
291
+ pulumi.set(self, "bastion_port", value)
292
+
293
+ @property
294
+ @pulumi.getter(name="createdAt")
295
+ def created_at(self) -> Optional[pulumi.Input[str]]:
296
+ """
297
+ The date and time of the creation of the Public Gateway.
298
+ """
299
+ return pulumi.get(self, "created_at")
300
+
301
+ @created_at.setter
302
+ def created_at(self, value: Optional[pulumi.Input[str]]):
303
+ pulumi.set(self, "created_at", value)
304
+
305
+ @property
306
+ @pulumi.getter(name="enableSmtp")
307
+ def enable_smtp(self) -> Optional[pulumi.Input[bool]]:
308
+ """
309
+ Enable SMTP on the gateway.
310
+ """
311
+ return pulumi.get(self, "enable_smtp")
312
+
313
+ @enable_smtp.setter
314
+ def enable_smtp(self, value: Optional[pulumi.Input[bool]]):
315
+ pulumi.set(self, "enable_smtp", value)
316
+
317
+ @property
318
+ @pulumi.getter(name="ipId")
319
+ def ip_id(self) -> Optional[pulumi.Input[str]]:
320
+ """
321
+ Attach an existing flexible IP to the gateway.
322
+ """
323
+ return pulumi.get(self, "ip_id")
324
+
325
+ @ip_id.setter
326
+ def ip_id(self, value: Optional[pulumi.Input[str]]):
327
+ pulumi.set(self, "ip_id", value)
328
+
329
+ @property
330
+ @pulumi.getter
331
+ def name(self) -> Optional[pulumi.Input[str]]:
332
+ """
333
+ The name for the Public Gateway. If not provided it will be randomly generated.
334
+ """
335
+ return pulumi.get(self, "name")
336
+
337
+ @name.setter
338
+ def name(self, value: Optional[pulumi.Input[str]]):
339
+ pulumi.set(self, "name", value)
340
+
341
+ @property
342
+ @pulumi.getter(name="organizationId")
343
+ def organization_id(self) -> Optional[pulumi.Input[str]]:
344
+ """
345
+ The Organization ID the Public Gateway is associated with.
346
+ """
347
+ return pulumi.get(self, "organization_id")
348
+
349
+ @organization_id.setter
350
+ def organization_id(self, value: Optional[pulumi.Input[str]]):
351
+ pulumi.set(self, "organization_id", value)
352
+
353
+ @property
354
+ @pulumi.getter(name="projectId")
355
+ def project_id(self) -> Optional[pulumi.Input[str]]:
356
+ """
357
+ `project_id`) The ID of the project the public gateway is associated with.
358
+ """
359
+ return pulumi.get(self, "project_id")
360
+
361
+ @project_id.setter
362
+ def project_id(self, value: Optional[pulumi.Input[str]]):
363
+ pulumi.set(self, "project_id", value)
364
+
365
+ @property
366
+ @pulumi.getter(name="refreshSshKeys")
367
+ def refresh_ssh_keys(self) -> Optional[pulumi.Input[str]]:
368
+ """
369
+ Trigger a refresh of the SSH keys on the Public Gateway by changing this field's value.
370
+ """
371
+ return pulumi.get(self, "refresh_ssh_keys")
372
+
373
+ @refresh_ssh_keys.setter
374
+ def refresh_ssh_keys(self, value: Optional[pulumi.Input[str]]):
375
+ pulumi.set(self, "refresh_ssh_keys", value)
376
+
377
+ @property
378
+ @pulumi.getter
379
+ def status(self) -> Optional[pulumi.Input[str]]:
380
+ """
381
+ The status of the public gateway.
382
+ """
383
+ return pulumi.get(self, "status")
384
+
385
+ @status.setter
386
+ def status(self, value: Optional[pulumi.Input[str]]):
387
+ pulumi.set(self, "status", value)
388
+
389
+ @property
390
+ @pulumi.getter
391
+ def tags(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
392
+ """
393
+ The tags to associate with the Public Gateway.
394
+ """
395
+ return pulumi.get(self, "tags")
396
+
397
+ @tags.setter
398
+ def tags(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
399
+ pulumi.set(self, "tags", value)
400
+
401
+ @property
402
+ @pulumi.getter
403
+ def type(self) -> Optional[pulumi.Input[str]]:
404
+ """
405
+ The gateway type.
406
+ """
407
+ return pulumi.get(self, "type")
408
+
409
+ @type.setter
410
+ def type(self, value: Optional[pulumi.Input[str]]):
411
+ pulumi.set(self, "type", value)
412
+
413
+ @property
414
+ @pulumi.getter(name="updatedAt")
415
+ def updated_at(self) -> Optional[pulumi.Input[str]]:
416
+ """
417
+ The date and time of the last update of the Public Gateway.
418
+ """
419
+ return pulumi.get(self, "updated_at")
420
+
421
+ @updated_at.setter
422
+ def updated_at(self, value: Optional[pulumi.Input[str]]):
423
+ pulumi.set(self, "updated_at", value)
424
+
425
+ @property
426
+ @pulumi.getter(name="upstreamDnsServers")
427
+ def upstream_dns_servers(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
428
+ """
429
+ Override the gateway's default recursive DNS servers, if DNS features are enabled.
430
+ """
431
+ return pulumi.get(self, "upstream_dns_servers")
432
+
433
+ @upstream_dns_servers.setter
434
+ def upstream_dns_servers(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
435
+ pulumi.set(self, "upstream_dns_servers", value)
436
+
437
+ @property
438
+ @pulumi.getter
439
+ def zone(self) -> Optional[pulumi.Input[str]]:
440
+ """
441
+ `zone`) The zone in which the Public Gateway should be created.
442
+ """
443
+ return pulumi.get(self, "zone")
444
+
445
+ @zone.setter
446
+ def zone(self, value: Optional[pulumi.Input[str]]):
447
+ pulumi.set(self, "zone", value)
448
+
449
+
450
+ class PublicGateway(pulumi.CustomResource):
451
+ @overload
452
+ def __init__(__self__,
453
+ resource_name: str,
454
+ opts: Optional[pulumi.ResourceOptions] = None,
455
+ bastion_enabled: Optional[pulumi.Input[bool]] = None,
456
+ bastion_port: Optional[pulumi.Input[int]] = None,
457
+ enable_smtp: Optional[pulumi.Input[bool]] = None,
458
+ ip_id: Optional[pulumi.Input[str]] = None,
459
+ name: Optional[pulumi.Input[str]] = None,
460
+ project_id: Optional[pulumi.Input[str]] = None,
461
+ refresh_ssh_keys: Optional[pulumi.Input[str]] = None,
462
+ tags: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
463
+ type: Optional[pulumi.Input[str]] = None,
464
+ upstream_dns_servers: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
465
+ zone: Optional[pulumi.Input[str]] = None,
466
+ __props__=None):
467
+ """
468
+ Creates and manages Scaleway Public Gateways.
469
+ For more information, see the [API documentation](https://www.scaleway.com/en/developers/api/public-gateway).
470
+
471
+ ## Example Usage
472
+
473
+ ### Basic
474
+
475
+ ```python
476
+ import pulumi
477
+ import pulumiverse_scaleway as scaleway
478
+
479
+ main = scaleway.network.PublicGateway("main",
480
+ name="public_gateway_demo",
481
+ type="VPC-GW-S",
482
+ tags=[
483
+ "demo",
484
+ "terraform",
485
+ ])
486
+ ```
487
+
488
+ ## Import
489
+
490
+ Public Gateways can be imported using `{zone}/{id}`, e.g.
491
+
492
+ bash
493
+
494
+ ```sh
495
+ $ pulumi import scaleway:network/publicGateway:PublicGateway main fr-par-1/11111111-1111-1111-1111-111111111111
496
+ ```
497
+
498
+ :param str resource_name: The name of the resource.
499
+ :param pulumi.ResourceOptions opts: Options for the resource.
500
+ :param pulumi.Input[bool] bastion_enabled: Enable SSH bastion on the gateway.
501
+ :param pulumi.Input[int] bastion_port: The port on which the SSH bastion will listen.
502
+ :param pulumi.Input[bool] enable_smtp: Enable SMTP on the gateway.
503
+ :param pulumi.Input[str] ip_id: Attach an existing flexible IP to the gateway.
504
+ :param pulumi.Input[str] name: The name for the Public Gateway. If not provided it will be randomly generated.
505
+ :param pulumi.Input[str] project_id: `project_id`) The ID of the project the public gateway is associated with.
506
+ :param pulumi.Input[str] refresh_ssh_keys: Trigger a refresh of the SSH keys on the Public Gateway by changing this field's value.
507
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] tags: The tags to associate with the Public Gateway.
508
+ :param pulumi.Input[str] type: The gateway type.
509
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] upstream_dns_servers: Override the gateway's default recursive DNS servers, if DNS features are enabled.
510
+ :param pulumi.Input[str] zone: `zone`) The zone in which the Public Gateway should be created.
511
+ """
512
+ ...
513
+ @overload
514
+ def __init__(__self__,
515
+ resource_name: str,
516
+ args: PublicGatewayArgs,
517
+ opts: Optional[pulumi.ResourceOptions] = None):
518
+ """
519
+ Creates and manages Scaleway Public Gateways.
520
+ For more information, see the [API documentation](https://www.scaleway.com/en/developers/api/public-gateway).
521
+
522
+ ## Example Usage
523
+
524
+ ### Basic
525
+
526
+ ```python
527
+ import pulumi
528
+ import pulumiverse_scaleway as scaleway
529
+
530
+ main = scaleway.network.PublicGateway("main",
531
+ name="public_gateway_demo",
532
+ type="VPC-GW-S",
533
+ tags=[
534
+ "demo",
535
+ "terraform",
536
+ ])
537
+ ```
538
+
539
+ ## Import
540
+
541
+ Public Gateways can be imported using `{zone}/{id}`, e.g.
542
+
543
+ bash
544
+
545
+ ```sh
546
+ $ pulumi import scaleway:network/publicGateway:PublicGateway main fr-par-1/11111111-1111-1111-1111-111111111111
547
+ ```
548
+
549
+ :param str resource_name: The name of the resource.
550
+ :param PublicGatewayArgs args: The arguments to use to populate this resource's properties.
551
+ :param pulumi.ResourceOptions opts: Options for the resource.
552
+ """
553
+ ...
554
+ def __init__(__self__, resource_name: str, *args, **kwargs):
555
+ resource_args, opts = _utilities.get_resource_args_opts(PublicGatewayArgs, pulumi.ResourceOptions, *args, **kwargs)
556
+ if resource_args is not None:
557
+ __self__._internal_init(resource_name, opts, **resource_args.__dict__)
558
+ else:
559
+ __self__._internal_init(resource_name, *args, **kwargs)
560
+
561
+ def _internal_init(__self__,
562
+ resource_name: str,
563
+ opts: Optional[pulumi.ResourceOptions] = None,
564
+ bastion_enabled: Optional[pulumi.Input[bool]] = None,
565
+ bastion_port: Optional[pulumi.Input[int]] = None,
566
+ enable_smtp: Optional[pulumi.Input[bool]] = None,
567
+ ip_id: Optional[pulumi.Input[str]] = None,
568
+ name: Optional[pulumi.Input[str]] = None,
569
+ project_id: Optional[pulumi.Input[str]] = None,
570
+ refresh_ssh_keys: Optional[pulumi.Input[str]] = None,
571
+ tags: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
572
+ type: Optional[pulumi.Input[str]] = None,
573
+ upstream_dns_servers: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
574
+ zone: Optional[pulumi.Input[str]] = None,
575
+ __props__=None):
576
+ opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts)
577
+ if not isinstance(opts, pulumi.ResourceOptions):
578
+ raise TypeError('Expected resource options to be a ResourceOptions instance')
579
+ if opts.id is None:
580
+ if __props__ is not None:
581
+ raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource')
582
+ __props__ = PublicGatewayArgs.__new__(PublicGatewayArgs)
583
+
584
+ __props__.__dict__["bastion_enabled"] = bastion_enabled
585
+ __props__.__dict__["bastion_port"] = bastion_port
586
+ __props__.__dict__["enable_smtp"] = enable_smtp
587
+ __props__.__dict__["ip_id"] = ip_id
588
+ __props__.__dict__["name"] = name
589
+ __props__.__dict__["project_id"] = project_id
590
+ __props__.__dict__["refresh_ssh_keys"] = refresh_ssh_keys
591
+ __props__.__dict__["tags"] = tags
592
+ if type is None and not opts.urn:
593
+ raise TypeError("Missing required property 'type'")
594
+ __props__.__dict__["type"] = type
595
+ __props__.__dict__["upstream_dns_servers"] = upstream_dns_servers
596
+ __props__.__dict__["zone"] = zone
597
+ __props__.__dict__["created_at"] = None
598
+ __props__.__dict__["organization_id"] = None
599
+ __props__.__dict__["status"] = None
600
+ __props__.__dict__["updated_at"] = None
601
+ alias_opts = pulumi.ResourceOptions(aliases=[pulumi.Alias(type_="scaleway:index/vpcPublicGateway:VpcPublicGateway")])
602
+ opts = pulumi.ResourceOptions.merge(opts, alias_opts)
603
+ super(PublicGateway, __self__).__init__(
604
+ 'scaleway:network/publicGateway:PublicGateway',
605
+ resource_name,
606
+ __props__,
607
+ opts)
608
+
609
+ @staticmethod
610
+ def get(resource_name: str,
611
+ id: pulumi.Input[str],
612
+ opts: Optional[pulumi.ResourceOptions] = None,
613
+ bastion_enabled: Optional[pulumi.Input[bool]] = None,
614
+ bastion_port: Optional[pulumi.Input[int]] = None,
615
+ created_at: Optional[pulumi.Input[str]] = None,
616
+ enable_smtp: Optional[pulumi.Input[bool]] = None,
617
+ ip_id: Optional[pulumi.Input[str]] = None,
618
+ name: Optional[pulumi.Input[str]] = None,
619
+ organization_id: Optional[pulumi.Input[str]] = None,
620
+ project_id: Optional[pulumi.Input[str]] = None,
621
+ refresh_ssh_keys: Optional[pulumi.Input[str]] = None,
622
+ status: Optional[pulumi.Input[str]] = None,
623
+ tags: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
624
+ type: Optional[pulumi.Input[str]] = None,
625
+ updated_at: Optional[pulumi.Input[str]] = None,
626
+ upstream_dns_servers: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
627
+ zone: Optional[pulumi.Input[str]] = None) -> 'PublicGateway':
628
+ """
629
+ Get an existing PublicGateway resource's state with the given name, id, and optional extra
630
+ properties used to qualify the lookup.
631
+
632
+ :param str resource_name: The unique name of the resulting resource.
633
+ :param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
634
+ :param pulumi.ResourceOptions opts: Options for the resource.
635
+ :param pulumi.Input[bool] bastion_enabled: Enable SSH bastion on the gateway.
636
+ :param pulumi.Input[int] bastion_port: The port on which the SSH bastion will listen.
637
+ :param pulumi.Input[str] created_at: The date and time of the creation of the Public Gateway.
638
+ :param pulumi.Input[bool] enable_smtp: Enable SMTP on the gateway.
639
+ :param pulumi.Input[str] ip_id: Attach an existing flexible IP to the gateway.
640
+ :param pulumi.Input[str] name: The name for the Public Gateway. If not provided it will be randomly generated.
641
+ :param pulumi.Input[str] organization_id: The Organization ID the Public Gateway is associated with.
642
+ :param pulumi.Input[str] project_id: `project_id`) The ID of the project the public gateway is associated with.
643
+ :param pulumi.Input[str] refresh_ssh_keys: Trigger a refresh of the SSH keys on the Public Gateway by changing this field's value.
644
+ :param pulumi.Input[str] status: The status of the public gateway.
645
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] tags: The tags to associate with the Public Gateway.
646
+ :param pulumi.Input[str] type: The gateway type.
647
+ :param pulumi.Input[str] updated_at: The date and time of the last update of the Public Gateway.
648
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] upstream_dns_servers: Override the gateway's default recursive DNS servers, if DNS features are enabled.
649
+ :param pulumi.Input[str] zone: `zone`) The zone in which the Public Gateway should be created.
650
+ """
651
+ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
652
+
653
+ __props__ = _PublicGatewayState.__new__(_PublicGatewayState)
654
+
655
+ __props__.__dict__["bastion_enabled"] = bastion_enabled
656
+ __props__.__dict__["bastion_port"] = bastion_port
657
+ __props__.__dict__["created_at"] = created_at
658
+ __props__.__dict__["enable_smtp"] = enable_smtp
659
+ __props__.__dict__["ip_id"] = ip_id
660
+ __props__.__dict__["name"] = name
661
+ __props__.__dict__["organization_id"] = organization_id
662
+ __props__.__dict__["project_id"] = project_id
663
+ __props__.__dict__["refresh_ssh_keys"] = refresh_ssh_keys
664
+ __props__.__dict__["status"] = status
665
+ __props__.__dict__["tags"] = tags
666
+ __props__.__dict__["type"] = type
667
+ __props__.__dict__["updated_at"] = updated_at
668
+ __props__.__dict__["upstream_dns_servers"] = upstream_dns_servers
669
+ __props__.__dict__["zone"] = zone
670
+ return PublicGateway(resource_name, opts=opts, __props__=__props__)
671
+
672
+ @property
673
+ @pulumi.getter(name="bastionEnabled")
674
+ def bastion_enabled(self) -> pulumi.Output[Optional[bool]]:
675
+ """
676
+ Enable SSH bastion on the gateway.
677
+ """
678
+ return pulumi.get(self, "bastion_enabled")
679
+
680
+ @property
681
+ @pulumi.getter(name="bastionPort")
682
+ def bastion_port(self) -> pulumi.Output[int]:
683
+ """
684
+ The port on which the SSH bastion will listen.
685
+ """
686
+ return pulumi.get(self, "bastion_port")
687
+
688
+ @property
689
+ @pulumi.getter(name="createdAt")
690
+ def created_at(self) -> pulumi.Output[str]:
691
+ """
692
+ The date and time of the creation of the Public Gateway.
693
+ """
694
+ return pulumi.get(self, "created_at")
695
+
696
+ @property
697
+ @pulumi.getter(name="enableSmtp")
698
+ def enable_smtp(self) -> pulumi.Output[bool]:
699
+ """
700
+ Enable SMTP on the gateway.
701
+ """
702
+ return pulumi.get(self, "enable_smtp")
703
+
704
+ @property
705
+ @pulumi.getter(name="ipId")
706
+ def ip_id(self) -> pulumi.Output[str]:
707
+ """
708
+ Attach an existing flexible IP to the gateway.
709
+ """
710
+ return pulumi.get(self, "ip_id")
711
+
712
+ @property
713
+ @pulumi.getter
714
+ def name(self) -> pulumi.Output[str]:
715
+ """
716
+ The name for the Public Gateway. If not provided it will be randomly generated.
717
+ """
718
+ return pulumi.get(self, "name")
719
+
720
+ @property
721
+ @pulumi.getter(name="organizationId")
722
+ def organization_id(self) -> pulumi.Output[str]:
723
+ """
724
+ The Organization ID the Public Gateway is associated with.
725
+ """
726
+ return pulumi.get(self, "organization_id")
727
+
728
+ @property
729
+ @pulumi.getter(name="projectId")
730
+ def project_id(self) -> pulumi.Output[str]:
731
+ """
732
+ `project_id`) The ID of the project the public gateway is associated with.
733
+ """
734
+ return pulumi.get(self, "project_id")
735
+
736
+ @property
737
+ @pulumi.getter(name="refreshSshKeys")
738
+ def refresh_ssh_keys(self) -> pulumi.Output[Optional[str]]:
739
+ """
740
+ Trigger a refresh of the SSH keys on the Public Gateway by changing this field's value.
741
+ """
742
+ return pulumi.get(self, "refresh_ssh_keys")
743
+
744
+ @property
745
+ @pulumi.getter
746
+ def status(self) -> pulumi.Output[str]:
747
+ """
748
+ The status of the public gateway.
749
+ """
750
+ return pulumi.get(self, "status")
751
+
752
+ @property
753
+ @pulumi.getter
754
+ def tags(self) -> pulumi.Output[Optional[Sequence[str]]]:
755
+ """
756
+ The tags to associate with the Public Gateway.
757
+ """
758
+ return pulumi.get(self, "tags")
759
+
760
+ @property
761
+ @pulumi.getter
762
+ def type(self) -> pulumi.Output[str]:
763
+ """
764
+ The gateway type.
765
+ """
766
+ return pulumi.get(self, "type")
767
+
768
+ @property
769
+ @pulumi.getter(name="updatedAt")
770
+ def updated_at(self) -> pulumi.Output[str]:
771
+ """
772
+ The date and time of the last update of the Public Gateway.
773
+ """
774
+ return pulumi.get(self, "updated_at")
775
+
776
+ @property
777
+ @pulumi.getter(name="upstreamDnsServers")
778
+ def upstream_dns_servers(self) -> pulumi.Output[Optional[Sequence[str]]]:
779
+ """
780
+ Override the gateway's default recursive DNS servers, if DNS features are enabled.
781
+ """
782
+ return pulumi.get(self, "upstream_dns_servers")
783
+
784
+ @property
785
+ @pulumi.getter
786
+ def zone(self) -> pulumi.Output[str]:
787
+ """
788
+ `zone`) The zone in which the Public Gateway should be created.
789
+ """
790
+ return pulumi.get(self, "zone")
791
+