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,340 @@
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
+
18
+ __all__ = [
19
+ 'GetRecordResult',
20
+ 'AwaitableGetRecordResult',
21
+ 'get_record',
22
+ 'get_record_output',
23
+ ]
24
+
25
+ @pulumi.output_type
26
+ class GetRecordResult:
27
+ """
28
+ A collection of values returned by getRecord.
29
+ """
30
+ def __init__(__self__, data=None, dns_zone=None, fqdn=None, geo_ips=None, http_services=None, id=None, keep_empty_zone=None, name=None, priority=None, project_id=None, record_id=None, root_zone=None, ttl=None, type=None, views=None, weighteds=None):
31
+ if data and not isinstance(data, str):
32
+ raise TypeError("Expected argument 'data' to be a str")
33
+ pulumi.set(__self__, "data", data)
34
+ if dns_zone and not isinstance(dns_zone, str):
35
+ raise TypeError("Expected argument 'dns_zone' to be a str")
36
+ pulumi.set(__self__, "dns_zone", dns_zone)
37
+ if fqdn and not isinstance(fqdn, str):
38
+ raise TypeError("Expected argument 'fqdn' to be a str")
39
+ pulumi.set(__self__, "fqdn", fqdn)
40
+ if geo_ips and not isinstance(geo_ips, list):
41
+ raise TypeError("Expected argument 'geo_ips' to be a list")
42
+ pulumi.set(__self__, "geo_ips", geo_ips)
43
+ if http_services and not isinstance(http_services, list):
44
+ raise TypeError("Expected argument 'http_services' to be a list")
45
+ pulumi.set(__self__, "http_services", http_services)
46
+ if id and not isinstance(id, str):
47
+ raise TypeError("Expected argument 'id' to be a str")
48
+ pulumi.set(__self__, "id", id)
49
+ if keep_empty_zone and not isinstance(keep_empty_zone, bool):
50
+ raise TypeError("Expected argument 'keep_empty_zone' to be a bool")
51
+ pulumi.set(__self__, "keep_empty_zone", keep_empty_zone)
52
+ if name and not isinstance(name, str):
53
+ raise TypeError("Expected argument 'name' to be a str")
54
+ pulumi.set(__self__, "name", name)
55
+ if priority and not isinstance(priority, int):
56
+ raise TypeError("Expected argument 'priority' to be a int")
57
+ pulumi.set(__self__, "priority", priority)
58
+ if project_id and not isinstance(project_id, str):
59
+ raise TypeError("Expected argument 'project_id' to be a str")
60
+ pulumi.set(__self__, "project_id", project_id)
61
+ if record_id and not isinstance(record_id, str):
62
+ raise TypeError("Expected argument 'record_id' to be a str")
63
+ pulumi.set(__self__, "record_id", record_id)
64
+ if root_zone and not isinstance(root_zone, bool):
65
+ raise TypeError("Expected argument 'root_zone' to be a bool")
66
+ pulumi.set(__self__, "root_zone", root_zone)
67
+ if ttl and not isinstance(ttl, int):
68
+ raise TypeError("Expected argument 'ttl' to be a int")
69
+ pulumi.set(__self__, "ttl", ttl)
70
+ if type and not isinstance(type, str):
71
+ raise TypeError("Expected argument 'type' to be a str")
72
+ pulumi.set(__self__, "type", type)
73
+ if views and not isinstance(views, list):
74
+ raise TypeError("Expected argument 'views' to be a list")
75
+ pulumi.set(__self__, "views", views)
76
+ if weighteds and not isinstance(weighteds, list):
77
+ raise TypeError("Expected argument 'weighteds' to be a list")
78
+ pulumi.set(__self__, "weighteds", weighteds)
79
+
80
+ @property
81
+ @pulumi.getter
82
+ def data(self) -> Optional[str]:
83
+ return pulumi.get(self, "data")
84
+
85
+ @property
86
+ @pulumi.getter(name="dnsZone")
87
+ def dns_zone(self) -> Optional[str]:
88
+ return pulumi.get(self, "dns_zone")
89
+
90
+ @property
91
+ @pulumi.getter
92
+ def fqdn(self) -> str:
93
+ return pulumi.get(self, "fqdn")
94
+
95
+ @property
96
+ @pulumi.getter(name="geoIps")
97
+ def geo_ips(self) -> Sequence['outputs.GetRecordGeoIpResult']:
98
+ """
99
+ Information about dynamic records based on user geolocation. Find out more about dynamic records.
100
+ """
101
+ return pulumi.get(self, "geo_ips")
102
+
103
+ @property
104
+ @pulumi.getter(name="httpServices")
105
+ def http_services(self) -> Sequence['outputs.GetRecordHttpServiceResult']:
106
+ """
107
+ Information about dynamic records based on URL resolution. Find out more about dynamic records.
108
+ """
109
+ return pulumi.get(self, "http_services")
110
+
111
+ @property
112
+ @pulumi.getter
113
+ def id(self) -> str:
114
+ """
115
+ The provider-assigned unique ID for this managed resource.
116
+ """
117
+ return pulumi.get(self, "id")
118
+
119
+ @property
120
+ @pulumi.getter(name="keepEmptyZone")
121
+ def keep_empty_zone(self) -> bool:
122
+ return pulumi.get(self, "keep_empty_zone")
123
+
124
+ @property
125
+ @pulumi.getter
126
+ def name(self) -> Optional[str]:
127
+ return pulumi.get(self, "name")
128
+
129
+ @property
130
+ @pulumi.getter
131
+ def priority(self) -> int:
132
+ """
133
+ The priority of the record, mainly used with `MX` records.
134
+ """
135
+ return pulumi.get(self, "priority")
136
+
137
+ @property
138
+ @pulumi.getter(name="projectId")
139
+ def project_id(self) -> Optional[str]:
140
+ return pulumi.get(self, "project_id")
141
+
142
+ @property
143
+ @pulumi.getter(name="recordId")
144
+ def record_id(self) -> Optional[str]:
145
+ return pulumi.get(self, "record_id")
146
+
147
+ @property
148
+ @pulumi.getter(name="rootZone")
149
+ def root_zone(self) -> bool:
150
+ return pulumi.get(self, "root_zone")
151
+
152
+ @property
153
+ @pulumi.getter
154
+ def ttl(self) -> int:
155
+ """
156
+ The Time To Live (TTL) of the record in seconds.
157
+ """
158
+ return pulumi.get(self, "ttl")
159
+
160
+ @property
161
+ @pulumi.getter
162
+ def type(self) -> Optional[str]:
163
+ return pulumi.get(self, "type")
164
+
165
+ @property
166
+ @pulumi.getter
167
+ def views(self) -> Sequence['outputs.GetRecordViewResult']:
168
+ """
169
+ Information about dynamic records based on the client’s (resolver) subnet. Find out more about dynamic records.
170
+ """
171
+ return pulumi.get(self, "views")
172
+
173
+ @property
174
+ @pulumi.getter
175
+ def weighteds(self) -> Sequence['outputs.GetRecordWeightedResult']:
176
+ """
177
+ Information about dynamic records based on IP weights. Find out more about dynamic records.
178
+ """
179
+ return pulumi.get(self, "weighteds")
180
+
181
+
182
+ class AwaitableGetRecordResult(GetRecordResult):
183
+ # pylint: disable=using-constant-test
184
+ def __await__(self):
185
+ if False:
186
+ yield self
187
+ return GetRecordResult(
188
+ data=self.data,
189
+ dns_zone=self.dns_zone,
190
+ fqdn=self.fqdn,
191
+ geo_ips=self.geo_ips,
192
+ http_services=self.http_services,
193
+ id=self.id,
194
+ keep_empty_zone=self.keep_empty_zone,
195
+ name=self.name,
196
+ priority=self.priority,
197
+ project_id=self.project_id,
198
+ record_id=self.record_id,
199
+ root_zone=self.root_zone,
200
+ ttl=self.ttl,
201
+ type=self.type,
202
+ views=self.views,
203
+ weighteds=self.weighteds)
204
+
205
+
206
+ def get_record(data: Optional[str] = None,
207
+ dns_zone: Optional[str] = None,
208
+ name: Optional[str] = None,
209
+ project_id: Optional[str] = None,
210
+ record_id: Optional[str] = None,
211
+ type: Optional[str] = None,
212
+ opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetRecordResult:
213
+ """
214
+ The `domain.Record` data source is used to get information about an existing domain record.
215
+
216
+ Refer to the Domains and DNS [product documentation](https://www.scaleway.com/en/docs/network/domains-and-dns/) and [API documentation](https://www.scaleway.com/en/developers/api/domains-and-dns/) for more information.
217
+
218
+ ## Query domain records
219
+
220
+ The following commands allow you to:
221
+
222
+ - query a domain record specified by the DNS zone (`domain.tld`), the record name (`www`), the record type (`A`), and the record content (`1.2.3.4`).
223
+ - query a domain record specified by the DNS zone (`domain.tld`) and the unique record ID (`11111111-1111-1111-1111-111111111111`).
224
+
225
+ ```python
226
+ import pulumi
227
+ import pulumi_scaleway as scaleway
228
+
229
+ # Query record by DNS zone, record name, type and content
230
+ by_content = scaleway.domain.get_record(dns_zone="domain.tld",
231
+ name="www",
232
+ type="A",
233
+ data="1.2.3.4")
234
+ # Query record by DNS zone and record ID
235
+ by_id = scaleway.domain.get_record(dns_zone="domain.tld",
236
+ record_id="11111111-1111-1111-1111-111111111111")
237
+ ```
238
+
239
+
240
+ :param str data: The content of the record (e.g., an IPv4 address for an `A` record or a string for a `TXT` record). Cannot be used with `record_id`.
241
+ :param str dns_zone: The DNS zone (domain) to which the record belongs. This is a required field in both examples above but is optional in the context of defining the data source.
242
+ :param str name: The name of the record, which can be an empty string for a root record. Cannot be used with `record_id`.
243
+ :param str project_id: ). The ID of the Project associated with the domain.
244
+ :param str record_id: The unique identifier of the record. Cannot be used with `name`, `type`, and `data`.
245
+ :param str type: The type of the record (`A`, `AAAA`, `MX`, `CNAME`, etc.). Cannot be used with `record_id`.
246
+ """
247
+ __args__ = dict()
248
+ __args__['data'] = data
249
+ __args__['dnsZone'] = dns_zone
250
+ __args__['name'] = name
251
+ __args__['projectId'] = project_id
252
+ __args__['recordId'] = record_id
253
+ __args__['type'] = type
254
+ opts = pulumi.InvokeOptions.merge(_utilities.get_invoke_opts_defaults(), opts)
255
+ __ret__ = pulumi.runtime.invoke('scaleway:domain/getRecord:getRecord', __args__, opts=opts, typ=GetRecordResult).value
256
+
257
+ return AwaitableGetRecordResult(
258
+ data=pulumi.get(__ret__, 'data'),
259
+ dns_zone=pulumi.get(__ret__, 'dns_zone'),
260
+ fqdn=pulumi.get(__ret__, 'fqdn'),
261
+ geo_ips=pulumi.get(__ret__, 'geo_ips'),
262
+ http_services=pulumi.get(__ret__, 'http_services'),
263
+ id=pulumi.get(__ret__, 'id'),
264
+ keep_empty_zone=pulumi.get(__ret__, 'keep_empty_zone'),
265
+ name=pulumi.get(__ret__, 'name'),
266
+ priority=pulumi.get(__ret__, 'priority'),
267
+ project_id=pulumi.get(__ret__, 'project_id'),
268
+ record_id=pulumi.get(__ret__, 'record_id'),
269
+ root_zone=pulumi.get(__ret__, 'root_zone'),
270
+ ttl=pulumi.get(__ret__, 'ttl'),
271
+ type=pulumi.get(__ret__, 'type'),
272
+ views=pulumi.get(__ret__, 'views'),
273
+ weighteds=pulumi.get(__ret__, 'weighteds'))
274
+ def get_record_output(data: Optional[pulumi.Input[Optional[str]]] = None,
275
+ dns_zone: Optional[pulumi.Input[Optional[str]]] = None,
276
+ name: Optional[pulumi.Input[Optional[str]]] = None,
277
+ project_id: Optional[pulumi.Input[Optional[str]]] = None,
278
+ record_id: Optional[pulumi.Input[Optional[str]]] = None,
279
+ type: Optional[pulumi.Input[Optional[str]]] = None,
280
+ opts: Optional[Union[pulumi.InvokeOptions, pulumi.InvokeOutputOptions]] = None) -> pulumi.Output[GetRecordResult]:
281
+ """
282
+ The `domain.Record` data source is used to get information about an existing domain record.
283
+
284
+ Refer to the Domains and DNS [product documentation](https://www.scaleway.com/en/docs/network/domains-and-dns/) and [API documentation](https://www.scaleway.com/en/developers/api/domains-and-dns/) for more information.
285
+
286
+ ## Query domain records
287
+
288
+ The following commands allow you to:
289
+
290
+ - query a domain record specified by the DNS zone (`domain.tld`), the record name (`www`), the record type (`A`), and the record content (`1.2.3.4`).
291
+ - query a domain record specified by the DNS zone (`domain.tld`) and the unique record ID (`11111111-1111-1111-1111-111111111111`).
292
+
293
+ ```python
294
+ import pulumi
295
+ import pulumi_scaleway as scaleway
296
+
297
+ # Query record by DNS zone, record name, type and content
298
+ by_content = scaleway.domain.get_record(dns_zone="domain.tld",
299
+ name="www",
300
+ type="A",
301
+ data="1.2.3.4")
302
+ # Query record by DNS zone and record ID
303
+ by_id = scaleway.domain.get_record(dns_zone="domain.tld",
304
+ record_id="11111111-1111-1111-1111-111111111111")
305
+ ```
306
+
307
+
308
+ :param str data: The content of the record (e.g., an IPv4 address for an `A` record or a string for a `TXT` record). Cannot be used with `record_id`.
309
+ :param str dns_zone: The DNS zone (domain) to which the record belongs. This is a required field in both examples above but is optional in the context of defining the data source.
310
+ :param str name: The name of the record, which can be an empty string for a root record. Cannot be used with `record_id`.
311
+ :param str project_id: ). The ID of the Project associated with the domain.
312
+ :param str record_id: The unique identifier of the record. Cannot be used with `name`, `type`, and `data`.
313
+ :param str type: The type of the record (`A`, `AAAA`, `MX`, `CNAME`, etc.). Cannot be used with `record_id`.
314
+ """
315
+ __args__ = dict()
316
+ __args__['data'] = data
317
+ __args__['dnsZone'] = dns_zone
318
+ __args__['name'] = name
319
+ __args__['projectId'] = project_id
320
+ __args__['recordId'] = record_id
321
+ __args__['type'] = type
322
+ opts = pulumi.InvokeOutputOptions.merge(_utilities.get_invoke_opts_defaults(), opts)
323
+ __ret__ = pulumi.runtime.invoke_output('scaleway:domain/getRecord:getRecord', __args__, opts=opts, typ=GetRecordResult)
324
+ return __ret__.apply(lambda __response__: GetRecordResult(
325
+ data=pulumi.get(__response__, 'data'),
326
+ dns_zone=pulumi.get(__response__, 'dns_zone'),
327
+ fqdn=pulumi.get(__response__, 'fqdn'),
328
+ geo_ips=pulumi.get(__response__, 'geo_ips'),
329
+ http_services=pulumi.get(__response__, 'http_services'),
330
+ id=pulumi.get(__response__, 'id'),
331
+ keep_empty_zone=pulumi.get(__response__, 'keep_empty_zone'),
332
+ name=pulumi.get(__response__, 'name'),
333
+ priority=pulumi.get(__response__, 'priority'),
334
+ project_id=pulumi.get(__response__, 'project_id'),
335
+ record_id=pulumi.get(__response__, 'record_id'),
336
+ root_zone=pulumi.get(__response__, 'root_zone'),
337
+ ttl=pulumi.get(__response__, 'ttl'),
338
+ type=pulumi.get(__response__, 'type'),
339
+ views=pulumi.get(__response__, 'views'),
340
+ weighteds=pulumi.get(__response__, 'weighteds')))
@@ -0,0 +1,201 @@
1
+ # coding=utf-8
2
+ # *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. ***
3
+ # *** Do not edit by hand unless you're certain you know what you are doing! ***
4
+
5
+ import copy
6
+ import warnings
7
+ import sys
8
+ import pulumi
9
+ import pulumi.runtime
10
+ from typing import Any, Mapping, Optional, Sequence, Union, overload
11
+ if sys.version_info >= (3, 11):
12
+ from typing import NotRequired, TypedDict, TypeAlias
13
+ else:
14
+ from typing_extensions import NotRequired, TypedDict, TypeAlias
15
+ from .. import _utilities
16
+
17
+ __all__ = [
18
+ 'GetZoneResult',
19
+ 'AwaitableGetZoneResult',
20
+ 'get_zone',
21
+ 'get_zone_output',
22
+ ]
23
+
24
+ @pulumi.output_type
25
+ class GetZoneResult:
26
+ """
27
+ A collection of values returned by getZone.
28
+ """
29
+ def __init__(__self__, domain=None, id=None, message=None, ns=None, ns_defaults=None, ns_masters=None, project_id=None, status=None, subdomain=None, updated_at=None):
30
+ if domain and not isinstance(domain, str):
31
+ raise TypeError("Expected argument 'domain' to be a str")
32
+ pulumi.set(__self__, "domain", domain)
33
+ if id and not isinstance(id, str):
34
+ raise TypeError("Expected argument 'id' to be a str")
35
+ pulumi.set(__self__, "id", id)
36
+ if message and not isinstance(message, str):
37
+ raise TypeError("Expected argument 'message' to be a str")
38
+ pulumi.set(__self__, "message", message)
39
+ if ns and not isinstance(ns, list):
40
+ raise TypeError("Expected argument 'ns' to be a list")
41
+ pulumi.set(__self__, "ns", ns)
42
+ if ns_defaults and not isinstance(ns_defaults, list):
43
+ raise TypeError("Expected argument 'ns_defaults' to be a list")
44
+ pulumi.set(__self__, "ns_defaults", ns_defaults)
45
+ if ns_masters and not isinstance(ns_masters, list):
46
+ raise TypeError("Expected argument 'ns_masters' to be a list")
47
+ pulumi.set(__self__, "ns_masters", ns_masters)
48
+ if project_id and not isinstance(project_id, str):
49
+ raise TypeError("Expected argument 'project_id' to be a str")
50
+ pulumi.set(__self__, "project_id", project_id)
51
+ if status and not isinstance(status, str):
52
+ raise TypeError("Expected argument 'status' to be a str")
53
+ pulumi.set(__self__, "status", status)
54
+ if subdomain and not isinstance(subdomain, str):
55
+ raise TypeError("Expected argument 'subdomain' to be a str")
56
+ pulumi.set(__self__, "subdomain", subdomain)
57
+ if updated_at and not isinstance(updated_at, str):
58
+ raise TypeError("Expected argument 'updated_at' to be a str")
59
+ pulumi.set(__self__, "updated_at", updated_at)
60
+
61
+ @property
62
+ @pulumi.getter
63
+ def domain(self) -> Optional[str]:
64
+ return pulumi.get(self, "domain")
65
+
66
+ @property
67
+ @pulumi.getter
68
+ def id(self) -> str:
69
+ """
70
+ The provider-assigned unique ID for this managed resource.
71
+ """
72
+ return pulumi.get(self, "id")
73
+
74
+ @property
75
+ @pulumi.getter
76
+ def message(self) -> str:
77
+ """
78
+ Message associated with the domain zone (typically used for status or error messages).
79
+ """
80
+ return pulumi.get(self, "message")
81
+
82
+ @property
83
+ @pulumi.getter
84
+ def ns(self) -> Sequence[str]:
85
+ """
86
+ The list of name servers for the zone.
87
+ """
88
+ return pulumi.get(self, "ns")
89
+
90
+ @property
91
+ @pulumi.getter(name="nsDefaults")
92
+ def ns_defaults(self) -> Sequence[str]:
93
+ """
94
+ The default list of name servers for the zone.
95
+ """
96
+ return pulumi.get(self, "ns_defaults")
97
+
98
+ @property
99
+ @pulumi.getter(name="nsMasters")
100
+ def ns_masters(self) -> Sequence[str]:
101
+ """
102
+ The master list of name servers for the zone.
103
+ """
104
+ return pulumi.get(self, "ns_masters")
105
+
106
+ @property
107
+ @pulumi.getter(name="projectId")
108
+ def project_id(self) -> str:
109
+ return pulumi.get(self, "project_id")
110
+
111
+ @property
112
+ @pulumi.getter
113
+ def status(self) -> str:
114
+ """
115
+ The status of the domain zone.
116
+ """
117
+ return pulumi.get(self, "status")
118
+
119
+ @property
120
+ @pulumi.getter
121
+ def subdomain(self) -> Optional[str]:
122
+ return pulumi.get(self, "subdomain")
123
+
124
+ @property
125
+ @pulumi.getter(name="updatedAt")
126
+ def updated_at(self) -> str:
127
+ """
128
+ The date and time of the last update to the DNS zone.
129
+ """
130
+ return pulumi.get(self, "updated_at")
131
+
132
+
133
+ class AwaitableGetZoneResult(GetZoneResult):
134
+ # pylint: disable=using-constant-test
135
+ def __await__(self):
136
+ if False:
137
+ yield self
138
+ return GetZoneResult(
139
+ domain=self.domain,
140
+ id=self.id,
141
+ message=self.message,
142
+ ns=self.ns,
143
+ ns_defaults=self.ns_defaults,
144
+ ns_masters=self.ns_masters,
145
+ project_id=self.project_id,
146
+ status=self.status,
147
+ subdomain=self.subdomain,
148
+ updated_at=self.updated_at)
149
+
150
+
151
+ def get_zone(domain: Optional[str] = None,
152
+ subdomain: Optional[str] = None,
153
+ opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetZoneResult:
154
+ """
155
+ Use this data source to access information about an existing resource.
156
+
157
+ :param str domain: The primary domain name where the DNS zone is located. This is a mandatory field.
158
+ :param str subdomain: The subdomain (or zone name) within the primary domain. This is a mandatory field.
159
+ """
160
+ __args__ = dict()
161
+ __args__['domain'] = domain
162
+ __args__['subdomain'] = subdomain
163
+ opts = pulumi.InvokeOptions.merge(_utilities.get_invoke_opts_defaults(), opts)
164
+ __ret__ = pulumi.runtime.invoke('scaleway:domain/getZone:getZone', __args__, opts=opts, typ=GetZoneResult).value
165
+
166
+ return AwaitableGetZoneResult(
167
+ domain=pulumi.get(__ret__, 'domain'),
168
+ id=pulumi.get(__ret__, 'id'),
169
+ message=pulumi.get(__ret__, 'message'),
170
+ ns=pulumi.get(__ret__, 'ns'),
171
+ ns_defaults=pulumi.get(__ret__, 'ns_defaults'),
172
+ ns_masters=pulumi.get(__ret__, 'ns_masters'),
173
+ project_id=pulumi.get(__ret__, 'project_id'),
174
+ status=pulumi.get(__ret__, 'status'),
175
+ subdomain=pulumi.get(__ret__, 'subdomain'),
176
+ updated_at=pulumi.get(__ret__, 'updated_at'))
177
+ def get_zone_output(domain: Optional[pulumi.Input[Optional[str]]] = None,
178
+ subdomain: Optional[pulumi.Input[Optional[str]]] = None,
179
+ opts: Optional[Union[pulumi.InvokeOptions, pulumi.InvokeOutputOptions]] = None) -> pulumi.Output[GetZoneResult]:
180
+ """
181
+ Use this data source to access information about an existing resource.
182
+
183
+ :param str domain: The primary domain name where the DNS zone is located. This is a mandatory field.
184
+ :param str subdomain: The subdomain (or zone name) within the primary domain. This is a mandatory field.
185
+ """
186
+ __args__ = dict()
187
+ __args__['domain'] = domain
188
+ __args__['subdomain'] = subdomain
189
+ opts = pulumi.InvokeOutputOptions.merge(_utilities.get_invoke_opts_defaults(), opts)
190
+ __ret__ = pulumi.runtime.invoke_output('scaleway:domain/getZone:getZone', __args__, opts=opts, typ=GetZoneResult)
191
+ return __ret__.apply(lambda __response__: GetZoneResult(
192
+ domain=pulumi.get(__response__, 'domain'),
193
+ id=pulumi.get(__response__, 'id'),
194
+ message=pulumi.get(__response__, 'message'),
195
+ ns=pulumi.get(__response__, 'ns'),
196
+ ns_defaults=pulumi.get(__response__, 'ns_defaults'),
197
+ ns_masters=pulumi.get(__response__, 'ns_masters'),
198
+ project_id=pulumi.get(__response__, 'project_id'),
199
+ status=pulumi.get(__response__, 'status'),
200
+ subdomain=pulumi.get(__response__, 'subdomain'),
201
+ updated_at=pulumi.get(__response__, 'updated_at')))