pulumiverse-scaleway 1.24.0a1741680905__py3-none-any.whl → 1.25.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.
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.24.0a1741680905.dist-info → pulumiverse_scaleway-1.25.0.dist-info}/METADATA +2 -2
  458. pulumiverse_scaleway-1.25.0.dist-info/RECORD +470 -0
  459. {pulumiverse_scaleway-1.24.0a1741680905.dist-info → pulumiverse_scaleway-1.25.0.dist-info}/WHEEL +1 -1
  460. pulumiverse_scaleway-1.24.0a1741680905.dist-info/RECORD +0 -206
  461. {pulumiverse_scaleway-1.24.0a1741680905.dist-info → pulumiverse_scaleway-1.25.0.dist-info}/top_level.txt +0 -0
@@ -0,0 +1,949 @@
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__ = ['PublicGatewayDhcpArgs', 'PublicGatewayDhcp']
18
+
19
+ @pulumi.input_type
20
+ class PublicGatewayDhcpArgs:
21
+ def __init__(__self__, *,
22
+ subnet: pulumi.Input[str],
23
+ address: Optional[pulumi.Input[str]] = None,
24
+ dns_local_name: Optional[pulumi.Input[str]] = None,
25
+ dns_searches: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
26
+ dns_servers_overrides: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
27
+ enable_dynamic: Optional[pulumi.Input[bool]] = None,
28
+ pool_high: Optional[pulumi.Input[str]] = None,
29
+ pool_low: Optional[pulumi.Input[str]] = None,
30
+ project_id: Optional[pulumi.Input[str]] = None,
31
+ push_default_route: Optional[pulumi.Input[bool]] = None,
32
+ push_dns_server: Optional[pulumi.Input[bool]] = None,
33
+ rebind_timer: Optional[pulumi.Input[int]] = None,
34
+ renew_timer: Optional[pulumi.Input[int]] = None,
35
+ valid_lifetime: Optional[pulumi.Input[int]] = None,
36
+ zone: Optional[pulumi.Input[str]] = None):
37
+ """
38
+ The set of arguments for constructing a PublicGatewayDhcp resource.
39
+ :param pulumi.Input[str] subnet: The subnet to associate with the Public Gateway DHCP configuration.
40
+ :param pulumi.Input[str] address: The IP address of the DHCP server. This will be the gateway's address in the Private Network.
41
+ :param pulumi.Input[str] dns_local_name: TLD given to hostnames in the Private Network. Allowed characters are `a-z0-9-.`. Defaults to the slugified Private Network name if created along a GatewayNetwork, or else to `priv`.
42
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] dns_searches: Additional DNS search paths
43
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] dns_servers_overrides: Override the DNS server list pushed to DHCP clients, instead of the gateway itself.
44
+ :param pulumi.Input[bool] enable_dynamic: Whether to enable dynamic pooling of IPs. By turning the dynamic pool off, only pre-existing DHCP reservations will be handed out. Defaults to `true`.
45
+ :param pulumi.Input[str] pool_high: High IP (excluded) of the dynamic address pool. Defaults to the last address of the subnet.
46
+ :param pulumi.Input[str] pool_low: Low IP (included) of the dynamic address pool. Defaults to the second address of the subnet.
47
+ :param pulumi.Input[str] project_id: `project_id`) The ID of the Project the Public Gateway DHCP configuration is associated with.
48
+ :param pulumi.Input[bool] push_default_route: Whether the gateway should push a default route to DHCP clients or only hand out IPs. Defaults to `true`.
49
+
50
+ > **Warning**: If you need to setup a default route, it's recommended to use the `network.GatewayNetwork` resource instead.
51
+ :param pulumi.Input[bool] push_dns_server: Whether the gateway should push custom DNS servers to clients. This allows for instance hostname > IP resolution. Defaults to `true`.
52
+ :param pulumi.Input[int] rebind_timer: After how long, in seconds, a DHCP client will query for a new lease if previous renews fail. Must be 30s lower than `valid_lifetime`. Defaults to 51m (3060s).
53
+ :param pulumi.Input[int] renew_timer: After how long, in seconds, a renewal will be attempted. Must be 30s lower than `rebind_timer`. Defaults to 50m (3000s).
54
+ :param pulumi.Input[int] valid_lifetime: How long, in seconds, DHCP entries will be valid. Defaults to 1h (3600s).
55
+ :param pulumi.Input[str] zone: `zone`) The zone in which the Public Gateway DHCP configuration should be created.
56
+ """
57
+ pulumi.set(__self__, "subnet", subnet)
58
+ if address is not None:
59
+ pulumi.set(__self__, "address", address)
60
+ if dns_local_name is not None:
61
+ pulumi.set(__self__, "dns_local_name", dns_local_name)
62
+ if dns_searches is not None:
63
+ pulumi.set(__self__, "dns_searches", dns_searches)
64
+ if dns_servers_overrides is not None:
65
+ pulumi.set(__self__, "dns_servers_overrides", dns_servers_overrides)
66
+ if enable_dynamic is not None:
67
+ pulumi.set(__self__, "enable_dynamic", enable_dynamic)
68
+ if pool_high is not None:
69
+ pulumi.set(__self__, "pool_high", pool_high)
70
+ if pool_low is not None:
71
+ pulumi.set(__self__, "pool_low", pool_low)
72
+ if project_id is not None:
73
+ pulumi.set(__self__, "project_id", project_id)
74
+ if push_default_route is not None:
75
+ pulumi.set(__self__, "push_default_route", push_default_route)
76
+ if push_dns_server is not None:
77
+ pulumi.set(__self__, "push_dns_server", push_dns_server)
78
+ if rebind_timer is not None:
79
+ pulumi.set(__self__, "rebind_timer", rebind_timer)
80
+ if renew_timer is not None:
81
+ pulumi.set(__self__, "renew_timer", renew_timer)
82
+ if valid_lifetime is not None:
83
+ pulumi.set(__self__, "valid_lifetime", valid_lifetime)
84
+ if zone is not None:
85
+ pulumi.set(__self__, "zone", zone)
86
+
87
+ @property
88
+ @pulumi.getter
89
+ def subnet(self) -> pulumi.Input[str]:
90
+ """
91
+ The subnet to associate with the Public Gateway DHCP configuration.
92
+ """
93
+ return pulumi.get(self, "subnet")
94
+
95
+ @subnet.setter
96
+ def subnet(self, value: pulumi.Input[str]):
97
+ pulumi.set(self, "subnet", value)
98
+
99
+ @property
100
+ @pulumi.getter
101
+ def address(self) -> Optional[pulumi.Input[str]]:
102
+ """
103
+ The IP address of the DHCP server. This will be the gateway's address in the Private Network.
104
+ """
105
+ return pulumi.get(self, "address")
106
+
107
+ @address.setter
108
+ def address(self, value: Optional[pulumi.Input[str]]):
109
+ pulumi.set(self, "address", value)
110
+
111
+ @property
112
+ @pulumi.getter(name="dnsLocalName")
113
+ def dns_local_name(self) -> Optional[pulumi.Input[str]]:
114
+ """
115
+ TLD given to hostnames in the Private Network. Allowed characters are `a-z0-9-.`. Defaults to the slugified Private Network name if created along a GatewayNetwork, or else to `priv`.
116
+ """
117
+ return pulumi.get(self, "dns_local_name")
118
+
119
+ @dns_local_name.setter
120
+ def dns_local_name(self, value: Optional[pulumi.Input[str]]):
121
+ pulumi.set(self, "dns_local_name", value)
122
+
123
+ @property
124
+ @pulumi.getter(name="dnsSearches")
125
+ def dns_searches(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
126
+ """
127
+ Additional DNS search paths
128
+ """
129
+ return pulumi.get(self, "dns_searches")
130
+
131
+ @dns_searches.setter
132
+ def dns_searches(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
133
+ pulumi.set(self, "dns_searches", value)
134
+
135
+ @property
136
+ @pulumi.getter(name="dnsServersOverrides")
137
+ def dns_servers_overrides(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
138
+ """
139
+ Override the DNS server list pushed to DHCP clients, instead of the gateway itself.
140
+ """
141
+ return pulumi.get(self, "dns_servers_overrides")
142
+
143
+ @dns_servers_overrides.setter
144
+ def dns_servers_overrides(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
145
+ pulumi.set(self, "dns_servers_overrides", value)
146
+
147
+ @property
148
+ @pulumi.getter(name="enableDynamic")
149
+ def enable_dynamic(self) -> Optional[pulumi.Input[bool]]:
150
+ """
151
+ Whether to enable dynamic pooling of IPs. By turning the dynamic pool off, only pre-existing DHCP reservations will be handed out. Defaults to `true`.
152
+ """
153
+ return pulumi.get(self, "enable_dynamic")
154
+
155
+ @enable_dynamic.setter
156
+ def enable_dynamic(self, value: Optional[pulumi.Input[bool]]):
157
+ pulumi.set(self, "enable_dynamic", value)
158
+
159
+ @property
160
+ @pulumi.getter(name="poolHigh")
161
+ def pool_high(self) -> Optional[pulumi.Input[str]]:
162
+ """
163
+ High IP (excluded) of the dynamic address pool. Defaults to the last address of the subnet.
164
+ """
165
+ return pulumi.get(self, "pool_high")
166
+
167
+ @pool_high.setter
168
+ def pool_high(self, value: Optional[pulumi.Input[str]]):
169
+ pulumi.set(self, "pool_high", value)
170
+
171
+ @property
172
+ @pulumi.getter(name="poolLow")
173
+ def pool_low(self) -> Optional[pulumi.Input[str]]:
174
+ """
175
+ Low IP (included) of the dynamic address pool. Defaults to the second address of the subnet.
176
+ """
177
+ return pulumi.get(self, "pool_low")
178
+
179
+ @pool_low.setter
180
+ def pool_low(self, value: Optional[pulumi.Input[str]]):
181
+ pulumi.set(self, "pool_low", value)
182
+
183
+ @property
184
+ @pulumi.getter(name="projectId")
185
+ def project_id(self) -> Optional[pulumi.Input[str]]:
186
+ """
187
+ `project_id`) The ID of the Project the Public Gateway DHCP configuration is associated with.
188
+ """
189
+ return pulumi.get(self, "project_id")
190
+
191
+ @project_id.setter
192
+ def project_id(self, value: Optional[pulumi.Input[str]]):
193
+ pulumi.set(self, "project_id", value)
194
+
195
+ @property
196
+ @pulumi.getter(name="pushDefaultRoute")
197
+ def push_default_route(self) -> Optional[pulumi.Input[bool]]:
198
+ """
199
+ Whether the gateway should push a default route to DHCP clients or only hand out IPs. Defaults to `true`.
200
+
201
+ > **Warning**: If you need to setup a default route, it's recommended to use the `network.GatewayNetwork` resource instead.
202
+ """
203
+ return pulumi.get(self, "push_default_route")
204
+
205
+ @push_default_route.setter
206
+ def push_default_route(self, value: Optional[pulumi.Input[bool]]):
207
+ pulumi.set(self, "push_default_route", value)
208
+
209
+ @property
210
+ @pulumi.getter(name="pushDnsServer")
211
+ def push_dns_server(self) -> Optional[pulumi.Input[bool]]:
212
+ """
213
+ Whether the gateway should push custom DNS servers to clients. This allows for instance hostname > IP resolution. Defaults to `true`.
214
+ """
215
+ return pulumi.get(self, "push_dns_server")
216
+
217
+ @push_dns_server.setter
218
+ def push_dns_server(self, value: Optional[pulumi.Input[bool]]):
219
+ pulumi.set(self, "push_dns_server", value)
220
+
221
+ @property
222
+ @pulumi.getter(name="rebindTimer")
223
+ def rebind_timer(self) -> Optional[pulumi.Input[int]]:
224
+ """
225
+ After how long, in seconds, a DHCP client will query for a new lease if previous renews fail. Must be 30s lower than `valid_lifetime`. Defaults to 51m (3060s).
226
+ """
227
+ return pulumi.get(self, "rebind_timer")
228
+
229
+ @rebind_timer.setter
230
+ def rebind_timer(self, value: Optional[pulumi.Input[int]]):
231
+ pulumi.set(self, "rebind_timer", value)
232
+
233
+ @property
234
+ @pulumi.getter(name="renewTimer")
235
+ def renew_timer(self) -> Optional[pulumi.Input[int]]:
236
+ """
237
+ After how long, in seconds, a renewal will be attempted. Must be 30s lower than `rebind_timer`. Defaults to 50m (3000s).
238
+ """
239
+ return pulumi.get(self, "renew_timer")
240
+
241
+ @renew_timer.setter
242
+ def renew_timer(self, value: Optional[pulumi.Input[int]]):
243
+ pulumi.set(self, "renew_timer", value)
244
+
245
+ @property
246
+ @pulumi.getter(name="validLifetime")
247
+ def valid_lifetime(self) -> Optional[pulumi.Input[int]]:
248
+ """
249
+ How long, in seconds, DHCP entries will be valid. Defaults to 1h (3600s).
250
+ """
251
+ return pulumi.get(self, "valid_lifetime")
252
+
253
+ @valid_lifetime.setter
254
+ def valid_lifetime(self, value: Optional[pulumi.Input[int]]):
255
+ pulumi.set(self, "valid_lifetime", value)
256
+
257
+ @property
258
+ @pulumi.getter
259
+ def zone(self) -> Optional[pulumi.Input[str]]:
260
+ """
261
+ `zone`) The zone in which the Public Gateway DHCP configuration should be created.
262
+ """
263
+ return pulumi.get(self, "zone")
264
+
265
+ @zone.setter
266
+ def zone(self, value: Optional[pulumi.Input[str]]):
267
+ pulumi.set(self, "zone", value)
268
+
269
+
270
+ @pulumi.input_type
271
+ class _PublicGatewayDhcpState:
272
+ def __init__(__self__, *,
273
+ address: Optional[pulumi.Input[str]] = None,
274
+ created_at: Optional[pulumi.Input[str]] = None,
275
+ dns_local_name: Optional[pulumi.Input[str]] = None,
276
+ dns_searches: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
277
+ dns_servers_overrides: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
278
+ enable_dynamic: Optional[pulumi.Input[bool]] = None,
279
+ organization_id: Optional[pulumi.Input[str]] = None,
280
+ pool_high: Optional[pulumi.Input[str]] = None,
281
+ pool_low: Optional[pulumi.Input[str]] = None,
282
+ project_id: Optional[pulumi.Input[str]] = None,
283
+ push_default_route: Optional[pulumi.Input[bool]] = None,
284
+ push_dns_server: Optional[pulumi.Input[bool]] = None,
285
+ rebind_timer: Optional[pulumi.Input[int]] = None,
286
+ renew_timer: Optional[pulumi.Input[int]] = None,
287
+ subnet: Optional[pulumi.Input[str]] = None,
288
+ updated_at: Optional[pulumi.Input[str]] = None,
289
+ valid_lifetime: Optional[pulumi.Input[int]] = None,
290
+ zone: Optional[pulumi.Input[str]] = None):
291
+ """
292
+ Input properties used for looking up and filtering PublicGatewayDhcp resources.
293
+ :param pulumi.Input[str] address: The IP address of the DHCP server. This will be the gateway's address in the Private Network.
294
+ :param pulumi.Input[str] created_at: The date and time of the creation of the Public Gateway DHCP configuration.
295
+ :param pulumi.Input[str] dns_local_name: TLD given to hostnames in the Private Network. Allowed characters are `a-z0-9-.`. Defaults to the slugified Private Network name if created along a GatewayNetwork, or else to `priv`.
296
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] dns_searches: Additional DNS search paths
297
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] dns_servers_overrides: Override the DNS server list pushed to DHCP clients, instead of the gateway itself.
298
+ :param pulumi.Input[bool] enable_dynamic: Whether to enable dynamic pooling of IPs. By turning the dynamic pool off, only pre-existing DHCP reservations will be handed out. Defaults to `true`.
299
+ :param pulumi.Input[str] organization_id: The Organization ID the Public Gateway DHCP config is associated with.
300
+ :param pulumi.Input[str] pool_high: High IP (excluded) of the dynamic address pool. Defaults to the last address of the subnet.
301
+ :param pulumi.Input[str] pool_low: Low IP (included) of the dynamic address pool. Defaults to the second address of the subnet.
302
+ :param pulumi.Input[str] project_id: `project_id`) The ID of the Project the Public Gateway DHCP configuration is associated with.
303
+ :param pulumi.Input[bool] push_default_route: Whether the gateway should push a default route to DHCP clients or only hand out IPs. Defaults to `true`.
304
+
305
+ > **Warning**: If you need to setup a default route, it's recommended to use the `network.GatewayNetwork` resource instead.
306
+ :param pulumi.Input[bool] push_dns_server: Whether the gateway should push custom DNS servers to clients. This allows for instance hostname > IP resolution. Defaults to `true`.
307
+ :param pulumi.Input[int] rebind_timer: After how long, in seconds, a DHCP client will query for a new lease if previous renews fail. Must be 30s lower than `valid_lifetime`. Defaults to 51m (3060s).
308
+ :param pulumi.Input[int] renew_timer: After how long, in seconds, a renewal will be attempted. Must be 30s lower than `rebind_timer`. Defaults to 50m (3000s).
309
+ :param pulumi.Input[str] subnet: The subnet to associate with the Public Gateway DHCP configuration.
310
+ :param pulumi.Input[str] updated_at: The date and time of the last update of the Public Gateway DHCP configuration.
311
+ :param pulumi.Input[int] valid_lifetime: How long, in seconds, DHCP entries will be valid. Defaults to 1h (3600s).
312
+ :param pulumi.Input[str] zone: `zone`) The zone in which the Public Gateway DHCP configuration should be created.
313
+ """
314
+ if address is not None:
315
+ pulumi.set(__self__, "address", address)
316
+ if created_at is not None:
317
+ pulumi.set(__self__, "created_at", created_at)
318
+ if dns_local_name is not None:
319
+ pulumi.set(__self__, "dns_local_name", dns_local_name)
320
+ if dns_searches is not None:
321
+ pulumi.set(__self__, "dns_searches", dns_searches)
322
+ if dns_servers_overrides is not None:
323
+ pulumi.set(__self__, "dns_servers_overrides", dns_servers_overrides)
324
+ if enable_dynamic is not None:
325
+ pulumi.set(__self__, "enable_dynamic", enable_dynamic)
326
+ if organization_id is not None:
327
+ pulumi.set(__self__, "organization_id", organization_id)
328
+ if pool_high is not None:
329
+ pulumi.set(__self__, "pool_high", pool_high)
330
+ if pool_low is not None:
331
+ pulumi.set(__self__, "pool_low", pool_low)
332
+ if project_id is not None:
333
+ pulumi.set(__self__, "project_id", project_id)
334
+ if push_default_route is not None:
335
+ pulumi.set(__self__, "push_default_route", push_default_route)
336
+ if push_dns_server is not None:
337
+ pulumi.set(__self__, "push_dns_server", push_dns_server)
338
+ if rebind_timer is not None:
339
+ pulumi.set(__self__, "rebind_timer", rebind_timer)
340
+ if renew_timer is not None:
341
+ pulumi.set(__self__, "renew_timer", renew_timer)
342
+ if subnet is not None:
343
+ pulumi.set(__self__, "subnet", subnet)
344
+ if updated_at is not None:
345
+ pulumi.set(__self__, "updated_at", updated_at)
346
+ if valid_lifetime is not None:
347
+ pulumi.set(__self__, "valid_lifetime", valid_lifetime)
348
+ if zone is not None:
349
+ pulumi.set(__self__, "zone", zone)
350
+
351
+ @property
352
+ @pulumi.getter
353
+ def address(self) -> Optional[pulumi.Input[str]]:
354
+ """
355
+ The IP address of the DHCP server. This will be the gateway's address in the Private Network.
356
+ """
357
+ return pulumi.get(self, "address")
358
+
359
+ @address.setter
360
+ def address(self, value: Optional[pulumi.Input[str]]):
361
+ pulumi.set(self, "address", value)
362
+
363
+ @property
364
+ @pulumi.getter(name="createdAt")
365
+ def created_at(self) -> Optional[pulumi.Input[str]]:
366
+ """
367
+ The date and time of the creation of the Public Gateway DHCP configuration.
368
+ """
369
+ return pulumi.get(self, "created_at")
370
+
371
+ @created_at.setter
372
+ def created_at(self, value: Optional[pulumi.Input[str]]):
373
+ pulumi.set(self, "created_at", value)
374
+
375
+ @property
376
+ @pulumi.getter(name="dnsLocalName")
377
+ def dns_local_name(self) -> Optional[pulumi.Input[str]]:
378
+ """
379
+ TLD given to hostnames in the Private Network. Allowed characters are `a-z0-9-.`. Defaults to the slugified Private Network name if created along a GatewayNetwork, or else to `priv`.
380
+ """
381
+ return pulumi.get(self, "dns_local_name")
382
+
383
+ @dns_local_name.setter
384
+ def dns_local_name(self, value: Optional[pulumi.Input[str]]):
385
+ pulumi.set(self, "dns_local_name", value)
386
+
387
+ @property
388
+ @pulumi.getter(name="dnsSearches")
389
+ def dns_searches(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
390
+ """
391
+ Additional DNS search paths
392
+ """
393
+ return pulumi.get(self, "dns_searches")
394
+
395
+ @dns_searches.setter
396
+ def dns_searches(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
397
+ pulumi.set(self, "dns_searches", value)
398
+
399
+ @property
400
+ @pulumi.getter(name="dnsServersOverrides")
401
+ def dns_servers_overrides(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
402
+ """
403
+ Override the DNS server list pushed to DHCP clients, instead of the gateway itself.
404
+ """
405
+ return pulumi.get(self, "dns_servers_overrides")
406
+
407
+ @dns_servers_overrides.setter
408
+ def dns_servers_overrides(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
409
+ pulumi.set(self, "dns_servers_overrides", value)
410
+
411
+ @property
412
+ @pulumi.getter(name="enableDynamic")
413
+ def enable_dynamic(self) -> Optional[pulumi.Input[bool]]:
414
+ """
415
+ Whether to enable dynamic pooling of IPs. By turning the dynamic pool off, only pre-existing DHCP reservations will be handed out. Defaults to `true`.
416
+ """
417
+ return pulumi.get(self, "enable_dynamic")
418
+
419
+ @enable_dynamic.setter
420
+ def enable_dynamic(self, value: Optional[pulumi.Input[bool]]):
421
+ pulumi.set(self, "enable_dynamic", value)
422
+
423
+ @property
424
+ @pulumi.getter(name="organizationId")
425
+ def organization_id(self) -> Optional[pulumi.Input[str]]:
426
+ """
427
+ The Organization ID the Public Gateway DHCP config is associated with.
428
+ """
429
+ return pulumi.get(self, "organization_id")
430
+
431
+ @organization_id.setter
432
+ def organization_id(self, value: Optional[pulumi.Input[str]]):
433
+ pulumi.set(self, "organization_id", value)
434
+
435
+ @property
436
+ @pulumi.getter(name="poolHigh")
437
+ def pool_high(self) -> Optional[pulumi.Input[str]]:
438
+ """
439
+ High IP (excluded) of the dynamic address pool. Defaults to the last address of the subnet.
440
+ """
441
+ return pulumi.get(self, "pool_high")
442
+
443
+ @pool_high.setter
444
+ def pool_high(self, value: Optional[pulumi.Input[str]]):
445
+ pulumi.set(self, "pool_high", value)
446
+
447
+ @property
448
+ @pulumi.getter(name="poolLow")
449
+ def pool_low(self) -> Optional[pulumi.Input[str]]:
450
+ """
451
+ Low IP (included) of the dynamic address pool. Defaults to the second address of the subnet.
452
+ """
453
+ return pulumi.get(self, "pool_low")
454
+
455
+ @pool_low.setter
456
+ def pool_low(self, value: Optional[pulumi.Input[str]]):
457
+ pulumi.set(self, "pool_low", value)
458
+
459
+ @property
460
+ @pulumi.getter(name="projectId")
461
+ def project_id(self) -> Optional[pulumi.Input[str]]:
462
+ """
463
+ `project_id`) The ID of the Project the Public Gateway DHCP configuration is associated with.
464
+ """
465
+ return pulumi.get(self, "project_id")
466
+
467
+ @project_id.setter
468
+ def project_id(self, value: Optional[pulumi.Input[str]]):
469
+ pulumi.set(self, "project_id", value)
470
+
471
+ @property
472
+ @pulumi.getter(name="pushDefaultRoute")
473
+ def push_default_route(self) -> Optional[pulumi.Input[bool]]:
474
+ """
475
+ Whether the gateway should push a default route to DHCP clients or only hand out IPs. Defaults to `true`.
476
+
477
+ > **Warning**: If you need to setup a default route, it's recommended to use the `network.GatewayNetwork` resource instead.
478
+ """
479
+ return pulumi.get(self, "push_default_route")
480
+
481
+ @push_default_route.setter
482
+ def push_default_route(self, value: Optional[pulumi.Input[bool]]):
483
+ pulumi.set(self, "push_default_route", value)
484
+
485
+ @property
486
+ @pulumi.getter(name="pushDnsServer")
487
+ def push_dns_server(self) -> Optional[pulumi.Input[bool]]:
488
+ """
489
+ Whether the gateway should push custom DNS servers to clients. This allows for instance hostname > IP resolution. Defaults to `true`.
490
+ """
491
+ return pulumi.get(self, "push_dns_server")
492
+
493
+ @push_dns_server.setter
494
+ def push_dns_server(self, value: Optional[pulumi.Input[bool]]):
495
+ pulumi.set(self, "push_dns_server", value)
496
+
497
+ @property
498
+ @pulumi.getter(name="rebindTimer")
499
+ def rebind_timer(self) -> Optional[pulumi.Input[int]]:
500
+ """
501
+ After how long, in seconds, a DHCP client will query for a new lease if previous renews fail. Must be 30s lower than `valid_lifetime`. Defaults to 51m (3060s).
502
+ """
503
+ return pulumi.get(self, "rebind_timer")
504
+
505
+ @rebind_timer.setter
506
+ def rebind_timer(self, value: Optional[pulumi.Input[int]]):
507
+ pulumi.set(self, "rebind_timer", value)
508
+
509
+ @property
510
+ @pulumi.getter(name="renewTimer")
511
+ def renew_timer(self) -> Optional[pulumi.Input[int]]:
512
+ """
513
+ After how long, in seconds, a renewal will be attempted. Must be 30s lower than `rebind_timer`. Defaults to 50m (3000s).
514
+ """
515
+ return pulumi.get(self, "renew_timer")
516
+
517
+ @renew_timer.setter
518
+ def renew_timer(self, value: Optional[pulumi.Input[int]]):
519
+ pulumi.set(self, "renew_timer", value)
520
+
521
+ @property
522
+ @pulumi.getter
523
+ def subnet(self) -> Optional[pulumi.Input[str]]:
524
+ """
525
+ The subnet to associate with the Public Gateway DHCP configuration.
526
+ """
527
+ return pulumi.get(self, "subnet")
528
+
529
+ @subnet.setter
530
+ def subnet(self, value: Optional[pulumi.Input[str]]):
531
+ pulumi.set(self, "subnet", value)
532
+
533
+ @property
534
+ @pulumi.getter(name="updatedAt")
535
+ def updated_at(self) -> Optional[pulumi.Input[str]]:
536
+ """
537
+ The date and time of the last update of the Public Gateway DHCP configuration.
538
+ """
539
+ return pulumi.get(self, "updated_at")
540
+
541
+ @updated_at.setter
542
+ def updated_at(self, value: Optional[pulumi.Input[str]]):
543
+ pulumi.set(self, "updated_at", value)
544
+
545
+ @property
546
+ @pulumi.getter(name="validLifetime")
547
+ def valid_lifetime(self) -> Optional[pulumi.Input[int]]:
548
+ """
549
+ How long, in seconds, DHCP entries will be valid. Defaults to 1h (3600s).
550
+ """
551
+ return pulumi.get(self, "valid_lifetime")
552
+
553
+ @valid_lifetime.setter
554
+ def valid_lifetime(self, value: Optional[pulumi.Input[int]]):
555
+ pulumi.set(self, "valid_lifetime", value)
556
+
557
+ @property
558
+ @pulumi.getter
559
+ def zone(self) -> Optional[pulumi.Input[str]]:
560
+ """
561
+ `zone`) The zone in which the Public Gateway DHCP configuration should be created.
562
+ """
563
+ return pulumi.get(self, "zone")
564
+
565
+ @zone.setter
566
+ def zone(self, value: Optional[pulumi.Input[str]]):
567
+ pulumi.set(self, "zone", value)
568
+
569
+
570
+ class PublicGatewayDhcp(pulumi.CustomResource):
571
+ @overload
572
+ def __init__(__self__,
573
+ resource_name: str,
574
+ opts: Optional[pulumi.ResourceOptions] = None,
575
+ address: Optional[pulumi.Input[str]] = None,
576
+ dns_local_name: Optional[pulumi.Input[str]] = None,
577
+ dns_searches: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
578
+ dns_servers_overrides: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
579
+ enable_dynamic: Optional[pulumi.Input[bool]] = None,
580
+ pool_high: Optional[pulumi.Input[str]] = None,
581
+ pool_low: Optional[pulumi.Input[str]] = None,
582
+ project_id: Optional[pulumi.Input[str]] = None,
583
+ push_default_route: Optional[pulumi.Input[bool]] = None,
584
+ push_dns_server: Optional[pulumi.Input[bool]] = None,
585
+ rebind_timer: Optional[pulumi.Input[int]] = None,
586
+ renew_timer: Optional[pulumi.Input[int]] = None,
587
+ subnet: Optional[pulumi.Input[str]] = None,
588
+ valid_lifetime: Optional[pulumi.Input[int]] = None,
589
+ zone: Optional[pulumi.Input[str]] = None,
590
+ __props__=None):
591
+ """
592
+ Creates and manages Scaleway VPC Public Gateway DHCP configurations.
593
+ For more information, see the [API documentation](https://www.scaleway.com/en/developers/api/public-gateway/#dhcp-c05544).
594
+
595
+ ## Example Usage
596
+
597
+ ```python
598
+ import pulumi
599
+ import pulumiverse_scaleway as scaleway
600
+
601
+ main = scaleway.network.PublicGatewayDhcp("main", subnet="192.168.1.0/24")
602
+ ```
603
+
604
+ ## Import
605
+
606
+ Public Gateway DHCP configuration can be imported using `{zone}/{id}`, e.g.
607
+
608
+ bash
609
+
610
+ ```sh
611
+ $ pulumi import scaleway:network/publicGatewayDhcp:PublicGatewayDhcp main fr-par-1/11111111-1111-1111-1111-111111111111
612
+ ```
613
+
614
+ :param str resource_name: The name of the resource.
615
+ :param pulumi.ResourceOptions opts: Options for the resource.
616
+ :param pulumi.Input[str] address: The IP address of the DHCP server. This will be the gateway's address in the Private Network.
617
+ :param pulumi.Input[str] dns_local_name: TLD given to hostnames in the Private Network. Allowed characters are `a-z0-9-.`. Defaults to the slugified Private Network name if created along a GatewayNetwork, or else to `priv`.
618
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] dns_searches: Additional DNS search paths
619
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] dns_servers_overrides: Override the DNS server list pushed to DHCP clients, instead of the gateway itself.
620
+ :param pulumi.Input[bool] enable_dynamic: Whether to enable dynamic pooling of IPs. By turning the dynamic pool off, only pre-existing DHCP reservations will be handed out. Defaults to `true`.
621
+ :param pulumi.Input[str] pool_high: High IP (excluded) of the dynamic address pool. Defaults to the last address of the subnet.
622
+ :param pulumi.Input[str] pool_low: Low IP (included) of the dynamic address pool. Defaults to the second address of the subnet.
623
+ :param pulumi.Input[str] project_id: `project_id`) The ID of the Project the Public Gateway DHCP configuration is associated with.
624
+ :param pulumi.Input[bool] push_default_route: Whether the gateway should push a default route to DHCP clients or only hand out IPs. Defaults to `true`.
625
+
626
+ > **Warning**: If you need to setup a default route, it's recommended to use the `network.GatewayNetwork` resource instead.
627
+ :param pulumi.Input[bool] push_dns_server: Whether the gateway should push custom DNS servers to clients. This allows for instance hostname > IP resolution. Defaults to `true`.
628
+ :param pulumi.Input[int] rebind_timer: After how long, in seconds, a DHCP client will query for a new lease if previous renews fail. Must be 30s lower than `valid_lifetime`. Defaults to 51m (3060s).
629
+ :param pulumi.Input[int] renew_timer: After how long, in seconds, a renewal will be attempted. Must be 30s lower than `rebind_timer`. Defaults to 50m (3000s).
630
+ :param pulumi.Input[str] subnet: The subnet to associate with the Public Gateway DHCP configuration.
631
+ :param pulumi.Input[int] valid_lifetime: How long, in seconds, DHCP entries will be valid. Defaults to 1h (3600s).
632
+ :param pulumi.Input[str] zone: `zone`) The zone in which the Public Gateway DHCP configuration should be created.
633
+ """
634
+ ...
635
+ @overload
636
+ def __init__(__self__,
637
+ resource_name: str,
638
+ args: PublicGatewayDhcpArgs,
639
+ opts: Optional[pulumi.ResourceOptions] = None):
640
+ """
641
+ Creates and manages Scaleway VPC Public Gateway DHCP configurations.
642
+ For more information, see the [API documentation](https://www.scaleway.com/en/developers/api/public-gateway/#dhcp-c05544).
643
+
644
+ ## Example Usage
645
+
646
+ ```python
647
+ import pulumi
648
+ import pulumiverse_scaleway as scaleway
649
+
650
+ main = scaleway.network.PublicGatewayDhcp("main", subnet="192.168.1.0/24")
651
+ ```
652
+
653
+ ## Import
654
+
655
+ Public Gateway DHCP configuration can be imported using `{zone}/{id}`, e.g.
656
+
657
+ bash
658
+
659
+ ```sh
660
+ $ pulumi import scaleway:network/publicGatewayDhcp:PublicGatewayDhcp main fr-par-1/11111111-1111-1111-1111-111111111111
661
+ ```
662
+
663
+ :param str resource_name: The name of the resource.
664
+ :param PublicGatewayDhcpArgs args: The arguments to use to populate this resource's properties.
665
+ :param pulumi.ResourceOptions opts: Options for the resource.
666
+ """
667
+ ...
668
+ def __init__(__self__, resource_name: str, *args, **kwargs):
669
+ resource_args, opts = _utilities.get_resource_args_opts(PublicGatewayDhcpArgs, pulumi.ResourceOptions, *args, **kwargs)
670
+ if resource_args is not None:
671
+ __self__._internal_init(resource_name, opts, **resource_args.__dict__)
672
+ else:
673
+ __self__._internal_init(resource_name, *args, **kwargs)
674
+
675
+ def _internal_init(__self__,
676
+ resource_name: str,
677
+ opts: Optional[pulumi.ResourceOptions] = None,
678
+ address: Optional[pulumi.Input[str]] = None,
679
+ dns_local_name: Optional[pulumi.Input[str]] = None,
680
+ dns_searches: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
681
+ dns_servers_overrides: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
682
+ enable_dynamic: Optional[pulumi.Input[bool]] = None,
683
+ pool_high: Optional[pulumi.Input[str]] = None,
684
+ pool_low: Optional[pulumi.Input[str]] = None,
685
+ project_id: Optional[pulumi.Input[str]] = None,
686
+ push_default_route: Optional[pulumi.Input[bool]] = None,
687
+ push_dns_server: Optional[pulumi.Input[bool]] = None,
688
+ rebind_timer: Optional[pulumi.Input[int]] = None,
689
+ renew_timer: Optional[pulumi.Input[int]] = None,
690
+ subnet: Optional[pulumi.Input[str]] = None,
691
+ valid_lifetime: Optional[pulumi.Input[int]] = None,
692
+ zone: Optional[pulumi.Input[str]] = None,
693
+ __props__=None):
694
+ opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts)
695
+ if not isinstance(opts, pulumi.ResourceOptions):
696
+ raise TypeError('Expected resource options to be a ResourceOptions instance')
697
+ if opts.id is None:
698
+ if __props__ is not None:
699
+ raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource')
700
+ __props__ = PublicGatewayDhcpArgs.__new__(PublicGatewayDhcpArgs)
701
+
702
+ __props__.__dict__["address"] = address
703
+ __props__.__dict__["dns_local_name"] = dns_local_name
704
+ __props__.__dict__["dns_searches"] = dns_searches
705
+ __props__.__dict__["dns_servers_overrides"] = dns_servers_overrides
706
+ __props__.__dict__["enable_dynamic"] = enable_dynamic
707
+ __props__.__dict__["pool_high"] = pool_high
708
+ __props__.__dict__["pool_low"] = pool_low
709
+ __props__.__dict__["project_id"] = project_id
710
+ __props__.__dict__["push_default_route"] = push_default_route
711
+ __props__.__dict__["push_dns_server"] = push_dns_server
712
+ __props__.__dict__["rebind_timer"] = rebind_timer
713
+ __props__.__dict__["renew_timer"] = renew_timer
714
+ if subnet is None and not opts.urn:
715
+ raise TypeError("Missing required property 'subnet'")
716
+ __props__.__dict__["subnet"] = subnet
717
+ __props__.__dict__["valid_lifetime"] = valid_lifetime
718
+ __props__.__dict__["zone"] = zone
719
+ __props__.__dict__["created_at"] = None
720
+ __props__.__dict__["organization_id"] = None
721
+ __props__.__dict__["updated_at"] = None
722
+ alias_opts = pulumi.ResourceOptions(aliases=[pulumi.Alias(type_="scaleway:index/vpcPublicGatewayDhcp:VpcPublicGatewayDhcp")])
723
+ opts = pulumi.ResourceOptions.merge(opts, alias_opts)
724
+ super(PublicGatewayDhcp, __self__).__init__(
725
+ 'scaleway:network/publicGatewayDhcp:PublicGatewayDhcp',
726
+ resource_name,
727
+ __props__,
728
+ opts)
729
+
730
+ @staticmethod
731
+ def get(resource_name: str,
732
+ id: pulumi.Input[str],
733
+ opts: Optional[pulumi.ResourceOptions] = None,
734
+ address: Optional[pulumi.Input[str]] = None,
735
+ created_at: Optional[pulumi.Input[str]] = None,
736
+ dns_local_name: Optional[pulumi.Input[str]] = None,
737
+ dns_searches: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
738
+ dns_servers_overrides: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
739
+ enable_dynamic: Optional[pulumi.Input[bool]] = None,
740
+ organization_id: Optional[pulumi.Input[str]] = None,
741
+ pool_high: Optional[pulumi.Input[str]] = None,
742
+ pool_low: Optional[pulumi.Input[str]] = None,
743
+ project_id: Optional[pulumi.Input[str]] = None,
744
+ push_default_route: Optional[pulumi.Input[bool]] = None,
745
+ push_dns_server: Optional[pulumi.Input[bool]] = None,
746
+ rebind_timer: Optional[pulumi.Input[int]] = None,
747
+ renew_timer: Optional[pulumi.Input[int]] = None,
748
+ subnet: Optional[pulumi.Input[str]] = None,
749
+ updated_at: Optional[pulumi.Input[str]] = None,
750
+ valid_lifetime: Optional[pulumi.Input[int]] = None,
751
+ zone: Optional[pulumi.Input[str]] = None) -> 'PublicGatewayDhcp':
752
+ """
753
+ Get an existing PublicGatewayDhcp resource's state with the given name, id, and optional extra
754
+ properties used to qualify the lookup.
755
+
756
+ :param str resource_name: The unique name of the resulting resource.
757
+ :param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
758
+ :param pulumi.ResourceOptions opts: Options for the resource.
759
+ :param pulumi.Input[str] address: The IP address of the DHCP server. This will be the gateway's address in the Private Network.
760
+ :param pulumi.Input[str] created_at: The date and time of the creation of the Public Gateway DHCP configuration.
761
+ :param pulumi.Input[str] dns_local_name: TLD given to hostnames in the Private Network. Allowed characters are `a-z0-9-.`. Defaults to the slugified Private Network name if created along a GatewayNetwork, or else to `priv`.
762
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] dns_searches: Additional DNS search paths
763
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] dns_servers_overrides: Override the DNS server list pushed to DHCP clients, instead of the gateway itself.
764
+ :param pulumi.Input[bool] enable_dynamic: Whether to enable dynamic pooling of IPs. By turning the dynamic pool off, only pre-existing DHCP reservations will be handed out. Defaults to `true`.
765
+ :param pulumi.Input[str] organization_id: The Organization ID the Public Gateway DHCP config is associated with.
766
+ :param pulumi.Input[str] pool_high: High IP (excluded) of the dynamic address pool. Defaults to the last address of the subnet.
767
+ :param pulumi.Input[str] pool_low: Low IP (included) of the dynamic address pool. Defaults to the second address of the subnet.
768
+ :param pulumi.Input[str] project_id: `project_id`) The ID of the Project the Public Gateway DHCP configuration is associated with.
769
+ :param pulumi.Input[bool] push_default_route: Whether the gateway should push a default route to DHCP clients or only hand out IPs. Defaults to `true`.
770
+
771
+ > **Warning**: If you need to setup a default route, it's recommended to use the `network.GatewayNetwork` resource instead.
772
+ :param pulumi.Input[bool] push_dns_server: Whether the gateway should push custom DNS servers to clients. This allows for instance hostname > IP resolution. Defaults to `true`.
773
+ :param pulumi.Input[int] rebind_timer: After how long, in seconds, a DHCP client will query for a new lease if previous renews fail. Must be 30s lower than `valid_lifetime`. Defaults to 51m (3060s).
774
+ :param pulumi.Input[int] renew_timer: After how long, in seconds, a renewal will be attempted. Must be 30s lower than `rebind_timer`. Defaults to 50m (3000s).
775
+ :param pulumi.Input[str] subnet: The subnet to associate with the Public Gateway DHCP configuration.
776
+ :param pulumi.Input[str] updated_at: The date and time of the last update of the Public Gateway DHCP configuration.
777
+ :param pulumi.Input[int] valid_lifetime: How long, in seconds, DHCP entries will be valid. Defaults to 1h (3600s).
778
+ :param pulumi.Input[str] zone: `zone`) The zone in which the Public Gateway DHCP configuration should be created.
779
+ """
780
+ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
781
+
782
+ __props__ = _PublicGatewayDhcpState.__new__(_PublicGatewayDhcpState)
783
+
784
+ __props__.__dict__["address"] = address
785
+ __props__.__dict__["created_at"] = created_at
786
+ __props__.__dict__["dns_local_name"] = dns_local_name
787
+ __props__.__dict__["dns_searches"] = dns_searches
788
+ __props__.__dict__["dns_servers_overrides"] = dns_servers_overrides
789
+ __props__.__dict__["enable_dynamic"] = enable_dynamic
790
+ __props__.__dict__["organization_id"] = organization_id
791
+ __props__.__dict__["pool_high"] = pool_high
792
+ __props__.__dict__["pool_low"] = pool_low
793
+ __props__.__dict__["project_id"] = project_id
794
+ __props__.__dict__["push_default_route"] = push_default_route
795
+ __props__.__dict__["push_dns_server"] = push_dns_server
796
+ __props__.__dict__["rebind_timer"] = rebind_timer
797
+ __props__.__dict__["renew_timer"] = renew_timer
798
+ __props__.__dict__["subnet"] = subnet
799
+ __props__.__dict__["updated_at"] = updated_at
800
+ __props__.__dict__["valid_lifetime"] = valid_lifetime
801
+ __props__.__dict__["zone"] = zone
802
+ return PublicGatewayDhcp(resource_name, opts=opts, __props__=__props__)
803
+
804
+ @property
805
+ @pulumi.getter
806
+ def address(self) -> pulumi.Output[str]:
807
+ """
808
+ The IP address of the DHCP server. This will be the gateway's address in the Private Network.
809
+ """
810
+ return pulumi.get(self, "address")
811
+
812
+ @property
813
+ @pulumi.getter(name="createdAt")
814
+ def created_at(self) -> pulumi.Output[str]:
815
+ """
816
+ The date and time of the creation of the Public Gateway DHCP configuration.
817
+ """
818
+ return pulumi.get(self, "created_at")
819
+
820
+ @property
821
+ @pulumi.getter(name="dnsLocalName")
822
+ def dns_local_name(self) -> pulumi.Output[str]:
823
+ """
824
+ TLD given to hostnames in the Private Network. Allowed characters are `a-z0-9-.`. Defaults to the slugified Private Network name if created along a GatewayNetwork, or else to `priv`.
825
+ """
826
+ return pulumi.get(self, "dns_local_name")
827
+
828
+ @property
829
+ @pulumi.getter(name="dnsSearches")
830
+ def dns_searches(self) -> pulumi.Output[Sequence[str]]:
831
+ """
832
+ Additional DNS search paths
833
+ """
834
+ return pulumi.get(self, "dns_searches")
835
+
836
+ @property
837
+ @pulumi.getter(name="dnsServersOverrides")
838
+ def dns_servers_overrides(self) -> pulumi.Output[Sequence[str]]:
839
+ """
840
+ Override the DNS server list pushed to DHCP clients, instead of the gateway itself.
841
+ """
842
+ return pulumi.get(self, "dns_servers_overrides")
843
+
844
+ @property
845
+ @pulumi.getter(name="enableDynamic")
846
+ def enable_dynamic(self) -> pulumi.Output[bool]:
847
+ """
848
+ Whether to enable dynamic pooling of IPs. By turning the dynamic pool off, only pre-existing DHCP reservations will be handed out. Defaults to `true`.
849
+ """
850
+ return pulumi.get(self, "enable_dynamic")
851
+
852
+ @property
853
+ @pulumi.getter(name="organizationId")
854
+ def organization_id(self) -> pulumi.Output[str]:
855
+ """
856
+ The Organization ID the Public Gateway DHCP config is associated with.
857
+ """
858
+ return pulumi.get(self, "organization_id")
859
+
860
+ @property
861
+ @pulumi.getter(name="poolHigh")
862
+ def pool_high(self) -> pulumi.Output[str]:
863
+ """
864
+ High IP (excluded) of the dynamic address pool. Defaults to the last address of the subnet.
865
+ """
866
+ return pulumi.get(self, "pool_high")
867
+
868
+ @property
869
+ @pulumi.getter(name="poolLow")
870
+ def pool_low(self) -> pulumi.Output[str]:
871
+ """
872
+ Low IP (included) of the dynamic address pool. Defaults to the second address of the subnet.
873
+ """
874
+ return pulumi.get(self, "pool_low")
875
+
876
+ @property
877
+ @pulumi.getter(name="projectId")
878
+ def project_id(self) -> pulumi.Output[str]:
879
+ """
880
+ `project_id`) The ID of the Project the Public Gateway DHCP configuration is associated with.
881
+ """
882
+ return pulumi.get(self, "project_id")
883
+
884
+ @property
885
+ @pulumi.getter(name="pushDefaultRoute")
886
+ def push_default_route(self) -> pulumi.Output[bool]:
887
+ """
888
+ Whether the gateway should push a default route to DHCP clients or only hand out IPs. Defaults to `true`.
889
+
890
+ > **Warning**: If you need to setup a default route, it's recommended to use the `network.GatewayNetwork` resource instead.
891
+ """
892
+ return pulumi.get(self, "push_default_route")
893
+
894
+ @property
895
+ @pulumi.getter(name="pushDnsServer")
896
+ def push_dns_server(self) -> pulumi.Output[bool]:
897
+ """
898
+ Whether the gateway should push custom DNS servers to clients. This allows for instance hostname > IP resolution. Defaults to `true`.
899
+ """
900
+ return pulumi.get(self, "push_dns_server")
901
+
902
+ @property
903
+ @pulumi.getter(name="rebindTimer")
904
+ def rebind_timer(self) -> pulumi.Output[int]:
905
+ """
906
+ After how long, in seconds, a DHCP client will query for a new lease if previous renews fail. Must be 30s lower than `valid_lifetime`. Defaults to 51m (3060s).
907
+ """
908
+ return pulumi.get(self, "rebind_timer")
909
+
910
+ @property
911
+ @pulumi.getter(name="renewTimer")
912
+ def renew_timer(self) -> pulumi.Output[int]:
913
+ """
914
+ After how long, in seconds, a renewal will be attempted. Must be 30s lower than `rebind_timer`. Defaults to 50m (3000s).
915
+ """
916
+ return pulumi.get(self, "renew_timer")
917
+
918
+ @property
919
+ @pulumi.getter
920
+ def subnet(self) -> pulumi.Output[str]:
921
+ """
922
+ The subnet to associate with the Public Gateway DHCP configuration.
923
+ """
924
+ return pulumi.get(self, "subnet")
925
+
926
+ @property
927
+ @pulumi.getter(name="updatedAt")
928
+ def updated_at(self) -> pulumi.Output[str]:
929
+ """
930
+ The date and time of the last update of the Public Gateway DHCP configuration.
931
+ """
932
+ return pulumi.get(self, "updated_at")
933
+
934
+ @property
935
+ @pulumi.getter(name="validLifetime")
936
+ def valid_lifetime(self) -> pulumi.Output[int]:
937
+ """
938
+ How long, in seconds, DHCP entries will be valid. Defaults to 1h (3600s).
939
+ """
940
+ return pulumi.get(self, "valid_lifetime")
941
+
942
+ @property
943
+ @pulumi.getter
944
+ def zone(self) -> pulumi.Output[str]:
945
+ """
946
+ `zone`) The zone in which the Public Gateway DHCP configuration should be created.
947
+ """
948
+ return pulumi.get(self, "zone")
949
+