pulumiverse-scaleway 1.25.0a1742464679__py3-none-any.whl → 1.26.0a1742897201__py3-none-any.whl

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