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,671 @@
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__ = ['SnapshotArgs', 'Snapshot']
20
+
21
+ @pulumi.input_type
22
+ class SnapshotArgs:
23
+ def __init__(__self__, *,
24
+ import_: Optional[pulumi.Input['SnapshotImportArgs']] = None,
25
+ name: Optional[pulumi.Input[str]] = None,
26
+ project_id: Optional[pulumi.Input[str]] = None,
27
+ tags: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
28
+ type: Optional[pulumi.Input[str]] = None,
29
+ volume_id: Optional[pulumi.Input[str]] = None,
30
+ zone: Optional[pulumi.Input[str]] = None):
31
+ """
32
+ The set of arguments for constructing a Snapshot resource.
33
+ :param pulumi.Input['SnapshotImportArgs'] import_: Import a snapshot from a qcow2 file located in a bucket
34
+ :param pulumi.Input[str] name: The name of the snapshot. If not provided it will be randomly generated.
35
+ :param pulumi.Input[str] project_id: `project_id`) The ID of the project the snapshot is
36
+ associated with.
37
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] tags: A list of tags to apply to the snapshot.
38
+ :param pulumi.Input[str] type: The snapshot's volume type. The possible values are: `b_ssd` (Block SSD), `l_ssd` (Local SSD) and `unified`.
39
+ Updates to this field will recreate a new resource.
40
+ :param pulumi.Input[str] volume_id: The ID of the volume to take a snapshot from.
41
+ :param pulumi.Input[str] zone: `zone`) The zone in which
42
+ the snapshot should be created.
43
+ """
44
+ if import_ is not None:
45
+ pulumi.set(__self__, "import_", import_)
46
+ if name is not None:
47
+ pulumi.set(__self__, "name", name)
48
+ if project_id is not None:
49
+ pulumi.set(__self__, "project_id", project_id)
50
+ if tags is not None:
51
+ pulumi.set(__self__, "tags", tags)
52
+ if type is not None:
53
+ pulumi.set(__self__, "type", type)
54
+ if volume_id is not None:
55
+ pulumi.set(__self__, "volume_id", volume_id)
56
+ if zone is not None:
57
+ pulumi.set(__self__, "zone", zone)
58
+
59
+ @property
60
+ @pulumi.getter(name="import")
61
+ def import_(self) -> Optional[pulumi.Input['SnapshotImportArgs']]:
62
+ """
63
+ Import a snapshot from a qcow2 file located in a bucket
64
+ """
65
+ return pulumi.get(self, "import_")
66
+
67
+ @import_.setter
68
+ def import_(self, value: Optional[pulumi.Input['SnapshotImportArgs']]):
69
+ pulumi.set(self, "import_", value)
70
+
71
+ @property
72
+ @pulumi.getter
73
+ def name(self) -> Optional[pulumi.Input[str]]:
74
+ """
75
+ The name of the snapshot. If not provided it will be randomly generated.
76
+ """
77
+ return pulumi.get(self, "name")
78
+
79
+ @name.setter
80
+ def name(self, value: Optional[pulumi.Input[str]]):
81
+ pulumi.set(self, "name", value)
82
+
83
+ @property
84
+ @pulumi.getter(name="projectId")
85
+ def project_id(self) -> Optional[pulumi.Input[str]]:
86
+ """
87
+ `project_id`) The ID of the project the snapshot is
88
+ associated with.
89
+ """
90
+ return pulumi.get(self, "project_id")
91
+
92
+ @project_id.setter
93
+ def project_id(self, value: Optional[pulumi.Input[str]]):
94
+ pulumi.set(self, "project_id", value)
95
+
96
+ @property
97
+ @pulumi.getter
98
+ def tags(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
99
+ """
100
+ A list of tags to apply to the snapshot.
101
+ """
102
+ return pulumi.get(self, "tags")
103
+
104
+ @tags.setter
105
+ def tags(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
106
+ pulumi.set(self, "tags", value)
107
+
108
+ @property
109
+ @pulumi.getter
110
+ def type(self) -> Optional[pulumi.Input[str]]:
111
+ """
112
+ The snapshot's volume type. The possible values are: `b_ssd` (Block SSD), `l_ssd` (Local SSD) and `unified`.
113
+ Updates to this field will recreate a new resource.
114
+ """
115
+ return pulumi.get(self, "type")
116
+
117
+ @type.setter
118
+ def type(self, value: Optional[pulumi.Input[str]]):
119
+ pulumi.set(self, "type", value)
120
+
121
+ @property
122
+ @pulumi.getter(name="volumeId")
123
+ def volume_id(self) -> Optional[pulumi.Input[str]]:
124
+ """
125
+ The ID of the volume to take a snapshot from.
126
+ """
127
+ return pulumi.get(self, "volume_id")
128
+
129
+ @volume_id.setter
130
+ def volume_id(self, value: Optional[pulumi.Input[str]]):
131
+ pulumi.set(self, "volume_id", value)
132
+
133
+ @property
134
+ @pulumi.getter
135
+ def zone(self) -> Optional[pulumi.Input[str]]:
136
+ """
137
+ `zone`) The zone in which
138
+ the snapshot should be created.
139
+ """
140
+ return pulumi.get(self, "zone")
141
+
142
+ @zone.setter
143
+ def zone(self, value: Optional[pulumi.Input[str]]):
144
+ pulumi.set(self, "zone", value)
145
+
146
+
147
+ @pulumi.input_type
148
+ class _SnapshotState:
149
+ def __init__(__self__, *,
150
+ created_at: Optional[pulumi.Input[str]] = None,
151
+ import_: Optional[pulumi.Input['SnapshotImportArgs']] = None,
152
+ name: Optional[pulumi.Input[str]] = None,
153
+ organization_id: Optional[pulumi.Input[str]] = None,
154
+ project_id: Optional[pulumi.Input[str]] = None,
155
+ size_in_gb: Optional[pulumi.Input[int]] = None,
156
+ tags: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
157
+ type: Optional[pulumi.Input[str]] = None,
158
+ volume_id: Optional[pulumi.Input[str]] = None,
159
+ zone: Optional[pulumi.Input[str]] = None):
160
+ """
161
+ Input properties used for looking up and filtering Snapshot resources.
162
+ :param pulumi.Input[str] created_at: The snapshot creation time.
163
+ :param pulumi.Input['SnapshotImportArgs'] import_: Import a snapshot from a qcow2 file located in a bucket
164
+ :param pulumi.Input[str] name: The name of the snapshot. If not provided it will be randomly generated.
165
+ :param pulumi.Input[str] organization_id: The organization ID the snapshot is associated with.
166
+ :param pulumi.Input[str] project_id: `project_id`) The ID of the project the snapshot is
167
+ associated with.
168
+ :param pulumi.Input[int] size_in_gb: (Optional) The size of the snapshot.
169
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] tags: A list of tags to apply to the snapshot.
170
+ :param pulumi.Input[str] type: The snapshot's volume type. The possible values are: `b_ssd` (Block SSD), `l_ssd` (Local SSD) and `unified`.
171
+ Updates to this field will recreate a new resource.
172
+ :param pulumi.Input[str] volume_id: The ID of the volume to take a snapshot from.
173
+ :param pulumi.Input[str] zone: `zone`) The zone in which
174
+ the snapshot should be created.
175
+ """
176
+ if created_at is not None:
177
+ pulumi.set(__self__, "created_at", created_at)
178
+ if import_ is not None:
179
+ pulumi.set(__self__, "import_", import_)
180
+ if name is not None:
181
+ pulumi.set(__self__, "name", name)
182
+ if organization_id is not None:
183
+ pulumi.set(__self__, "organization_id", organization_id)
184
+ if project_id is not None:
185
+ pulumi.set(__self__, "project_id", project_id)
186
+ if size_in_gb is not None:
187
+ pulumi.set(__self__, "size_in_gb", size_in_gb)
188
+ if tags is not None:
189
+ pulumi.set(__self__, "tags", tags)
190
+ if type is not None:
191
+ pulumi.set(__self__, "type", type)
192
+ if volume_id is not None:
193
+ pulumi.set(__self__, "volume_id", volume_id)
194
+ if zone is not None:
195
+ pulumi.set(__self__, "zone", zone)
196
+
197
+ @property
198
+ @pulumi.getter(name="createdAt")
199
+ def created_at(self) -> Optional[pulumi.Input[str]]:
200
+ """
201
+ The snapshot creation time.
202
+ """
203
+ return pulumi.get(self, "created_at")
204
+
205
+ @created_at.setter
206
+ def created_at(self, value: Optional[pulumi.Input[str]]):
207
+ pulumi.set(self, "created_at", value)
208
+
209
+ @property
210
+ @pulumi.getter(name="import")
211
+ def import_(self) -> Optional[pulumi.Input['SnapshotImportArgs']]:
212
+ """
213
+ Import a snapshot from a qcow2 file located in a bucket
214
+ """
215
+ return pulumi.get(self, "import_")
216
+
217
+ @import_.setter
218
+ def import_(self, value: Optional[pulumi.Input['SnapshotImportArgs']]):
219
+ pulumi.set(self, "import_", value)
220
+
221
+ @property
222
+ @pulumi.getter
223
+ def name(self) -> Optional[pulumi.Input[str]]:
224
+ """
225
+ The name of the snapshot. If not provided it will be randomly generated.
226
+ """
227
+ return pulumi.get(self, "name")
228
+
229
+ @name.setter
230
+ def name(self, value: Optional[pulumi.Input[str]]):
231
+ pulumi.set(self, "name", value)
232
+
233
+ @property
234
+ @pulumi.getter(name="organizationId")
235
+ def organization_id(self) -> Optional[pulumi.Input[str]]:
236
+ """
237
+ The organization ID the snapshot is associated with.
238
+ """
239
+ return pulumi.get(self, "organization_id")
240
+
241
+ @organization_id.setter
242
+ def organization_id(self, value: Optional[pulumi.Input[str]]):
243
+ pulumi.set(self, "organization_id", value)
244
+
245
+ @property
246
+ @pulumi.getter(name="projectId")
247
+ def project_id(self) -> Optional[pulumi.Input[str]]:
248
+ """
249
+ `project_id`) The ID of the project the snapshot is
250
+ associated with.
251
+ """
252
+ return pulumi.get(self, "project_id")
253
+
254
+ @project_id.setter
255
+ def project_id(self, value: Optional[pulumi.Input[str]]):
256
+ pulumi.set(self, "project_id", value)
257
+
258
+ @property
259
+ @pulumi.getter(name="sizeInGb")
260
+ def size_in_gb(self) -> Optional[pulumi.Input[int]]:
261
+ """
262
+ (Optional) The size of the snapshot.
263
+ """
264
+ return pulumi.get(self, "size_in_gb")
265
+
266
+ @size_in_gb.setter
267
+ def size_in_gb(self, value: Optional[pulumi.Input[int]]):
268
+ pulumi.set(self, "size_in_gb", value)
269
+
270
+ @property
271
+ @pulumi.getter
272
+ def tags(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
273
+ """
274
+ A list of tags to apply to the snapshot.
275
+ """
276
+ return pulumi.get(self, "tags")
277
+
278
+ @tags.setter
279
+ def tags(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
280
+ pulumi.set(self, "tags", value)
281
+
282
+ @property
283
+ @pulumi.getter
284
+ def type(self) -> Optional[pulumi.Input[str]]:
285
+ """
286
+ The snapshot's volume type. The possible values are: `b_ssd` (Block SSD), `l_ssd` (Local SSD) and `unified`.
287
+ Updates to this field will recreate a new resource.
288
+ """
289
+ return pulumi.get(self, "type")
290
+
291
+ @type.setter
292
+ def type(self, value: Optional[pulumi.Input[str]]):
293
+ pulumi.set(self, "type", value)
294
+
295
+ @property
296
+ @pulumi.getter(name="volumeId")
297
+ def volume_id(self) -> Optional[pulumi.Input[str]]:
298
+ """
299
+ The ID of the volume to take a snapshot from.
300
+ """
301
+ return pulumi.get(self, "volume_id")
302
+
303
+ @volume_id.setter
304
+ def volume_id(self, value: Optional[pulumi.Input[str]]):
305
+ pulumi.set(self, "volume_id", value)
306
+
307
+ @property
308
+ @pulumi.getter
309
+ def zone(self) -> Optional[pulumi.Input[str]]:
310
+ """
311
+ `zone`) The zone in which
312
+ the snapshot should be created.
313
+ """
314
+ return pulumi.get(self, "zone")
315
+
316
+ @zone.setter
317
+ def zone(self, value: Optional[pulumi.Input[str]]):
318
+ pulumi.set(self, "zone", value)
319
+
320
+
321
+ class Snapshot(pulumi.CustomResource):
322
+ @overload
323
+ def __init__(__self__,
324
+ resource_name: str,
325
+ opts: Optional[pulumi.ResourceOptions] = None,
326
+ import_: Optional[pulumi.Input[Union['SnapshotImportArgs', 'SnapshotImportArgsDict']]] = None,
327
+ name: Optional[pulumi.Input[str]] = None,
328
+ project_id: Optional[pulumi.Input[str]] = None,
329
+ tags: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
330
+ type: Optional[pulumi.Input[str]] = None,
331
+ volume_id: Optional[pulumi.Input[str]] = None,
332
+ zone: Optional[pulumi.Input[str]] = None,
333
+ __props__=None):
334
+ """
335
+ Creates and manages Scaleway Compute Snapshots.
336
+ For more information,
337
+ see the [API documentation](https://www.scaleway.com/en/developers/api/instance/#path-snapshots-list-snapshots).
338
+
339
+ ## Example Usage
340
+
341
+ ```python
342
+ import pulumi
343
+ import pulumiverse_scaleway as scaleway
344
+
345
+ main = scaleway.instance.Snapshot("main",
346
+ name="some-snapshot-name",
347
+ volume_id="11111111-1111-1111-1111-111111111111")
348
+ ```
349
+
350
+ ### Example with Unified type snapshot
351
+
352
+ ```python
353
+ import pulumi
354
+ import pulumiverse_scaleway as scaleway
355
+
356
+ main = scaleway.instance.Volume("main",
357
+ type="l_ssd",
358
+ size_in_gb=10)
359
+ main_server = scaleway.instance.Server("main",
360
+ image="ubuntu_jammy",
361
+ type="DEV1-S",
362
+ root_volume={
363
+ "size_in_gb": 10,
364
+ "volume_type": "l_ssd",
365
+ },
366
+ additional_volume_ids=[main.id])
367
+ main_snapshot = scaleway.instance.Snapshot("main",
368
+ volume_id=main.id,
369
+ type="unified",
370
+ opts = pulumi.ResourceOptions(depends_on=[main_server]))
371
+ ```
372
+
373
+ ### Example importing a local qcow2 file
374
+
375
+ ```python
376
+ import pulumi
377
+ import pulumiverse_scaleway as scaleway
378
+
379
+ bucket = scaleway.object.Bucket("bucket", name="snapshot-qcow-import")
380
+ qcow = scaleway.object.Item("qcow",
381
+ bucket=bucket.name,
382
+ key="server.qcow2",
383
+ file="myqcow.qcow2")
384
+ snapshot = scaleway.instance.Snapshot("snapshot",
385
+ type="unified",
386
+ import_={
387
+ "bucket": qcow.bucket,
388
+ "key": qcow.key,
389
+ })
390
+ ```
391
+
392
+ ## Import
393
+
394
+ Snapshots can be imported using the `{zone}/{id}`, e.g.
395
+
396
+ bash
397
+
398
+ ```sh
399
+ $ pulumi import scaleway:instance/snapshot:Snapshot main fr-par-1/11111111-1111-1111-1111-111111111111
400
+ ```
401
+
402
+ :param str resource_name: The name of the resource.
403
+ :param pulumi.ResourceOptions opts: Options for the resource.
404
+ :param pulumi.Input[Union['SnapshotImportArgs', 'SnapshotImportArgsDict']] import_: Import a snapshot from a qcow2 file located in a bucket
405
+ :param pulumi.Input[str] name: The name of the snapshot. If not provided it will be randomly generated.
406
+ :param pulumi.Input[str] project_id: `project_id`) The ID of the project the snapshot is
407
+ associated with.
408
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] tags: A list of tags to apply to the snapshot.
409
+ :param pulumi.Input[str] type: The snapshot's volume type. The possible values are: `b_ssd` (Block SSD), `l_ssd` (Local SSD) and `unified`.
410
+ Updates to this field will recreate a new resource.
411
+ :param pulumi.Input[str] volume_id: The ID of the volume to take a snapshot from.
412
+ :param pulumi.Input[str] zone: `zone`) The zone in which
413
+ the snapshot should be created.
414
+ """
415
+ ...
416
+ @overload
417
+ def __init__(__self__,
418
+ resource_name: str,
419
+ args: Optional[SnapshotArgs] = None,
420
+ opts: Optional[pulumi.ResourceOptions] = None):
421
+ """
422
+ Creates and manages Scaleway Compute Snapshots.
423
+ For more information,
424
+ see the [API documentation](https://www.scaleway.com/en/developers/api/instance/#path-snapshots-list-snapshots).
425
+
426
+ ## Example Usage
427
+
428
+ ```python
429
+ import pulumi
430
+ import pulumiverse_scaleway as scaleway
431
+
432
+ main = scaleway.instance.Snapshot("main",
433
+ name="some-snapshot-name",
434
+ volume_id="11111111-1111-1111-1111-111111111111")
435
+ ```
436
+
437
+ ### Example with Unified type snapshot
438
+
439
+ ```python
440
+ import pulumi
441
+ import pulumiverse_scaleway as scaleway
442
+
443
+ main = scaleway.instance.Volume("main",
444
+ type="l_ssd",
445
+ size_in_gb=10)
446
+ main_server = scaleway.instance.Server("main",
447
+ image="ubuntu_jammy",
448
+ type="DEV1-S",
449
+ root_volume={
450
+ "size_in_gb": 10,
451
+ "volume_type": "l_ssd",
452
+ },
453
+ additional_volume_ids=[main.id])
454
+ main_snapshot = scaleway.instance.Snapshot("main",
455
+ volume_id=main.id,
456
+ type="unified",
457
+ opts = pulumi.ResourceOptions(depends_on=[main_server]))
458
+ ```
459
+
460
+ ### Example importing a local qcow2 file
461
+
462
+ ```python
463
+ import pulumi
464
+ import pulumiverse_scaleway as scaleway
465
+
466
+ bucket = scaleway.object.Bucket("bucket", name="snapshot-qcow-import")
467
+ qcow = scaleway.object.Item("qcow",
468
+ bucket=bucket.name,
469
+ key="server.qcow2",
470
+ file="myqcow.qcow2")
471
+ snapshot = scaleway.instance.Snapshot("snapshot",
472
+ type="unified",
473
+ import_={
474
+ "bucket": qcow.bucket,
475
+ "key": qcow.key,
476
+ })
477
+ ```
478
+
479
+ ## Import
480
+
481
+ Snapshots can be imported using the `{zone}/{id}`, e.g.
482
+
483
+ bash
484
+
485
+ ```sh
486
+ $ pulumi import scaleway:instance/snapshot:Snapshot main fr-par-1/11111111-1111-1111-1111-111111111111
487
+ ```
488
+
489
+ :param str resource_name: The name of the resource.
490
+ :param SnapshotArgs args: The arguments to use to populate this resource's properties.
491
+ :param pulumi.ResourceOptions opts: Options for the resource.
492
+ """
493
+ ...
494
+ def __init__(__self__, resource_name: str, *args, **kwargs):
495
+ resource_args, opts = _utilities.get_resource_args_opts(SnapshotArgs, pulumi.ResourceOptions, *args, **kwargs)
496
+ if resource_args is not None:
497
+ __self__._internal_init(resource_name, opts, **resource_args.__dict__)
498
+ else:
499
+ __self__._internal_init(resource_name, *args, **kwargs)
500
+
501
+ def _internal_init(__self__,
502
+ resource_name: str,
503
+ opts: Optional[pulumi.ResourceOptions] = None,
504
+ import_: Optional[pulumi.Input[Union['SnapshotImportArgs', 'SnapshotImportArgsDict']]] = None,
505
+ name: Optional[pulumi.Input[str]] = None,
506
+ project_id: Optional[pulumi.Input[str]] = None,
507
+ tags: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
508
+ type: Optional[pulumi.Input[str]] = None,
509
+ volume_id: Optional[pulumi.Input[str]] = None,
510
+ zone: Optional[pulumi.Input[str]] = None,
511
+ __props__=None):
512
+ opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts)
513
+ if not isinstance(opts, pulumi.ResourceOptions):
514
+ raise TypeError('Expected resource options to be a ResourceOptions instance')
515
+ if opts.id is None:
516
+ if __props__ is not None:
517
+ raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource')
518
+ __props__ = SnapshotArgs.__new__(SnapshotArgs)
519
+
520
+ __props__.__dict__["import_"] = import_
521
+ __props__.__dict__["name"] = name
522
+ __props__.__dict__["project_id"] = project_id
523
+ __props__.__dict__["tags"] = tags
524
+ __props__.__dict__["type"] = type
525
+ __props__.__dict__["volume_id"] = volume_id
526
+ __props__.__dict__["zone"] = zone
527
+ __props__.__dict__["created_at"] = None
528
+ __props__.__dict__["organization_id"] = None
529
+ __props__.__dict__["size_in_gb"] = None
530
+ alias_opts = pulumi.ResourceOptions(aliases=[pulumi.Alias(type_="scaleway:index/instanceSnapshot:InstanceSnapshot")])
531
+ opts = pulumi.ResourceOptions.merge(opts, alias_opts)
532
+ super(Snapshot, __self__).__init__(
533
+ 'scaleway:instance/snapshot:Snapshot',
534
+ resource_name,
535
+ __props__,
536
+ opts)
537
+
538
+ @staticmethod
539
+ def get(resource_name: str,
540
+ id: pulumi.Input[str],
541
+ opts: Optional[pulumi.ResourceOptions] = None,
542
+ created_at: Optional[pulumi.Input[str]] = None,
543
+ import_: Optional[pulumi.Input[Union['SnapshotImportArgs', 'SnapshotImportArgsDict']]] = None,
544
+ name: Optional[pulumi.Input[str]] = None,
545
+ organization_id: Optional[pulumi.Input[str]] = None,
546
+ project_id: Optional[pulumi.Input[str]] = None,
547
+ size_in_gb: Optional[pulumi.Input[int]] = None,
548
+ tags: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
549
+ type: Optional[pulumi.Input[str]] = None,
550
+ volume_id: Optional[pulumi.Input[str]] = None,
551
+ zone: Optional[pulumi.Input[str]] = None) -> 'Snapshot':
552
+ """
553
+ Get an existing Snapshot resource's state with the given name, id, and optional extra
554
+ properties used to qualify the lookup.
555
+
556
+ :param str resource_name: The unique name of the resulting resource.
557
+ :param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
558
+ :param pulumi.ResourceOptions opts: Options for the resource.
559
+ :param pulumi.Input[str] created_at: The snapshot creation time.
560
+ :param pulumi.Input[Union['SnapshotImportArgs', 'SnapshotImportArgsDict']] import_: Import a snapshot from a qcow2 file located in a bucket
561
+ :param pulumi.Input[str] name: The name of the snapshot. If not provided it will be randomly generated.
562
+ :param pulumi.Input[str] organization_id: The organization ID the snapshot is associated with.
563
+ :param pulumi.Input[str] project_id: `project_id`) The ID of the project the snapshot is
564
+ associated with.
565
+ :param pulumi.Input[int] size_in_gb: (Optional) The size of the snapshot.
566
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] tags: A list of tags to apply to the snapshot.
567
+ :param pulumi.Input[str] type: The snapshot's volume type. The possible values are: `b_ssd` (Block SSD), `l_ssd` (Local SSD) and `unified`.
568
+ Updates to this field will recreate a new resource.
569
+ :param pulumi.Input[str] volume_id: The ID of the volume to take a snapshot from.
570
+ :param pulumi.Input[str] zone: `zone`) The zone in which
571
+ the snapshot should be created.
572
+ """
573
+ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
574
+
575
+ __props__ = _SnapshotState.__new__(_SnapshotState)
576
+
577
+ __props__.__dict__["created_at"] = created_at
578
+ __props__.__dict__["import_"] = import_
579
+ __props__.__dict__["name"] = name
580
+ __props__.__dict__["organization_id"] = organization_id
581
+ __props__.__dict__["project_id"] = project_id
582
+ __props__.__dict__["size_in_gb"] = size_in_gb
583
+ __props__.__dict__["tags"] = tags
584
+ __props__.__dict__["type"] = type
585
+ __props__.__dict__["volume_id"] = volume_id
586
+ __props__.__dict__["zone"] = zone
587
+ return Snapshot(resource_name, opts=opts, __props__=__props__)
588
+
589
+ @property
590
+ @pulumi.getter(name="createdAt")
591
+ def created_at(self) -> pulumi.Output[str]:
592
+ """
593
+ The snapshot creation time.
594
+ """
595
+ return pulumi.get(self, "created_at")
596
+
597
+ @property
598
+ @pulumi.getter(name="import")
599
+ def import_(self) -> pulumi.Output[Optional['outputs.SnapshotImport']]:
600
+ """
601
+ Import a snapshot from a qcow2 file located in a bucket
602
+ """
603
+ return pulumi.get(self, "import_")
604
+
605
+ @property
606
+ @pulumi.getter
607
+ def name(self) -> pulumi.Output[str]:
608
+ """
609
+ The name of the snapshot. If not provided it will be randomly generated.
610
+ """
611
+ return pulumi.get(self, "name")
612
+
613
+ @property
614
+ @pulumi.getter(name="organizationId")
615
+ def organization_id(self) -> pulumi.Output[str]:
616
+ """
617
+ The organization ID the snapshot is associated with.
618
+ """
619
+ return pulumi.get(self, "organization_id")
620
+
621
+ @property
622
+ @pulumi.getter(name="projectId")
623
+ def project_id(self) -> pulumi.Output[str]:
624
+ """
625
+ `project_id`) The ID of the project the snapshot is
626
+ associated with.
627
+ """
628
+ return pulumi.get(self, "project_id")
629
+
630
+ @property
631
+ @pulumi.getter(name="sizeInGb")
632
+ def size_in_gb(self) -> pulumi.Output[int]:
633
+ """
634
+ (Optional) The size of the snapshot.
635
+ """
636
+ return pulumi.get(self, "size_in_gb")
637
+
638
+ @property
639
+ @pulumi.getter
640
+ def tags(self) -> pulumi.Output[Optional[Sequence[str]]]:
641
+ """
642
+ A list of tags to apply to the snapshot.
643
+ """
644
+ return pulumi.get(self, "tags")
645
+
646
+ @property
647
+ @pulumi.getter
648
+ def type(self) -> pulumi.Output[str]:
649
+ """
650
+ The snapshot's volume type. The possible values are: `b_ssd` (Block SSD), `l_ssd` (Local SSD) and `unified`.
651
+ Updates to this field will recreate a new resource.
652
+ """
653
+ return pulumi.get(self, "type")
654
+
655
+ @property
656
+ @pulumi.getter(name="volumeId")
657
+ def volume_id(self) -> pulumi.Output[Optional[str]]:
658
+ """
659
+ The ID of the volume to take a snapshot from.
660
+ """
661
+ return pulumi.get(self, "volume_id")
662
+
663
+ @property
664
+ @pulumi.getter
665
+ def zone(self) -> pulumi.Output[str]:
666
+ """
667
+ `zone`) The zone in which
668
+ the snapshot should be created.
669
+ """
670
+ return pulumi.get(self, "zone")
671
+