pulumiverse-scaleway 1.24.0a1741679978__py3-none-any.whl → 1.25.0__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (461) hide show
  1. pulumiverse_scaleway/__init__.py +929 -0
  2. pulumiverse_scaleway/account/__init__.py +12 -0
  3. pulumiverse_scaleway/account/get_availability_zones.py +139 -0
  4. pulumiverse_scaleway/account/get_project.py +170 -0
  5. pulumiverse_scaleway/account/get_ssh_key.py +205 -0
  6. pulumiverse_scaleway/account/project.py +318 -0
  7. pulumiverse_scaleway/account/ssh_key.py +456 -0
  8. pulumiverse_scaleway/account_project.py +6 -0
  9. pulumiverse_scaleway/account_ssh_key.py +12 -6
  10. pulumiverse_scaleway/apple_silicon_server.py +8 -2
  11. pulumiverse_scaleway/applesilicon/__init__.py +10 -0
  12. pulumiverse_scaleway/applesilicon/_inputs.py +154 -0
  13. pulumiverse_scaleway/applesilicon/outputs.py +119 -0
  14. pulumiverse_scaleway/applesilicon/server.py +690 -0
  15. pulumiverse_scaleway/baremetal_server.py +64 -58
  16. pulumiverse_scaleway/billing/__init__.py +10 -0
  17. pulumiverse_scaleway/billing/get_consumptions.py +134 -0
  18. pulumiverse_scaleway/billing/get_invoices.py +154 -0
  19. pulumiverse_scaleway/billing/outputs.py +288 -0
  20. pulumiverse_scaleway/block/__init__.py +11 -0
  21. pulumiverse_scaleway/block/get_snapshot.py +174 -0
  22. pulumiverse_scaleway/block/get_volume.py +199 -0
  23. pulumiverse_scaleway/block/snapshot.py +403 -0
  24. pulumiverse_scaleway/block/volume.py +576 -0
  25. pulumiverse_scaleway/block_snapshot.py +12 -6
  26. pulumiverse_scaleway/block_volume.py +16 -10
  27. pulumiverse_scaleway/cockpit.py +10 -4
  28. pulumiverse_scaleway/cockpit_alert_manager.py +12 -6
  29. pulumiverse_scaleway/cockpit_grafana_user.py +12 -6
  30. pulumiverse_scaleway/cockpit_source.py +12 -6
  31. pulumiverse_scaleway/cockpit_token.py +16 -10
  32. pulumiverse_scaleway/container.py +16 -10
  33. pulumiverse_scaleway/container_cron.py +14 -8
  34. pulumiverse_scaleway/container_domain.py +24 -18
  35. pulumiverse_scaleway/container_namespace.py +10 -4
  36. pulumiverse_scaleway/container_token.py +32 -26
  37. pulumiverse_scaleway/container_trigger.py +12 -6
  38. pulumiverse_scaleway/containers/__init__.py +17 -0
  39. pulumiverse_scaleway/containers/_inputs.py +389 -0
  40. pulumiverse_scaleway/containers/container.py +1635 -0
  41. pulumiverse_scaleway/containers/cron.py +460 -0
  42. pulumiverse_scaleway/containers/domain.py +408 -0
  43. pulumiverse_scaleway/containers/get_container.py +562 -0
  44. pulumiverse_scaleway/containers/get_namespace.py +283 -0
  45. pulumiverse_scaleway/containers/namespace.py +638 -0
  46. pulumiverse_scaleway/containers/outputs.py +412 -0
  47. pulumiverse_scaleway/containers/token.py +454 -0
  48. pulumiverse_scaleway/containers/trigger.py +482 -0
  49. pulumiverse_scaleway/database.py +10 -4
  50. pulumiverse_scaleway/database_acl.py +10 -4
  51. pulumiverse_scaleway/database_backup.py +14 -8
  52. pulumiverse_scaleway/database_instance.py +24 -18
  53. pulumiverse_scaleway/database_privilege.py +16 -10
  54. pulumiverse_scaleway/database_read_replica.py +22 -16
  55. pulumiverse_scaleway/database_user.py +10 -4
  56. pulumiverse_scaleway/databases/__init__.py +23 -0
  57. pulumiverse_scaleway/databases/_inputs.py +822 -0
  58. pulumiverse_scaleway/databases/acl.py +334 -0
  59. pulumiverse_scaleway/databases/database.py +409 -0
  60. pulumiverse_scaleway/databases/database_backup.py +576 -0
  61. pulumiverse_scaleway/databases/get_acl.py +143 -0
  62. pulumiverse_scaleway/databases/get_database.py +187 -0
  63. pulumiverse_scaleway/databases/get_database_backup.py +253 -0
  64. pulumiverse_scaleway/databases/get_instance.py +415 -0
  65. pulumiverse_scaleway/databases/get_privilege.py +181 -0
  66. pulumiverse_scaleway/databases/instance.py +1696 -0
  67. pulumiverse_scaleway/databases/outputs.py +866 -0
  68. pulumiverse_scaleway/databases/privilege.py +424 -0
  69. pulumiverse_scaleway/databases/read_replica.py +530 -0
  70. pulumiverse_scaleway/databases/serverless_database.py +434 -0
  71. pulumiverse_scaleway/databases/snapshot.py +610 -0
  72. pulumiverse_scaleway/databases/user.py +448 -0
  73. pulumiverse_scaleway/domain/__init__.py +13 -0
  74. pulumiverse_scaleway/domain/_inputs.py +341 -0
  75. pulumiverse_scaleway/domain/get_record.py +340 -0
  76. pulumiverse_scaleway/domain/get_zone.py +201 -0
  77. pulumiverse_scaleway/domain/outputs.py +408 -0
  78. pulumiverse_scaleway/domain/record.py +1118 -0
  79. pulumiverse_scaleway/domain/zone.py +432 -0
  80. pulumiverse_scaleway/domain_record.py +36 -30
  81. pulumiverse_scaleway/domain_zone.py +6 -0
  82. pulumiverse_scaleway/elasticmetal/__init__.py +18 -0
  83. pulumiverse_scaleway/elasticmetal/_inputs.py +509 -0
  84. pulumiverse_scaleway/elasticmetal/get_ip.py +247 -0
  85. pulumiverse_scaleway/elasticmetal/get_ips.py +240 -0
  86. pulumiverse_scaleway/elasticmetal/get_offer.py +245 -0
  87. pulumiverse_scaleway/elasticmetal/get_option.py +168 -0
  88. pulumiverse_scaleway/elasticmetal/get_os.py +174 -0
  89. pulumiverse_scaleway/elasticmetal/get_server.py +422 -0
  90. pulumiverse_scaleway/elasticmetal/ip.py +704 -0
  91. pulumiverse_scaleway/elasticmetal/ip_mac_address.py +512 -0
  92. pulumiverse_scaleway/elasticmetal/outputs.py +974 -0
  93. pulumiverse_scaleway/elasticmetal/server.py +1591 -0
  94. pulumiverse_scaleway/flexible_ip.py +22 -16
  95. pulumiverse_scaleway/flexible_ip_mac_address.py +22 -16
  96. pulumiverse_scaleway/function.py +6 -0
  97. pulumiverse_scaleway/function_cron.py +16 -10
  98. pulumiverse_scaleway/function_domain.py +16 -10
  99. pulumiverse_scaleway/function_namespace.py +10 -4
  100. pulumiverse_scaleway/function_token.py +32 -26
  101. pulumiverse_scaleway/function_trigger.py +12 -6
  102. pulumiverse_scaleway/functions/__init__.py +17 -0
  103. pulumiverse_scaleway/functions/_inputs.py +211 -0
  104. pulumiverse_scaleway/functions/cron.py +464 -0
  105. pulumiverse_scaleway/functions/domain.py +372 -0
  106. pulumiverse_scaleway/functions/function.py +1105 -0
  107. pulumiverse_scaleway/functions/get_function.py +365 -0
  108. pulumiverse_scaleway/functions/get_namespace.py +238 -0
  109. pulumiverse_scaleway/functions/namespace.py +582 -0
  110. pulumiverse_scaleway/functions/outputs.py +168 -0
  111. pulumiverse_scaleway/functions/token.py +462 -0
  112. pulumiverse_scaleway/functions/trigger.py +482 -0
  113. pulumiverse_scaleway/get_account_project.py +6 -2
  114. pulumiverse_scaleway/get_account_ssh_key.py +6 -2
  115. pulumiverse_scaleway/get_availability_zones.py +8 -4
  116. pulumiverse_scaleway/get_baremetal_offer.py +4 -0
  117. pulumiverse_scaleway/get_baremetal_option.py +8 -4
  118. pulumiverse_scaleway/get_baremetal_os.py +8 -4
  119. pulumiverse_scaleway/get_baremetal_server.py +8 -4
  120. pulumiverse_scaleway/get_billing_consumptions.py +4 -0
  121. pulumiverse_scaleway/get_billing_invoices.py +4 -0
  122. pulumiverse_scaleway/get_block_snapshot.py +6 -2
  123. pulumiverse_scaleway/get_block_volume.py +6 -2
  124. pulumiverse_scaleway/get_cockpit.py +12 -8
  125. pulumiverse_scaleway/get_cockpit_plan.py +10 -6
  126. pulumiverse_scaleway/get_cockpit_source.py +8 -4
  127. pulumiverse_scaleway/get_container.py +16 -12
  128. pulumiverse_scaleway/get_container_namespace.py +10 -6
  129. pulumiverse_scaleway/get_database.py +6 -2
  130. pulumiverse_scaleway/get_database_acl.py +6 -2
  131. pulumiverse_scaleway/get_database_backup.py +10 -6
  132. pulumiverse_scaleway/get_database_instance.py +4 -0
  133. pulumiverse_scaleway/get_database_privilege.py +6 -2
  134. pulumiverse_scaleway/get_domain_record.py +10 -6
  135. pulumiverse_scaleway/get_domain_zone.py +4 -0
  136. pulumiverse_scaleway/get_flexible_ip.py +4 -0
  137. pulumiverse_scaleway/get_flexible_ips.py +16 -12
  138. pulumiverse_scaleway/get_function.py +6 -2
  139. pulumiverse_scaleway/get_function_namespace.py +6 -2
  140. pulumiverse_scaleway/get_iam_api_key.py +6 -2
  141. pulumiverse_scaleway/get_iam_application.py +8 -4
  142. pulumiverse_scaleway/get_iam_group.py +8 -4
  143. pulumiverse_scaleway/get_iam_ssh_key.py +4 -0
  144. pulumiverse_scaleway/get_iam_user.py +8 -4
  145. pulumiverse_scaleway/get_instance_image.py +4 -0
  146. pulumiverse_scaleway/get_instance_ip.py +4 -0
  147. pulumiverse_scaleway/get_instance_placement_group.py +4 -0
  148. pulumiverse_scaleway/get_instance_private_nic.py +10 -6
  149. pulumiverse_scaleway/get_instance_security_group.py +4 -0
  150. pulumiverse_scaleway/get_instance_server.py +4 -0
  151. pulumiverse_scaleway/get_instance_servers.py +4 -0
  152. pulumiverse_scaleway/get_instance_snapshot.py +8 -4
  153. pulumiverse_scaleway/get_instance_volume.py +4 -0
  154. pulumiverse_scaleway/get_iot_device.py +4 -0
  155. pulumiverse_scaleway/get_iot_hub.py +4 -0
  156. pulumiverse_scaleway/get_ipam_ip.py +18 -14
  157. pulumiverse_scaleway/get_ipam_ips.py +14 -10
  158. pulumiverse_scaleway/get_k8s_version.py +8 -4
  159. pulumiverse_scaleway/get_kubernetes_cluster.py +4 -0
  160. pulumiverse_scaleway/get_kubernetes_node_pool.py +4 -0
  161. pulumiverse_scaleway/get_lb_acls.py +8 -4
  162. pulumiverse_scaleway/get_lb_backend.py +18 -14
  163. pulumiverse_scaleway/get_lb_backends.py +8 -4
  164. pulumiverse_scaleway/get_lb_frontend.py +16 -12
  165. pulumiverse_scaleway/get_lb_frontends.py +8 -4
  166. pulumiverse_scaleway/get_lb_ips.py +4 -0
  167. pulumiverse_scaleway/get_lb_route.py +16 -12
  168. pulumiverse_scaleway/get_lb_routes.py +8 -4
  169. pulumiverse_scaleway/get_lbs.py +4 -0
  170. pulumiverse_scaleway/get_loadbalancer.py +8 -4
  171. pulumiverse_scaleway/get_loadbalancer_certificate.py +4 -0
  172. pulumiverse_scaleway/get_loadbalancer_ip.py +4 -0
  173. pulumiverse_scaleway/get_mnq_sns.py +8 -4
  174. pulumiverse_scaleway/get_mnq_sqs.py +8 -4
  175. pulumiverse_scaleway/get_mongo_db_instance.py +4 -0
  176. pulumiverse_scaleway/get_object_bucket.py +12 -8
  177. pulumiverse_scaleway/get_object_bucket_policy.py +8 -4
  178. pulumiverse_scaleway/get_redis_cluster.py +4 -0
  179. pulumiverse_scaleway/get_registry_image.py +4 -0
  180. pulumiverse_scaleway/get_registry_image_tag.py +4 -0
  181. pulumiverse_scaleway/get_registry_namespace.py +4 -0
  182. pulumiverse_scaleway/get_secret.py +12 -8
  183. pulumiverse_scaleway/get_secret_version.py +14 -10
  184. pulumiverse_scaleway/get_tem_domain.py +4 -0
  185. pulumiverse_scaleway/get_vpc.py +10 -6
  186. pulumiverse_scaleway/get_vpc_gateway_network.py +10 -6
  187. pulumiverse_scaleway/get_vpc_private_network.py +10 -6
  188. pulumiverse_scaleway/get_vpc_public_gateway.py +10 -6
  189. pulumiverse_scaleway/get_vpc_public_gateway_dhcp.py +8 -4
  190. pulumiverse_scaleway/get_vpc_public_gateway_dhcp_reservation.py +70 -66
  191. pulumiverse_scaleway/get_vpc_public_gateway_ip.py +8 -4
  192. pulumiverse_scaleway/get_vpc_public_pat_rule.py +26 -22
  193. pulumiverse_scaleway/get_vpc_routes.py +4 -0
  194. pulumiverse_scaleway/get_vpcs.py +4 -0
  195. pulumiverse_scaleway/get_web_host_offer.py +8 -4
  196. pulumiverse_scaleway/get_webhosting.py +8 -4
  197. pulumiverse_scaleway/hosting/__init__.py +12 -0
  198. pulumiverse_scaleway/hosting/_inputs.py +295 -0
  199. pulumiverse_scaleway/hosting/get_hosting.py +354 -0
  200. pulumiverse_scaleway/hosting/get_offer.py +229 -0
  201. pulumiverse_scaleway/hosting/hosting.py +870 -0
  202. pulumiverse_scaleway/hosting/outputs.py +626 -0
  203. pulumiverse_scaleway/iam/__init__.py +21 -0
  204. pulumiverse_scaleway/iam/_inputs.py +138 -0
  205. pulumiverse_scaleway/iam/api_key.py +622 -0
  206. pulumiverse_scaleway/iam/application.py +419 -0
  207. pulumiverse_scaleway/iam/get_api_key.py +210 -0
  208. pulumiverse_scaleway/iam/get_application.py +210 -0
  209. pulumiverse_scaleway/iam/get_group.py +236 -0
  210. pulumiverse_scaleway/iam/get_ssh_key.py +212 -0
  211. pulumiverse_scaleway/iam/get_user.py +177 -0
  212. pulumiverse_scaleway/iam/group.py +568 -0
  213. pulumiverse_scaleway/iam/group_membership.py +325 -0
  214. pulumiverse_scaleway/iam/outputs.py +111 -0
  215. pulumiverse_scaleway/iam/policy.py +775 -0
  216. pulumiverse_scaleway/iam/ssh_key.py +457 -0
  217. pulumiverse_scaleway/iam/user.py +515 -0
  218. pulumiverse_scaleway/iam_api_key.py +16 -10
  219. pulumiverse_scaleway/iam_application.py +8 -2
  220. pulumiverse_scaleway/iam_group.py +12 -6
  221. pulumiverse_scaleway/iam_group_membership.py +12 -6
  222. pulumiverse_scaleway/iam_policy.py +18 -12
  223. pulumiverse_scaleway/iam_ssh_key.py +8 -2
  224. pulumiverse_scaleway/iam_user.py +8 -2
  225. pulumiverse_scaleway/inference/__init__.py +10 -0
  226. pulumiverse_scaleway/inference/_inputs.py +209 -0
  227. pulumiverse_scaleway/inference/deployment.py +824 -0
  228. pulumiverse_scaleway/inference/outputs.py +169 -0
  229. pulumiverse_scaleway/inference_deployment.py +8 -2
  230. pulumiverse_scaleway/instance/__init__.py +29 -0
  231. pulumiverse_scaleway/instance/_inputs.py +1237 -0
  232. pulumiverse_scaleway/instance/get_image.py +305 -0
  233. pulumiverse_scaleway/instance/get_ip.py +204 -0
  234. pulumiverse_scaleway/instance/get_placement_group.py +212 -0
  235. pulumiverse_scaleway/instance/get_private_nic.py +226 -0
  236. pulumiverse_scaleway/instance/get_security_group.py +268 -0
  237. pulumiverse_scaleway/instance/get_server.py +488 -0
  238. pulumiverse_scaleway/instance/get_servers.py +187 -0
  239. pulumiverse_scaleway/instance/get_snapshot.py +248 -0
  240. pulumiverse_scaleway/instance/get_volume.py +226 -0
  241. pulumiverse_scaleway/instance/image.py +752 -0
  242. pulumiverse_scaleway/instance/ip.py +471 -0
  243. pulumiverse_scaleway/instance/ip_reverse_dns.py +310 -0
  244. pulumiverse_scaleway/instance/outputs.py +1533 -0
  245. pulumiverse_scaleway/instance/placement_group.py +481 -0
  246. pulumiverse_scaleway/instance/private_nic.py +557 -0
  247. pulumiverse_scaleway/instance/security_group.py +722 -0
  248. pulumiverse_scaleway/instance/security_group_rules.py +441 -0
  249. pulumiverse_scaleway/instance/server.py +1938 -0
  250. pulumiverse_scaleway/instance/snapshot.py +671 -0
  251. pulumiverse_scaleway/instance/user_data.py +437 -0
  252. pulumiverse_scaleway/instance/volume.py +584 -0
  253. pulumiverse_scaleway/instance_image.py +18 -12
  254. pulumiverse_scaleway/instance_ip.py +8 -2
  255. pulumiverse_scaleway/instance_ip_reverse_dns.py +12 -6
  256. pulumiverse_scaleway/instance_placement_group.py +8 -2
  257. pulumiverse_scaleway/instance_private_nic.py +24 -18
  258. pulumiverse_scaleway/instance_security_group.py +6 -0
  259. pulumiverse_scaleway/instance_security_group_rules.py +22 -16
  260. pulumiverse_scaleway/instance_server.py +74 -68
  261. pulumiverse_scaleway/instance_snapshot.py +22 -16
  262. pulumiverse_scaleway/instance_user_data.py +16 -10
  263. pulumiverse_scaleway/instance_volume.py +8 -2
  264. pulumiverse_scaleway/iot/__init__.py +15 -0
  265. pulumiverse_scaleway/iot/_inputs.py +539 -0
  266. pulumiverse_scaleway/iot/device.py +752 -0
  267. pulumiverse_scaleway/iot/get_device.py +257 -0
  268. pulumiverse_scaleway/iot/get_hub.py +322 -0
  269. pulumiverse_scaleway/iot/hub.py +898 -0
  270. pulumiverse_scaleway/iot/network.py +474 -0
  271. pulumiverse_scaleway/iot/outputs.py +465 -0
  272. pulumiverse_scaleway/iot/route.py +662 -0
  273. pulumiverse_scaleway/iot_device.py +14 -8
  274. pulumiverse_scaleway/iot_hub.py +8 -2
  275. pulumiverse_scaleway/iot_network.py +12 -6
  276. pulumiverse_scaleway/iot_route.py +32 -26
  277. pulumiverse_scaleway/ipam/__init__.py +13 -0
  278. pulumiverse_scaleway/ipam/_inputs.py +442 -0
  279. pulumiverse_scaleway/ipam/get_ip.py +419 -0
  280. pulumiverse_scaleway/ipam/get_ips.py +358 -0
  281. pulumiverse_scaleway/ipam/ip.py +759 -0
  282. pulumiverse_scaleway/ipam/ip_reverse_dns.py +320 -0
  283. pulumiverse_scaleway/ipam/outputs.py +481 -0
  284. pulumiverse_scaleway/ipam_ip.py +30 -24
  285. pulumiverse_scaleway/ipam_ip_reverse_dns.py +6 -0
  286. pulumiverse_scaleway/job/__init__.py +10 -0
  287. pulumiverse_scaleway/job/_inputs.py +73 -0
  288. pulumiverse_scaleway/job/definition.py +694 -0
  289. pulumiverse_scaleway/job/outputs.py +49 -0
  290. pulumiverse_scaleway/job_definition.py +8 -2
  291. pulumiverse_scaleway/kubernetes/__init__.py +14 -0
  292. pulumiverse_scaleway/kubernetes/_inputs.py +717 -0
  293. pulumiverse_scaleway/kubernetes/cluster.py +1540 -0
  294. pulumiverse_scaleway/kubernetes/get_cluster.py +417 -0
  295. pulumiverse_scaleway/kubernetes/get_pool.py +436 -0
  296. pulumiverse_scaleway/kubernetes/get_version.py +196 -0
  297. pulumiverse_scaleway/kubernetes/outputs.py +944 -0
  298. pulumiverse_scaleway/kubernetes/pool.py +1313 -0
  299. pulumiverse_scaleway/kubernetes_cluster.py +36 -30
  300. pulumiverse_scaleway/kubernetes_node_pool.py +6 -0
  301. pulumiverse_scaleway/loadbalancer.py +35 -29
  302. pulumiverse_scaleway/loadbalancer_acl.py +8 -2
  303. pulumiverse_scaleway/loadbalancer_backend.py +10 -4
  304. pulumiverse_scaleway/loadbalancer_certificate.py +6 -0
  305. pulumiverse_scaleway/loadbalancer_frontend.py +10 -4
  306. pulumiverse_scaleway/loadbalancer_ip.py +10 -4
  307. pulumiverse_scaleway/loadbalancer_route.py +26 -20
  308. pulumiverse_scaleway/loadbalancers/__init__.py +28 -0
  309. pulumiverse_scaleway/loadbalancers/_inputs.py +1103 -0
  310. pulumiverse_scaleway/loadbalancers/acl.py +522 -0
  311. pulumiverse_scaleway/loadbalancers/backend.py +1590 -0
  312. pulumiverse_scaleway/loadbalancers/certificate.py +462 -0
  313. pulumiverse_scaleway/loadbalancers/frontend.py +831 -0
  314. pulumiverse_scaleway/loadbalancers/get_acls.py +198 -0
  315. pulumiverse_scaleway/loadbalancers/get_backend.py +486 -0
  316. pulumiverse_scaleway/loadbalancers/get_backends.py +196 -0
  317. pulumiverse_scaleway/loadbalancers/get_certificate.py +230 -0
  318. pulumiverse_scaleway/loadbalancers/get_frontend.py +274 -0
  319. pulumiverse_scaleway/loadbalancers/get_frontends.py +196 -0
  320. pulumiverse_scaleway/loadbalancers/get_ip.py +228 -0
  321. pulumiverse_scaleway/loadbalancers/get_ips.py +198 -0
  322. pulumiverse_scaleway/loadbalancers/get_load_balancer.py +339 -0
  323. pulumiverse_scaleway/loadbalancers/get_load_balancers.py +187 -0
  324. pulumiverse_scaleway/loadbalancers/get_route.py +217 -0
  325. pulumiverse_scaleway/loadbalancers/get_routes.py +179 -0
  326. pulumiverse_scaleway/loadbalancers/ip.py +516 -0
  327. pulumiverse_scaleway/loadbalancers/load_balancer.py +1063 -0
  328. pulumiverse_scaleway/loadbalancers/outputs.py +2491 -0
  329. pulumiverse_scaleway/loadbalancers/route.py +525 -0
  330. pulumiverse_scaleway/mnq/__init__.py +20 -0
  331. pulumiverse_scaleway/mnq/_inputs.py +169 -0
  332. pulumiverse_scaleway/mnq/get_sns.py +150 -0
  333. pulumiverse_scaleway/mnq/get_sqs.py +150 -0
  334. pulumiverse_scaleway/mnq/nats_account.py +336 -0
  335. pulumiverse_scaleway/mnq/nats_credentials.py +332 -0
  336. pulumiverse_scaleway/mnq/outputs.py +149 -0
  337. pulumiverse_scaleway/mnq/sns.py +308 -0
  338. pulumiverse_scaleway/mnq/sns_credentials.py +415 -0
  339. pulumiverse_scaleway/mnq/sns_topic.py +661 -0
  340. pulumiverse_scaleway/mnq/sns_topic_subscription.py +701 -0
  341. pulumiverse_scaleway/mnq/sqs.py +306 -0
  342. pulumiverse_scaleway/mnq/sqs_credentials.py +415 -0
  343. pulumiverse_scaleway/mnq/sqs_queue.py +802 -0
  344. pulumiverse_scaleway/mnq_nats_account.py +8 -2
  345. pulumiverse_scaleway/mnq_nats_credentials.py +10 -4
  346. pulumiverse_scaleway/mnq_sns.py +12 -6
  347. pulumiverse_scaleway/mnq_sns_credentials.py +10 -4
  348. pulumiverse_scaleway/mnq_sns_topic.py +16 -10
  349. pulumiverse_scaleway/mnq_sns_topic_subscription.py +22 -16
  350. pulumiverse_scaleway/mnq_sqs.py +12 -6
  351. pulumiverse_scaleway/mnq_sqs_credentials.py +10 -4
  352. pulumiverse_scaleway/mnq_sqs_queue.py +16 -10
  353. pulumiverse_scaleway/mongo_db_instance.py +14 -8
  354. pulumiverse_scaleway/mongo_db_snapshot.py +8 -2
  355. pulumiverse_scaleway/mongodb/__init__.py +12 -0
  356. pulumiverse_scaleway/mongodb/_inputs.py +208 -0
  357. pulumiverse_scaleway/mongodb/get_instance.py +335 -0
  358. pulumiverse_scaleway/mongodb/instance.py +1000 -0
  359. pulumiverse_scaleway/mongodb/outputs.py +270 -0
  360. pulumiverse_scaleway/mongodb/snapshot.py +523 -0
  361. pulumiverse_scaleway/network/__init__.py +29 -0
  362. pulumiverse_scaleway/network/_inputs.py +383 -0
  363. pulumiverse_scaleway/network/gateway_network.py +868 -0
  364. pulumiverse_scaleway/network/get_gateway_network.py +287 -0
  365. pulumiverse_scaleway/network/get_private_network.py +282 -0
  366. pulumiverse_scaleway/network/get_public_gateway.py +304 -0
  367. pulumiverse_scaleway/network/get_public_gateway_dhcp.py +305 -0
  368. pulumiverse_scaleway/network/get_public_gateway_dhcp_reservation.py +382 -0
  369. pulumiverse_scaleway/network/get_public_gateway_ip.py +199 -0
  370. pulumiverse_scaleway/network/get_public_gateway_pat_rule.py +313 -0
  371. pulumiverse_scaleway/network/get_routes.py +208 -0
  372. pulumiverse_scaleway/network/get_vpc.py +246 -0
  373. pulumiverse_scaleway/network/get_vpcs.py +174 -0
  374. pulumiverse_scaleway/network/outputs.py +747 -0
  375. pulumiverse_scaleway/network/private_network.py +736 -0
  376. pulumiverse_scaleway/network/public_gateway.py +791 -0
  377. pulumiverse_scaleway/network/public_gateway_dhcp.py +949 -0
  378. pulumiverse_scaleway/network/public_gateway_dhcp_reservation.py +516 -0
  379. pulumiverse_scaleway/network/public_gateway_ip.py +459 -0
  380. pulumiverse_scaleway/network/public_gateway_ip_reverse_dns.py +308 -0
  381. pulumiverse_scaleway/network/public_gateway_pat_rule.py +593 -0
  382. pulumiverse_scaleway/network/route.py +579 -0
  383. pulumiverse_scaleway/network/vpc.py +538 -0
  384. pulumiverse_scaleway/object/__init__.py +17 -0
  385. pulumiverse_scaleway/object/_inputs.py +831 -0
  386. pulumiverse_scaleway/object/bucket.py +876 -0
  387. pulumiverse_scaleway/object/bucket_acl.py +598 -0
  388. pulumiverse_scaleway/object/bucket_lock_configuration.py +397 -0
  389. pulumiverse_scaleway/object/bucket_policy.py +675 -0
  390. pulumiverse_scaleway/object/bucket_website_configuration.py +536 -0
  391. pulumiverse_scaleway/object/get_bucket.py +290 -0
  392. pulumiverse_scaleway/object/get_bucket_policy.py +163 -0
  393. pulumiverse_scaleway/object/item.py +778 -0
  394. pulumiverse_scaleway/object/outputs.py +802 -0
  395. pulumiverse_scaleway/object_bucket.py +28 -22
  396. pulumiverse_scaleway/object_bucket_acl.py +14 -8
  397. pulumiverse_scaleway/object_bucket_lock_configuration.py +12 -6
  398. pulumiverse_scaleway/object_bucket_policy.py +46 -40
  399. pulumiverse_scaleway/object_bucket_website_configuration.py +18 -12
  400. pulumiverse_scaleway/object_item.py +8 -2
  401. pulumiverse_scaleway/observability/__init__.py +17 -0
  402. pulumiverse_scaleway/observability/_inputs.py +417 -0
  403. pulumiverse_scaleway/observability/alert_manager.py +403 -0
  404. pulumiverse_scaleway/observability/cockpit.py +325 -0
  405. pulumiverse_scaleway/observability/get_instance.py +205 -0
  406. pulumiverse_scaleway/observability/get_plan.py +125 -0
  407. pulumiverse_scaleway/observability/get_source.py +262 -0
  408. pulumiverse_scaleway/observability/grafana_user.py +364 -0
  409. pulumiverse_scaleway/observability/outputs.py +425 -0
  410. pulumiverse_scaleway/observability/source.py +569 -0
  411. pulumiverse_scaleway/observability/token.py +481 -0
  412. pulumiverse_scaleway/pulumi-plugin.json +1 -1
  413. pulumiverse_scaleway/rdb_snapshot.py +16 -10
  414. pulumiverse_scaleway/redis/__init__.py +11 -0
  415. pulumiverse_scaleway/redis/_inputs.py +330 -0
  416. pulumiverse_scaleway/redis/cluster.py +1203 -0
  417. pulumiverse_scaleway/redis/get_cluster.py +347 -0
  418. pulumiverse_scaleway/redis/outputs.py +356 -0
  419. pulumiverse_scaleway/redis_cluster.py +14 -8
  420. pulumiverse_scaleway/registry/__init__.py +11 -0
  421. pulumiverse_scaleway/registry/get_image.py +239 -0
  422. pulumiverse_scaleway/registry/get_image_tag.py +229 -0
  423. pulumiverse_scaleway/registry/get_namespace.py +199 -0
  424. pulumiverse_scaleway/registry/namespace.py +460 -0
  425. pulumiverse_scaleway/registry_namespace.py +8 -2
  426. pulumiverse_scaleway/sdb_database.py +10 -4
  427. pulumiverse_scaleway/secret.py +6 -0
  428. pulumiverse_scaleway/secret_version.py +12 -6
  429. pulumiverse_scaleway/secrets/__init__.py +13 -0
  430. pulumiverse_scaleway/secrets/_inputs.py +94 -0
  431. pulumiverse_scaleway/secrets/get_secret.py +338 -0
  432. pulumiverse_scaleway/secrets/get_version.py +340 -0
  433. pulumiverse_scaleway/secrets/outputs.py +120 -0
  434. pulumiverse_scaleway/secrets/secret.py +665 -0
  435. pulumiverse_scaleway/secrets/version.py +489 -0
  436. pulumiverse_scaleway/tem/__init__.py +13 -0
  437. pulumiverse_scaleway/tem/_inputs.py +135 -0
  438. pulumiverse_scaleway/tem/domain.py +1032 -0
  439. pulumiverse_scaleway/tem/domain_validation.py +305 -0
  440. pulumiverse_scaleway/tem/get_domain.py +378 -0
  441. pulumiverse_scaleway/tem/outputs.py +171 -0
  442. pulumiverse_scaleway/tem/webhook.py +642 -0
  443. pulumiverse_scaleway/tem_domain.py +20 -14
  444. pulumiverse_scaleway/tem_domain_validation.py +10 -4
  445. pulumiverse_scaleway/tem_webhook.py +28 -22
  446. pulumiverse_scaleway/vpc.py +10 -4
  447. pulumiverse_scaleway/vpc_gateway_network.py +40 -34
  448. pulumiverse_scaleway/vpc_private_network.py +10 -4
  449. pulumiverse_scaleway/vpc_public_gateway.py +8 -2
  450. pulumiverse_scaleway/vpc_public_gateway_dhcp.py +15 -9
  451. pulumiverse_scaleway/vpc_public_gateway_dhcp_reservation.py +32 -26
  452. pulumiverse_scaleway/vpc_public_gateway_ip.py +10 -4
  453. pulumiverse_scaleway/vpc_public_gateway_ip_reverse_dns.py +12 -6
  454. pulumiverse_scaleway/vpc_public_gateway_pat_rule.py +26 -20
  455. pulumiverse_scaleway/vpc_route.py +16 -10
  456. pulumiverse_scaleway/webhosting.py +10 -4
  457. {pulumiverse_scaleway-1.24.0a1741679978.dist-info → pulumiverse_scaleway-1.25.0.dist-info}/METADATA +2 -2
  458. pulumiverse_scaleway-1.25.0.dist-info/RECORD +470 -0
  459. {pulumiverse_scaleway-1.24.0a1741679978.dist-info → pulumiverse_scaleway-1.25.0.dist-info}/WHEEL +1 -1
  460. pulumiverse_scaleway-1.24.0a1741679978.dist-info/RECORD +0 -206
  461. {pulumiverse_scaleway-1.24.0a1741679978.dist-info → pulumiverse_scaleway-1.25.0.dist-info}/top_level.txt +0 -0
