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