@@ -0,0 +1,530 @@
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__ = ['ReadReplicaArgs', 'ReadReplica']
20
+
21
+ @pulumi.input_type
22
+ class ReadReplicaArgs:
23
+ def __init__(__self__, *,
24
+ instance_id: pulumi.Input[str],
25
+ direct_access: Optional[pulumi.Input['ReadReplicaDirectAccessArgs']] = None,
26
+ private_network: Optional[pulumi.Input['ReadReplicaPrivateNetworkArgs']] = None,
27
+ region: Optional[pulumi.Input[str]] = None,
28
+ same_zone: Optional[pulumi.Input[bool]] = None):
29
+ """
30
+ The set of arguments for constructing a ReadReplica resource.
31
+ :param pulumi.Input[str] instance_id: UUID of the rdb instance.
32
+
33
+ > **Important:** The replica musts contains at least one `direct_access` or `private_network`. It can contain both.
34
+ :param pulumi.Input['ReadReplicaDirectAccessArgs'] direct_access: Creates a direct access endpoint to rdb replica.
35
+ :param pulumi.Input['ReadReplicaPrivateNetworkArgs'] private_network: Create an endpoint in a Private Netork.
36
+ :param pulumi.Input[str] region: `region`) The region
37
+ in which the Read Replica should be created.
38
+ :param pulumi.Input[bool] same_zone: Defines whether to create the replica in the same availability zone as the main instance nodes or not.
39
+ """
40
+ pulumi.set(__self__, "instance_id", instance_id)
41
+ if direct_access is not None:
42
+ pulumi.set(__self__, "direct_access", direct_access)
43
+ if private_network is not None:
44
+ pulumi.set(__self__, "private_network", private_network)
45
+ if region is not None:
46
+ pulumi.set(__self__, "region", region)
47
+ if same_zone is not None:
48
+ pulumi.set(__self__, "same_zone", same_zone)
49
+
50
+ @property
51
+ @pulumi.getter(name="instanceId")
52
+ def instance_id(self) -> pulumi.Input[str]:
53
+ """
54
+ UUID of the rdb instance.
55
+
56
+ > **Important:** The replica musts contains at least one `direct_access` or `private_network`. It can contain both.
57
+ """
58
+ return pulumi.get(self, "instance_id")
59
+
60
+ @instance_id.setter
61
+ def instance_id(self, value: pulumi.Input[str]):
62
+ pulumi.set(self, "instance_id", value)
63
+
64
+ @property
65
+ @pulumi.getter(name="directAccess")
66
+ def direct_access(self) -> Optional[pulumi.Input['ReadReplicaDirectAccessArgs']]:
67
+ """
68
+ Creates a direct access endpoint to rdb replica.
69
+ """
70
+ return pulumi.get(self, "direct_access")
71
+
72
+ @direct_access.setter
73
+ def direct_access(self, value: Optional[pulumi.Input['ReadReplicaDirectAccessArgs']]):
74
+ pulumi.set(self, "direct_access", value)
75
+
76
+ @property
77
+ @pulumi.getter(name="privateNetwork")
78
+ def private_network(self) -> Optional[pulumi.Input['ReadReplicaPrivateNetworkArgs']]:
79
+ """
80
+ Create an endpoint in a Private Netork.
81
+ """
82
+ return pulumi.get(self, "private_network")
83
+
84
+ @private_network.setter
85
+ def private_network(self, value: Optional[pulumi.Input['ReadReplicaPrivateNetworkArgs']]):
86
+ pulumi.set(self, "private_network", value)
87
+
88
+ @property
89
+ @pulumi.getter
90
+ def region(self) -> Optional[pulumi.Input[str]]:
91
+ """
92
+ `region`) The region
93
+ in which the Read Replica should be created.
94
+ """
95
+ return pulumi.get(self, "region")
96
+
97
+ @region.setter
98
+ def region(self, value: Optional[pulumi.Input[str]]):
99
+ pulumi.set(self, "region", value)
100
+
101
+ @property
102
+ @pulumi.getter(name="sameZone")
103
+ def same_zone(self) -> Optional[pulumi.Input[bool]]:
104
+ """
105
+ Defines whether to create the replica in the same availability zone as the main instance nodes or not.
106
+ """
107
+ return pulumi.get(self, "same_zone")
108
+
109
+ @same_zone.setter
110
+ def same_zone(self, value: Optional[pulumi.Input[bool]]):
111
+ pulumi.set(self, "same_zone", value)
112
+
113
+
114
+ @pulumi.input_type
115
+ class _ReadReplicaState:
116
+ def __init__(__self__, *,
117
+ direct_access: Optional[pulumi.Input['ReadReplicaDirectAccessArgs']] = None,
118
+ instance_id: Optional[pulumi.Input[str]] = None,
119
+ private_network: Optional[pulumi.Input['ReadReplicaPrivateNetworkArgs']] = None,
120
+ region: Optional[pulumi.Input[str]] = None,
121
+ same_zone: Optional[pulumi.Input[bool]] = None):
122
+ """
123
+ Input properties used for looking up and filtering ReadReplica resources.
124
+ :param pulumi.Input['ReadReplicaDirectAccessArgs'] direct_access: Creates a direct access endpoint to rdb replica.
125
+ :param pulumi.Input[str] instance_id: UUID of the rdb instance.
126
+
127
+ > **Important:** The replica musts contains at least one `direct_access` or `private_network`. It can contain both.
128
+ :param pulumi.Input['ReadReplicaPrivateNetworkArgs'] private_network: Create an endpoint in a Private Netork.
129
+ :param pulumi.Input[str] region: `region`) The region
130
+ in which the Read Replica should be created.
131
+ :param pulumi.Input[bool] same_zone: Defines whether to create the replica in the same availability zone as the main instance nodes or not.
132
+ """
133
+ if direct_access is not None:
134
+ pulumi.set(__self__, "direct_access", direct_access)
135
+ if instance_id is not None:
136
+ pulumi.set(__self__, "instance_id", instance_id)
137
+ if private_network is not None:
138
+ pulumi.set(__self__, "private_network", private_network)
139
+ if region is not None:
140
+ pulumi.set(__self__, "region", region)
141
+ if same_zone is not None:
142
+ pulumi.set(__self__, "same_zone", same_zone)
143
+
144
+ @property
145
+ @pulumi.getter(name="directAccess")
146
+ def direct_access(self) -> Optional[pulumi.Input['ReadReplicaDirectAccessArgs']]:
147
+ """
148
+ Creates a direct access endpoint to rdb replica.
149
+ """
150
+ return pulumi.get(self, "direct_access")
151
+
152
+ @direct_access.setter
153
+ def direct_access(self, value: Optional[pulumi.Input['ReadReplicaDirectAccessArgs']]):
154
+ pulumi.set(self, "direct_access", value)
155
+
156
+ @property
157
+ @pulumi.getter(name="instanceId")
158
+ def instance_id(self) -> Optional[pulumi.Input[str]]:
159
+ """
160
+ UUID of the rdb instance.
161
+
162
+ > **Important:** The replica musts contains at least one `direct_access` or `private_network`. It can contain both.
163
+ """
164
+ return pulumi.get(self, "instance_id")
165
+
166
+ @instance_id.setter
167
+ def instance_id(self, value: Optional[pulumi.Input[str]]):
168
+ pulumi.set(self, "instance_id", value)
169
+
170
+ @property
171
+ @pulumi.getter(name="privateNetwork")
172
+ def private_network(self) -> Optional[pulumi.Input['ReadReplicaPrivateNetworkArgs']]:
173
+ """
174
+ Create an endpoint in a Private Netork.
175
+ """
176
+ return pulumi.get(self, "private_network")
177
+
178
+ @private_network.setter
179
+ def private_network(self, value: Optional[pulumi.Input['ReadReplicaPrivateNetworkArgs']]):
180
+ pulumi.set(self, "private_network", value)
181
+
182
+ @property
183
+ @pulumi.getter
184
+ def region(self) -> Optional[pulumi.Input[str]]:
185
+ """
186
+ `region`) The region
187
+ in which the Read Replica should be created.
188
+ """
189
+ return pulumi.get(self, "region")
190
+
191
+ @region.setter
192
+ def region(self, value: Optional[pulumi.Input[str]]):
193
+ pulumi.set(self, "region", value)
194
+
195
+ @property
196
+ @pulumi.getter(name="sameZone")
197
+ def same_zone(self) -> Optional[pulumi.Input[bool]]:
198
+ """
199
+ Defines whether to create the replica in the same availability zone as the main instance nodes or not.
200
+ """
201
+ return pulumi.get(self, "same_zone")
202
+
203
+ @same_zone.setter
204
+ def same_zone(self, value: Optional[pulumi.Input[bool]]):
205
+ pulumi.set(self, "same_zone", value)
206
+
207
+
208
+ class ReadReplica(pulumi.CustomResource):
209
+ @overload
210
+ def __init__(__self__,
211
+ resource_name: str,
212
+ opts: Optional[pulumi.ResourceOptions] = None,
213
+ direct_access: Optional[pulumi.Input[Union['ReadReplicaDirectAccessArgs', 'ReadReplicaDirectAccessArgsDict']]] = None,
214
+ instance_id: Optional[pulumi.Input[str]] = None,
215
+ private_network: Optional[pulumi.Input[Union['ReadReplicaPrivateNetworkArgs', 'ReadReplicaPrivateNetworkArgsDict']]] = None,
216
+ region: Optional[pulumi.Input[str]] = None,
217
+ same_zone: Optional[pulumi.Input[bool]] = None,
218
+ __props__=None):
219
+ """
220
+ Creates and manages Read Replicas.
221
+ For more information refer to the [API documentation](https://www.scaleway.com/en/developers/api/managed-database-postgre-mysql/).
222
+
223
+ ## Example Usage
224
+
225
+ ### Basic
226
+
227
+ ```python
228
+ import pulumi
229
+ import pulumiverse_scaleway as scaleway
230
+
231
+ instance = scaleway.databases.Instance("instance",
232
+ name="test-rdb-rr-update",
233
+ node_type="db-dev-s",
234
+ engine="PostgreSQL-14",
235
+ is_ha_cluster=False,
236
+ disable_backup=True,
237
+ user_name="my_initial_user",
238
+ password="thiZ_is_v&ry_s3cret",
239
+ tags=[
240
+ "terraform-test",
241
+ "scaleway_rdb_read_replica",
242
+ "minimal",
243
+ ])
244
+ replica = scaleway.databases.ReadReplica("replica",
245
+ instance_id=instance.id,
246
+ direct_access={})
247
+ ```
248
+
249
+ ### Private network with static endpoint
250
+
251
+ ```python
252
+ import pulumi
253
+ import pulumiverse_scaleway as scaleway
254
+
255
+ instance = scaleway.databases.Instance("instance",
256
+ name="rdb_instance",
257
+ node_type="db-dev-s",
258
+ engine="PostgreSQL-14",
259
+ is_ha_cluster=False,
260
+ disable_backup=True,
261
+ user_name="my_initial_user",
262
+ password="thiZ_is_v&ry_s3cret")
263
+ pn = scaleway.network.PrivateNetwork("pn")
264
+ replica = scaleway.databases.ReadReplica("replica",
265
+ instance_id=instance.id,
266
+ private_network={
267
+ "private_network_id": pn.id,
268
+ "service_ip": "192.168.1.254/24",
269
+ })
270
+ ```
271
+
272
+ ### Private network with IPAM
273
+
274
+ ```python
275
+ import pulumi
276
+ import pulumiverse_scaleway as scaleway
277
+
278
+ instance = scaleway.databases.Instance("instance",
279
+ name="rdb_instance",
280
+ node_type="db-dev-s",
281
+ engine="PostgreSQL-14",
282
+ is_ha_cluster=False,
283
+ disable_backup=True,
284
+ user_name="my_initial_user",
285
+ password="thiZ_is_v&ry_s3cret")
286
+ pn = scaleway.network.PrivateNetwork("pn")
287
+ replica = scaleway.databases.ReadReplica("replica",
288
+ instance_id=instance.id,
289
+ private_network={
290
+ "private_network_id": pn.id,
291
+ "enable_ipam": True,
292
+ })
293
+ ```
294
+
295
+ ## Import
296
+
297
+ Read Replicas can be imported using the `{region}/{id}`, e.g.
298
+
299
+ bash
300
+
301
+ ```sh
302
+ $ pulumi import scaleway:databases/readReplica:ReadReplica rr fr-par/11111111-1111-1111-1111-111111111111
303
+ ```
304
+
305
+ :param str resource_name: The name of the resource.
306
+ :param pulumi.ResourceOptions opts: Options for the resource.
307
+ :param pulumi.Input[Union['ReadReplicaDirectAccessArgs', 'ReadReplicaDirectAccessArgsDict']] direct_access: Creates a direct access endpoint to rdb replica.
308
+ :param pulumi.Input[str] instance_id: UUID of the rdb instance.
309
+
310
+ > **Important:** The replica musts contains at least one `direct_access` or `private_network`. It can contain both.
311
+ :param pulumi.Input[Union['ReadReplicaPrivateNetworkArgs', 'ReadReplicaPrivateNetworkArgsDict']] private_network: Create an endpoint in a Private Netork.
312
+ :param pulumi.Input[str] region: `region`) The region
313
+ in which the Read Replica should be created.
314
+ :param pulumi.Input[bool] same_zone: Defines whether to create the replica in the same availability zone as the main instance nodes or not.
315
+ """
316
+ ...
317
+ @overload
318
+ def __init__(__self__,
319
+ resource_name: str,
320
+ args: ReadReplicaArgs,
321
+ opts: Optional[pulumi.ResourceOptions] = None):
322
+ """
323
+ Creates and manages Read Replicas.
324
+ For more information refer to the [API documentation](https://www.scaleway.com/en/developers/api/managed-database-postgre-mysql/).
325
+
326
+ ## Example Usage
327
+
328
+ ### Basic
329
+
330
+ ```python
331
+ import pulumi
332
+ import pulumiverse_scaleway as scaleway
333
+
334
+ instance = scaleway.databases.Instance("instance",
335
+ name="test-rdb-rr-update",
336
+ node_type="db-dev-s",
337
+ engine="PostgreSQL-14",
338
+ is_ha_cluster=False,
339
+ disable_backup=True,
340
+ user_name="my_initial_user",
341
+ password="thiZ_is_v&ry_s3cret",
342
+ tags=[
343
+ "terraform-test",
344
+ "scaleway_rdb_read_replica",
345
+ "minimal",
346
+ ])
347
+ replica = scaleway.databases.ReadReplica("replica",
348
+ instance_id=instance.id,
349
+ direct_access={})
350
+ ```
351
+
352
+ ### Private network with static endpoint
353
+
354
+ ```python
355
+ import pulumi
356
+ import pulumiverse_scaleway as scaleway
357
+
358
+ instance = scaleway.databases.Instance("instance",
359
+ name="rdb_instance",
360
+ node_type="db-dev-s",
361
+ engine="PostgreSQL-14",
362
+ is_ha_cluster=False,
363
+ disable_backup=True,
364
+ user_name="my_initial_user",
365
+ password="thiZ_is_v&ry_s3cret")
366
+ pn = scaleway.network.PrivateNetwork("pn")
367
+ replica = scaleway.databases.ReadReplica("replica",
368
+ instance_id=instance.id,
369
+ private_network={
370
+ "private_network_id": pn.id,
371
+ "service_ip": "192.168.1.254/24",
372
+ })
373
+ ```
374
+
375
+ ### Private network with IPAM
376
+
377
+ ```python
378
+ import pulumi
379
+ import pulumiverse_scaleway as scaleway
380
+
381
+ instance = scaleway.databases.Instance("instance",
382
+ name="rdb_instance",
383
+ node_type="db-dev-s",
384
+ engine="PostgreSQL-14",
385
+ is_ha_cluster=False,
386
+ disable_backup=True,
387
+ user_name="my_initial_user",
388
+ password="thiZ_is_v&ry_s3cret")
389
+ pn = scaleway.network.PrivateNetwork("pn")
390
+ replica = scaleway.databases.ReadReplica("replica",
391
+ instance_id=instance.id,
392
+ private_network={
393
+ "private_network_id": pn.id,
394
+ "enable_ipam": True,
395
+ })
396
+ ```
397
+
398
+ ## Import
399
+
400
+ Read Replicas can be imported using the `{region}/{id}`, e.g.
401
+
402
+ bash
403
+
404
+ ```sh
405
+ $ pulumi import scaleway:databases/readReplica:ReadReplica rr fr-par/11111111-1111-1111-1111-111111111111
406
+ ```
407
+
408
+ :param str resource_name: The name of the resource.
409
+ :param ReadReplicaArgs args: The arguments to use to populate this resource's properties.
410
+ :param pulumi.ResourceOptions opts: Options for the resource.
411
+ """
412
+ ...
413
+ def __init__(__self__, resource_name: str, *args, **kwargs):
414
+ resource_args, opts = _utilities.get_resource_args_opts(ReadReplicaArgs, pulumi.ResourceOptions, *args, **kwargs)
415
+ if resource_args is not None:
416
+ __self__._internal_init(resource_name, opts, **resource_args.__dict__)
417
+ else:
418
+ __self__._internal_init(resource_name, *args, **kwargs)
419
+
420
+ def _internal_init(__self__,
421
+ resource_name: str,
422
+ opts: Optional[pulumi.ResourceOptions] = None,
423
+ direct_access: Optional[pulumi.Input[Union['ReadReplicaDirectAccessArgs', 'ReadReplicaDirectAccessArgsDict']]] = None,
424
+ instance_id: Optional[pulumi.Input[str]] = None,
425
+ private_network: Optional[pulumi.Input[Union['ReadReplicaPrivateNetworkArgs', 'ReadReplicaPrivateNetworkArgsDict']]] = None,
426
+ region: Optional[pulumi.Input[str]] = None,
427
+ same_zone: Optional[pulumi.Input[bool]] = None,
428
+ __props__=None):
429
+ opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts)
430
+ if not isinstance(opts, pulumi.ResourceOptions):
431
+ raise TypeError('Expected resource options to be a ResourceOptions instance')
432
+ if opts.id is None:
433
+ if __props__ is not None:
434
+ raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource')
435
+ __props__ = ReadReplicaArgs.__new__(ReadReplicaArgs)
436
+
437
+ __props__.__dict__["direct_access"] = direct_access
438
+ if instance_id is None and not opts.urn:
439
+ raise TypeError("Missing required property 'instance_id'")
440
+ __props__.__dict__["instance_id"] = instance_id
441
+ __props__.__dict__["private_network"] = private_network
442
+ __props__.__dict__["region"] = region
443
+ __props__.__dict__["same_zone"] = same_zone
444
+ alias_opts = pulumi.ResourceOptions(aliases=[pulumi.Alias(type_="scaleway:index/databaseReadReplica:DatabaseReadReplica")])
445
+ opts = pulumi.ResourceOptions.merge(opts, alias_opts)
446
+ super(ReadReplica, __self__).__init__(
447
+ 'scaleway:databases/readReplica:ReadReplica',
448
+ resource_name,
449
+ __props__,
450
+ opts)
451
+
452
+ @staticmethod
453
+ def get(resource_name: str,
454
+ id: pulumi.Input[str],
455
+ opts: Optional[pulumi.ResourceOptions] = None,
456
+ direct_access: Optional[pulumi.Input[Union['ReadReplicaDirectAccessArgs', 'ReadReplicaDirectAccessArgsDict']]] = None,
457
+ instance_id: Optional[pulumi.Input[str]] = None,
458
+ private_network: Optional[pulumi.Input[Union['ReadReplicaPrivateNetworkArgs', 'ReadReplicaPrivateNetworkArgsDict']]] = None,
459
+ region: Optional[pulumi.Input[str]] = None,
460
+ same_zone: Optional[pulumi.Input[bool]] = None) -> 'ReadReplica':
461
+ """
462
+ Get an existing ReadReplica resource's state with the given name, id, and optional extra
463
+ properties used to qualify the lookup.
464
+
465
+ :param str resource_name: The unique name of the resulting resource.
466
+ :param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
467
+ :param pulumi.ResourceOptions opts: Options for the resource.
468
+ :param pulumi.Input[Union['ReadReplicaDirectAccessArgs', 'ReadReplicaDirectAccessArgsDict']] direct_access: Creates a direct access endpoint to rdb replica.
469
+ :param pulumi.Input[str] instance_id: UUID of the rdb instance.
470
+
471
+ > **Important:** The replica musts contains at least one `direct_access` or `private_network`. It can contain both.
472
+ :param pulumi.Input[Union['ReadReplicaPrivateNetworkArgs', 'ReadReplicaPrivateNetworkArgsDict']] private_network: Create an endpoint in a Private Netork.
473
+ :param pulumi.Input[str] region: `region`) The region
474
+ in which the Read Replica should be created.
475
+ :param pulumi.Input[bool] same_zone: Defines whether to create the replica in the same availability zone as the main instance nodes or not.
476
+ """
477
+ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
478
+
479
+ __props__ = _ReadReplicaState.__new__(_ReadReplicaState)
480
+
481
+ __props__.__dict__["direct_access"] = direct_access
482
+ __props__.__dict__["instance_id"] = instance_id
483
+ __props__.__dict__["private_network"] = private_network
484
+ __props__.__dict__["region"] = region
485
+ __props__.__dict__["same_zone"] = same_zone
486
+ return ReadReplica(resource_name, opts=opts, __props__=__props__)
487
+
488
+ @property
489
+ @pulumi.getter(name="directAccess")
490
+ def direct_access(self) -> pulumi.Output[Optional['outputs.ReadReplicaDirectAccess']]:
491
+ """
492
+ Creates a direct access endpoint to rdb replica.
493
+ """
494
+ return pulumi.get(self, "direct_access")
495
+
496
+ @property
497
+ @pulumi.getter(name="instanceId")
498
+ def instance_id(self) -> pulumi.Output[str]:
499
+ """
500
+ UUID of the rdb instance.
501
+
502
+ > **Important:** The replica musts contains at least one `direct_access` or `private_network`. It can contain both.
503
+ """
504
+ return pulumi.get(self, "instance_id")
505
+
506
+ @property
507
+ @pulumi.getter(name="privateNetwork")
508
+ def private_network(self) -> pulumi.Output[Optional['outputs.ReadReplicaPrivateNetwork']]:
509
+ """
510
+ Create an endpoint in a Private Netork.
511
+ """
512
+ return pulumi.get(self, "private_network")
513
+
514
+ @property
515
+ @pulumi.getter
516
+ def region(self) -> pulumi.Output[str]:
517
+ """
518
+ `region`) The region
519
+ in which the Read Replica should be created.
520
+ """
521
+ return pulumi.get(self, "region")
522
+
523
+ @property
524
+ @pulumi.getter(name="sameZone")
525
+ def same_zone(self) -> pulumi.Output[Optional[bool]]:
526
+ """
527
+ Defines whether to create the replica in the same availability zone as the main instance nodes or not.
528
+ """
529
+ return pulumi.get(self, "same_zone")
530
+