pulumiverse-scaleway 1.27.0a1744869119__py3-none-any.whl → 1.39.0a1764841480__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 (515) hide show
  1. pulumiverse_scaleway/__init__.py +109 -2
  2. pulumiverse_scaleway/_inputs.py +3936 -2603
  3. pulumiverse_scaleway/_utilities.py +1 -1
  4. pulumiverse_scaleway/account/__init__.py +4 -1
  5. pulumiverse_scaleway/account/get_availability_zones.py +12 -12
  6. pulumiverse_scaleway/account/get_project.py +28 -28
  7. pulumiverse_scaleway/account/get_projects.py +241 -0
  8. pulumiverse_scaleway/account/get_ssh_key.py +34 -34
  9. pulumiverse_scaleway/account/outputs.py +95 -0
  10. pulumiverse_scaleway/account/project.py +72 -71
  11. pulumiverse_scaleway/account/ssh_key.py +107 -106
  12. pulumiverse_scaleway/account_project.py +72 -71
  13. pulumiverse_scaleway/account_ssh_key.py +107 -106
  14. pulumiverse_scaleway/apple_silicon_server.py +334 -201
  15. pulumiverse_scaleway/applesilicon/__init__.py +2 -1
  16. pulumiverse_scaleway/applesilicon/_inputs.py +105 -51
  17. pulumiverse_scaleway/applesilicon/outputs.py +65 -33
  18. pulumiverse_scaleway/applesilicon/server.py +334 -201
  19. pulumiverse_scaleway/audittrail/__init__.py +10 -0
  20. pulumiverse_scaleway/audittrail/get_event.py +410 -0
  21. pulumiverse_scaleway/audittrail/outputs.py +234 -0
  22. pulumiverse_scaleway/autoscaling/__init__.py +13 -0
  23. pulumiverse_scaleway/autoscaling/_inputs.py +558 -0
  24. pulumiverse_scaleway/autoscaling/instance_group.py +807 -0
  25. pulumiverse_scaleway/autoscaling/instance_policy.py +634 -0
  26. pulumiverse_scaleway/autoscaling/instance_template.py +878 -0
  27. pulumiverse_scaleway/autoscaling/outputs.py +438 -0
  28. pulumiverse_scaleway/baremetal_server.py +622 -524
  29. pulumiverse_scaleway/billing/__init__.py +2 -1
  30. pulumiverse_scaleway/billing/get_consumptions.py +19 -15
  31. pulumiverse_scaleway/billing/get_invoices.py +25 -25
  32. pulumiverse_scaleway/billing/outputs.py +96 -96
  33. pulumiverse_scaleway/block/__init__.py +4 -1
  34. pulumiverse_scaleway/block/_inputs.py +125 -0
  35. pulumiverse_scaleway/block/get_snapshot.py +60 -37
  36. pulumiverse_scaleway/block/get_volume.py +38 -38
  37. pulumiverse_scaleway/block/outputs.py +139 -0
  38. pulumiverse_scaleway/block/snapshot.py +272 -98
  39. pulumiverse_scaleway/block/volume.py +145 -144
  40. pulumiverse_scaleway/block_snapshot.py +272 -98
  41. pulumiverse_scaleway/block_volume.py +145 -144
  42. pulumiverse_scaleway/cockpit.py +71 -49
  43. pulumiverse_scaleway/cockpit_alert_manager.py +66 -65
  44. pulumiverse_scaleway/cockpit_grafana_user.py +72 -113
  45. pulumiverse_scaleway/cockpit_source.py +142 -141
  46. pulumiverse_scaleway/cockpit_token.py +84 -83
  47. pulumiverse_scaleway/config/__init__.py +2 -1
  48. pulumiverse_scaleway/config/__init__.pyi +2 -2
  49. pulumiverse_scaleway/config/vars.py +11 -11
  50. pulumiverse_scaleway/container.py +653 -424
  51. pulumiverse_scaleway/container_cron.py +97 -96
  52. pulumiverse_scaleway/container_domain.py +63 -62
  53. pulumiverse_scaleway/container_namespace.py +251 -172
  54. pulumiverse_scaleway/container_token.py +97 -96
  55. pulumiverse_scaleway/container_trigger.py +77 -76
  56. pulumiverse_scaleway/containers/__init__.py +2 -1
  57. pulumiverse_scaleway/containers/_inputs.py +87 -87
  58. pulumiverse_scaleway/containers/container.py +653 -424
  59. pulumiverse_scaleway/containers/cron.py +97 -96
  60. pulumiverse_scaleway/containers/domain.py +63 -62
  61. pulumiverse_scaleway/containers/get_container.py +117 -73
  62. pulumiverse_scaleway/containers/get_namespace.py +56 -45
  63. pulumiverse_scaleway/containers/namespace.py +251 -172
  64. pulumiverse_scaleway/containers/outputs.py +84 -84
  65. pulumiverse_scaleway/containers/token.py +97 -96
  66. pulumiverse_scaleway/containers/trigger.py +77 -76
  67. pulumiverse_scaleway/database.py +81 -80
  68. pulumiverse_scaleway/database_acl.py +148 -39
  69. pulumiverse_scaleway/database_backup.py +124 -123
  70. pulumiverse_scaleway/database_instance.py +531 -436
  71. pulumiverse_scaleway/database_privilege.py +88 -87
  72. pulumiverse_scaleway/database_read_replica.py +60 -59
  73. pulumiverse_scaleway/database_user.py +171 -98
  74. pulumiverse_scaleway/databases/__init__.py +2 -1
  75. pulumiverse_scaleway/databases/_inputs.py +364 -216
  76. pulumiverse_scaleway/databases/acl.py +148 -39
  77. pulumiverse_scaleway/databases/database.py +81 -80
  78. pulumiverse_scaleway/databases/database_backup.py +124 -123
  79. pulumiverse_scaleway/databases/get_acl.py +17 -17
  80. pulumiverse_scaleway/databases/get_database.py +26 -26
  81. pulumiverse_scaleway/databases/get_database_backup.py +46 -46
  82. pulumiverse_scaleway/databases/get_instance.py +95 -73
  83. pulumiverse_scaleway/databases/get_privilege.py +30 -30
  84. pulumiverse_scaleway/databases/instance.py +531 -436
  85. pulumiverse_scaleway/databases/outputs.py +419 -232
  86. pulumiverse_scaleway/databases/privilege.py +88 -87
  87. pulumiverse_scaleway/databases/read_replica.py +60 -59
  88. pulumiverse_scaleway/databases/serverless_database.py +97 -96
  89. pulumiverse_scaleway/databases/snapshot.py +127 -126
  90. pulumiverse_scaleway/databases/user.py +171 -98
  91. pulumiverse_scaleway/datawarehouse/__init__.py +13 -0
  92. pulumiverse_scaleway/datawarehouse/_inputs.py +149 -0
  93. pulumiverse_scaleway/datawarehouse/database.py +338 -0
  94. pulumiverse_scaleway/datawarehouse/deployment.py +821 -0
  95. pulumiverse_scaleway/datawarehouse/outputs.py +113 -0
  96. pulumiverse_scaleway/datawarehouse/user.py +451 -0
  97. pulumiverse_scaleway/domain/__init__.py +2 -1
  98. pulumiverse_scaleway/domain/_inputs.py +661 -661
  99. pulumiverse_scaleway/domain/get_record.py +53 -64
  100. pulumiverse_scaleway/domain/get_zone.py +36 -30
  101. pulumiverse_scaleway/domain/outputs.py +501 -501
  102. pulumiverse_scaleway/domain/record.py +156 -202
  103. pulumiverse_scaleway/domain/registration.py +123 -122
  104. pulumiverse_scaleway/domain/zone.py +108 -107
  105. pulumiverse_scaleway/domain_record.py +156 -202
  106. pulumiverse_scaleway/domain_zone.py +108 -107
  107. pulumiverse_scaleway/edge_services_backend_stage.py +61 -60
  108. pulumiverse_scaleway/edge_services_cache_stage.py +283 -111
  109. pulumiverse_scaleway/edge_services_dns_stage.py +169 -140
  110. pulumiverse_scaleway/edge_services_head_stage.py +37 -36
  111. pulumiverse_scaleway/edge_services_pipeline.py +125 -82
  112. pulumiverse_scaleway/edge_services_plan.py +37 -36
  113. pulumiverse_scaleway/edge_services_route_stage.py +75 -74
  114. pulumiverse_scaleway/edge_services_tls_stage.py +219 -124
  115. pulumiverse_scaleway/edge_services_waf_stage.py +106 -105
  116. pulumiverse_scaleway/elasticmetal/__init__.py +3 -1
  117. pulumiverse_scaleway/elasticmetal/_inputs.py +203 -129
  118. pulumiverse_scaleway/elasticmetal/get_ip.py +70 -54
  119. pulumiverse_scaleway/elasticmetal/get_ips.py +31 -31
  120. pulumiverse_scaleway/elasticmetal/get_offer.py +43 -41
  121. pulumiverse_scaleway/elasticmetal/get_option.py +24 -24
  122. pulumiverse_scaleway/elasticmetal/get_os.py +28 -28
  123. pulumiverse_scaleway/elasticmetal/get_partition_schema.py +215 -0
  124. pulumiverse_scaleway/elasticmetal/get_server.py +101 -68
  125. pulumiverse_scaleway/elasticmetal/ip.py +170 -169
  126. pulumiverse_scaleway/elasticmetal/ip_mac_address.py +107 -106
  127. pulumiverse_scaleway/elasticmetal/outputs.py +379 -287
  128. pulumiverse_scaleway/elasticmetal/server.py +622 -524
  129. pulumiverse_scaleway/file_filesystem.py +555 -0
  130. pulumiverse_scaleway/flexible_ip.py +170 -169
  131. pulumiverse_scaleway/flexible_ip_mac_address.py +107 -106
  132. pulumiverse_scaleway/function.py +457 -348
  133. pulumiverse_scaleway/function_cron.py +97 -96
  134. pulumiverse_scaleway/function_domain.py +63 -62
  135. pulumiverse_scaleway/function_namespace.py +234 -155
  136. pulumiverse_scaleway/function_token.py +97 -96
  137. pulumiverse_scaleway/function_trigger.py +77 -76
  138. pulumiverse_scaleway/functions/__init__.py +2 -1
  139. pulumiverse_scaleway/functions/_inputs.py +50 -50
  140. pulumiverse_scaleway/functions/cron.py +97 -96
  141. pulumiverse_scaleway/functions/domain.py +63 -62
  142. pulumiverse_scaleway/functions/function.py +457 -348
  143. pulumiverse_scaleway/functions/get_function.py +93 -71
  144. pulumiverse_scaleway/functions/get_namespace.py +54 -43
  145. pulumiverse_scaleway/functions/namespace.py +234 -155
  146. pulumiverse_scaleway/functions/outputs.py +34 -34
  147. pulumiverse_scaleway/functions/token.py +97 -96
  148. pulumiverse_scaleway/functions/trigger.py +77 -76
  149. pulumiverse_scaleway/get_account_project.py +28 -28
  150. pulumiverse_scaleway/get_account_ssh_key.py +34 -34
  151. pulumiverse_scaleway/get_availability_zones.py +12 -12
  152. pulumiverse_scaleway/get_baremetal_offer.py +43 -41
  153. pulumiverse_scaleway/get_baremetal_option.py +24 -24
  154. pulumiverse_scaleway/get_baremetal_os.py +28 -28
  155. pulumiverse_scaleway/get_baremetal_server.py +101 -68
  156. pulumiverse_scaleway/get_billing_consumptions.py +19 -15
  157. pulumiverse_scaleway/get_billing_invoices.py +25 -25
  158. pulumiverse_scaleway/get_block_snapshot.py +60 -37
  159. pulumiverse_scaleway/get_block_volume.py +38 -38
  160. pulumiverse_scaleway/get_cockpit.py +16 -16
  161. pulumiverse_scaleway/get_cockpit_source.py +88 -45
  162. pulumiverse_scaleway/get_config.py +24 -24
  163. pulumiverse_scaleway/get_container.py +117 -73
  164. pulumiverse_scaleway/get_container_namespace.py +56 -45
  165. pulumiverse_scaleway/get_database.py +26 -26
  166. pulumiverse_scaleway/get_database_acl.py +17 -17
  167. pulumiverse_scaleway/get_database_backup.py +46 -46
  168. pulumiverse_scaleway/get_database_instance.py +95 -73
  169. pulumiverse_scaleway/get_database_privilege.py +30 -30
  170. pulumiverse_scaleway/get_domain_record.py +53 -64
  171. pulumiverse_scaleway/get_domain_zone.py +36 -30
  172. pulumiverse_scaleway/get_flexible_ip.py +70 -54
  173. pulumiverse_scaleway/get_flexible_ips.py +31 -31
  174. pulumiverse_scaleway/get_function.py +93 -71
  175. pulumiverse_scaleway/get_function_namespace.py +54 -43
  176. pulumiverse_scaleway/get_iam_api_key.py +28 -28
  177. pulumiverse_scaleway/get_iam_application.py +32 -32
  178. pulumiverse_scaleway/get_iam_group.py +36 -36
  179. pulumiverse_scaleway/get_iam_ssh_key.py +34 -34
  180. pulumiverse_scaleway/get_iam_user.py +30 -30
  181. pulumiverse_scaleway/get_instance_image.py +58 -58
  182. pulumiverse_scaleway/get_instance_ip.py +42 -30
  183. pulumiverse_scaleway/get_instance_placement_group.py +38 -38
  184. pulumiverse_scaleway/get_instance_private_nic.py +53 -41
  185. pulumiverse_scaleway/get_instance_security_group.py +46 -46
  186. pulumiverse_scaleway/get_instance_server.py +108 -145
  187. pulumiverse_scaleway/get_instance_servers.py +31 -31
  188. pulumiverse_scaleway/get_instance_snapshot.py +41 -41
  189. pulumiverse_scaleway/get_instance_volume.py +42 -42
  190. pulumiverse_scaleway/get_iot_device.py +46 -46
  191. pulumiverse_scaleway/get_iot_hub.py +60 -60
  192. pulumiverse_scaleway/get_ipam_ip.py +65 -65
  193. pulumiverse_scaleway/get_ipam_ips.py +56 -56
  194. pulumiverse_scaleway/get_k8s_version.py +34 -23
  195. pulumiverse_scaleway/get_kubernetes_cluster.py +98 -65
  196. pulumiverse_scaleway/get_kubernetes_node_pool.py +86 -75
  197. pulumiverse_scaleway/get_lb_acls.py +29 -29
  198. pulumiverse_scaleway/get_lb_backend.py +75 -75
  199. pulumiverse_scaleway/get_lb_backends.py +29 -29
  200. pulumiverse_scaleway/get_lb_frontend.py +76 -43
  201. pulumiverse_scaleway/get_lb_frontends.py +29 -29
  202. pulumiverse_scaleway/get_lb_ips.py +37 -37
  203. pulumiverse_scaleway/get_lb_route.py +36 -25
  204. pulumiverse_scaleway/get_lb_routes.py +23 -23
  205. pulumiverse_scaleway/get_lbs.py +31 -31
  206. pulumiverse_scaleway/get_loadbalancer.py +78 -56
  207. pulumiverse_scaleway/get_loadbalancer_certificate.py +96 -36
  208. pulumiverse_scaleway/get_loadbalancer_ip.py +40 -40
  209. pulumiverse_scaleway/get_marketplace_image.py +28 -28
  210. pulumiverse_scaleway/get_mnq_sns.py +18 -18
  211. pulumiverse_scaleway/get_mnq_sqs.py +18 -18
  212. pulumiverse_scaleway/get_mongo_db_instance.py +110 -55
  213. pulumiverse_scaleway/get_object_bucket.py +35 -35
  214. pulumiverse_scaleway/get_object_bucket_policy.py +22 -22
  215. pulumiverse_scaleway/get_redis_cluster.py +65 -54
  216. pulumiverse_scaleway/get_registry_image.py +48 -48
  217. pulumiverse_scaleway/get_registry_image_tag.py +44 -44
  218. pulumiverse_scaleway/get_registry_namespace.py +36 -36
  219. pulumiverse_scaleway/get_secret.py +58 -58
  220. pulumiverse_scaleway/get_secret_version.py +46 -46
  221. pulumiverse_scaleway/get_tem_domain.py +103 -70
  222. pulumiverse_scaleway/get_vpc.py +58 -47
  223. pulumiverse_scaleway/get_vpc_gateway_network.py +55 -44
  224. pulumiverse_scaleway/get_vpc_private_network.py +58 -47
  225. pulumiverse_scaleway/get_vpc_public_gateway.py +56 -56
  226. pulumiverse_scaleway/get_vpc_public_gateway_dhcp.py +44 -44
  227. pulumiverse_scaleway/get_vpc_public_gateway_dhcp_reservation.py +44 -44
  228. pulumiverse_scaleway/get_vpc_public_gateway_ip.py +24 -24
  229. pulumiverse_scaleway/get_vpc_public_pat_rule.py +32 -32
  230. pulumiverse_scaleway/get_vpc_routes.py +47 -47
  231. pulumiverse_scaleway/get_vpcs.py +31 -31
  232. pulumiverse_scaleway/get_web_host_offer.py +34 -34
  233. pulumiverse_scaleway/get_webhosting.py +58 -58
  234. pulumiverse_scaleway/hosting/__init__.py +2 -1
  235. pulumiverse_scaleway/hosting/_inputs.py +117 -75
  236. pulumiverse_scaleway/hosting/get_hosting.py +58 -58
  237. pulumiverse_scaleway/hosting/get_offer.py +34 -34
  238. pulumiverse_scaleway/hosting/hosting.py +213 -212
  239. pulumiverse_scaleway/hosting/outputs.py +276 -192
  240. pulumiverse_scaleway/iam/__init__.py +3 -1
  241. pulumiverse_scaleway/iam/_inputs.py +26 -26
  242. pulumiverse_scaleway/iam/api_key.py +142 -141
  243. pulumiverse_scaleway/iam/application.py +98 -97
  244. pulumiverse_scaleway/iam/get_api_key.py +28 -28
  245. pulumiverse_scaleway/iam/get_application.py +32 -32
  246. pulumiverse_scaleway/iam/get_group.py +36 -36
  247. pulumiverse_scaleway/iam/get_policy.py +293 -0
  248. pulumiverse_scaleway/iam/get_ssh_key.py +34 -34
  249. pulumiverse_scaleway/iam/get_user.py +30 -30
  250. pulumiverse_scaleway/iam/group.py +140 -139
  251. pulumiverse_scaleway/iam/group_membership.py +54 -53
  252. pulumiverse_scaleway/iam/outputs.py +70 -18
  253. pulumiverse_scaleway/iam/policy.py +169 -168
  254. pulumiverse_scaleway/iam/ssh_key.py +107 -106
  255. pulumiverse_scaleway/iam/user.py +598 -134
  256. pulumiverse_scaleway/iam_api_key.py +142 -141
  257. pulumiverse_scaleway/iam_application.py +98 -97
  258. pulumiverse_scaleway/iam_group.py +140 -139
  259. pulumiverse_scaleway/iam_group_membership.py +54 -53
  260. pulumiverse_scaleway/iam_policy.py +169 -168
  261. pulumiverse_scaleway/iam_ssh_key.py +107 -106
  262. pulumiverse_scaleway/iam_user.py +598 -134
  263. pulumiverse_scaleway/inference/__init__.py +4 -1
  264. pulumiverse_scaleway/inference/_inputs.py +232 -50
  265. pulumiverse_scaleway/inference/deployment.py +319 -220
  266. pulumiverse_scaleway/inference/get_model.py +299 -0
  267. pulumiverse_scaleway/inference/model.py +684 -0
  268. pulumiverse_scaleway/inference/outputs.py +250 -34
  269. pulumiverse_scaleway/inference_deployment.py +319 -220
  270. pulumiverse_scaleway/instance/__init__.py +3 -1
  271. pulumiverse_scaleway/instance/_inputs.py +650 -437
  272. pulumiverse_scaleway/instance/get_image.py +58 -58
  273. pulumiverse_scaleway/instance/get_ip.py +42 -30
  274. pulumiverse_scaleway/instance/get_placement_group.py +38 -38
  275. pulumiverse_scaleway/instance/get_private_nic.py +53 -41
  276. pulumiverse_scaleway/instance/get_security_group.py +46 -46
  277. pulumiverse_scaleway/instance/get_server.py +108 -145
  278. pulumiverse_scaleway/instance/get_server_type.py +271 -0
  279. pulumiverse_scaleway/instance/get_servers.py +31 -31
  280. pulumiverse_scaleway/instance/get_snapshot.py +41 -41
  281. pulumiverse_scaleway/instance/get_volume.py +42 -42
  282. pulumiverse_scaleway/instance/image.py +260 -205
  283. pulumiverse_scaleway/instance/ip.py +116 -115
  284. pulumiverse_scaleway/instance/ip_reverse_dns.py +54 -53
  285. pulumiverse_scaleway/instance/outputs.py +981 -548
  286. pulumiverse_scaleway/instance/placement_group.py +123 -122
  287. pulumiverse_scaleway/instance/private_nic.py +163 -113
  288. pulumiverse_scaleway/instance/security_group.py +188 -187
  289. pulumiverse_scaleway/instance/security_group_rules.py +42 -41
  290. pulumiverse_scaleway/instance/server.py +590 -562
  291. pulumiverse_scaleway/instance/snapshot.py +150 -157
  292. pulumiverse_scaleway/instance/user_data.py +75 -74
  293. pulumiverse_scaleway/instance/volume.py +174 -159
  294. pulumiverse_scaleway/instance_image.py +260 -205
  295. pulumiverse_scaleway/instance_ip.py +116 -115
  296. pulumiverse_scaleway/instance_ip_reverse_dns.py +54 -53
  297. pulumiverse_scaleway/instance_placement_group.py +123 -122
  298. pulumiverse_scaleway/instance_private_nic.py +163 -113
  299. pulumiverse_scaleway/instance_security_group.py +188 -187
  300. pulumiverse_scaleway/instance_security_group_rules.py +42 -41
  301. pulumiverse_scaleway/instance_server.py +590 -562
  302. pulumiverse_scaleway/instance_snapshot.py +150 -157
  303. pulumiverse_scaleway/instance_user_data.py +75 -74
  304. pulumiverse_scaleway/instance_volume.py +174 -159
  305. pulumiverse_scaleway/iot/__init__.py +2 -1
  306. pulumiverse_scaleway/iot/_inputs.py +119 -119
  307. pulumiverse_scaleway/iot/device.py +156 -193
  308. pulumiverse_scaleway/iot/get_device.py +46 -46
  309. pulumiverse_scaleway/iot/get_hub.py +60 -60
  310. pulumiverse_scaleway/iot/hub.py +259 -258
  311. pulumiverse_scaleway/iot/network.py +115 -114
  312. pulumiverse_scaleway/iot/outputs.py +107 -107
  313. pulumiverse_scaleway/iot/route.py +109 -108
  314. pulumiverse_scaleway/iot_device.py +156 -193
  315. pulumiverse_scaleway/iot_hub.py +259 -258
  316. pulumiverse_scaleway/iot_network.py +115 -114
  317. pulumiverse_scaleway/iot_route.py +109 -108
  318. pulumiverse_scaleway/ipam/__init__.py +2 -1
  319. pulumiverse_scaleway/ipam/_inputs.py +108 -108
  320. pulumiverse_scaleway/ipam/get_ip.py +65 -65
  321. pulumiverse_scaleway/ipam/get_ips.py +56 -56
  322. pulumiverse_scaleway/ipam/ip.py +160 -131
  323. pulumiverse_scaleway/ipam/ip_reverse_dns.py +141 -70
  324. pulumiverse_scaleway/ipam/outputs.py +122 -122
  325. pulumiverse_scaleway/ipam_ip.py +160 -131
  326. pulumiverse_scaleway/ipam_ip_reverse_dns.py +141 -70
  327. pulumiverse_scaleway/job/__init__.py +2 -1
  328. pulumiverse_scaleway/job/_inputs.py +127 -14
  329. pulumiverse_scaleway/job/definition.py +283 -175
  330. pulumiverse_scaleway/job/outputs.py +98 -10
  331. pulumiverse_scaleway/job_definition.py +283 -175
  332. pulumiverse_scaleway/key_manager_key.py +939 -0
  333. pulumiverse_scaleway/kubernetes/__init__.py +3 -1
  334. pulumiverse_scaleway/kubernetes/_inputs.py +388 -185
  335. pulumiverse_scaleway/kubernetes/acl.py +447 -0
  336. pulumiverse_scaleway/kubernetes/cluster.py +594 -307
  337. pulumiverse_scaleway/kubernetes/get_cluster.py +98 -65
  338. pulumiverse_scaleway/kubernetes/get_pool.py +86 -75
  339. pulumiverse_scaleway/kubernetes/get_version.py +34 -23
  340. pulumiverse_scaleway/kubernetes/outputs.py +444 -250
  341. pulumiverse_scaleway/kubernetes/pool.py +427 -365
  342. pulumiverse_scaleway/kubernetes_cluster.py +594 -307
  343. pulumiverse_scaleway/kubernetes_node_pool.py +427 -365
  344. pulumiverse_scaleway/loadbalancer.py +329 -246
  345. pulumiverse_scaleway/loadbalancer_acl.py +102 -101
  346. pulumiverse_scaleway/loadbalancer_backend.py +534 -487
  347. pulumiverse_scaleway/loadbalancer_certificate.py +97 -96
  348. pulumiverse_scaleway/loadbalancer_frontend.py +271 -167
  349. pulumiverse_scaleway/loadbalancer_ip.py +124 -123
  350. pulumiverse_scaleway/loadbalancer_route.py +244 -119
  351. pulumiverse_scaleway/loadbalancers/__init__.py +3 -1
  352. pulumiverse_scaleway/loadbalancers/_inputs.py +367 -273
  353. pulumiverse_scaleway/loadbalancers/acl.py +102 -101
  354. pulumiverse_scaleway/loadbalancers/backend.py +534 -487
  355. pulumiverse_scaleway/loadbalancers/certificate.py +97 -96
  356. pulumiverse_scaleway/loadbalancers/frontend.py +271 -167
  357. pulumiverse_scaleway/loadbalancers/get_acls.py +29 -29
  358. pulumiverse_scaleway/loadbalancers/get_backend.py +75 -75
  359. pulumiverse_scaleway/loadbalancers/get_backends.py +29 -29
  360. pulumiverse_scaleway/loadbalancers/get_certificate.py +96 -36
  361. pulumiverse_scaleway/loadbalancers/get_frontend.py +76 -43
  362. pulumiverse_scaleway/loadbalancers/get_frontends.py +29 -29
  363. pulumiverse_scaleway/loadbalancers/get_ip.py +40 -40
  364. pulumiverse_scaleway/loadbalancers/get_ips.py +37 -37
  365. pulumiverse_scaleway/loadbalancers/get_load_balancer.py +78 -56
  366. pulumiverse_scaleway/loadbalancers/get_load_balancers.py +31 -31
  367. pulumiverse_scaleway/loadbalancers/get_route.py +36 -25
  368. pulumiverse_scaleway/loadbalancers/get_routes.py +23 -23
  369. pulumiverse_scaleway/loadbalancers/ip.py +124 -123
  370. pulumiverse_scaleway/loadbalancers/load_balancer.py +329 -246
  371. pulumiverse_scaleway/loadbalancers/outputs.py +870 -716
  372. pulumiverse_scaleway/loadbalancers/private_network.py +505 -0
  373. pulumiverse_scaleway/loadbalancers/route.py +244 -119
  374. pulumiverse_scaleway/mnq/__init__.py +2 -1
  375. pulumiverse_scaleway/mnq/_inputs.py +90 -38
  376. pulumiverse_scaleway/mnq/get_sns.py +18 -18
  377. pulumiverse_scaleway/mnq/get_sqs.py +18 -18
  378. pulumiverse_scaleway/mnq/nats_account.py +63 -62
  379. pulumiverse_scaleway/mnq/nats_credentials.py +63 -62
  380. pulumiverse_scaleway/mnq/outputs.py +73 -26
  381. pulumiverse_scaleway/mnq/sns.py +46 -45
  382. pulumiverse_scaleway/mnq/sns_credentials.py +82 -81
  383. pulumiverse_scaleway/mnq/sns_topic.py +174 -173
  384. pulumiverse_scaleway/mnq/sns_topic_subscription.py +182 -181
  385. pulumiverse_scaleway/mnq/sqs.py +46 -45
  386. pulumiverse_scaleway/mnq/sqs_credentials.py +82 -81
  387. pulumiverse_scaleway/mnq/sqs_queue.py +392 -232
  388. pulumiverse_scaleway/mnq_nats_account.py +63 -62
  389. pulumiverse_scaleway/mnq_nats_credentials.py +63 -62
  390. pulumiverse_scaleway/mnq_sns.py +46 -45
  391. pulumiverse_scaleway/mnq_sns_credentials.py +82 -81
  392. pulumiverse_scaleway/mnq_sns_topic.py +174 -173
  393. pulumiverse_scaleway/mnq_sns_topic_subscription.py +182 -181
  394. pulumiverse_scaleway/mnq_sqs.py +46 -45
  395. pulumiverse_scaleway/mnq_sqs_credentials.py +82 -81
  396. pulumiverse_scaleway/mnq_sqs_queue.py +392 -232
  397. pulumiverse_scaleway/mongo_db_instance.py +569 -268
  398. pulumiverse_scaleway/mongo_db_snapshot.py +127 -126
  399. pulumiverse_scaleway/mongodb/__init__.py +3 -1
  400. pulumiverse_scaleway/mongodb/_inputs.py +178 -51
  401. pulumiverse_scaleway/mongodb/get_instance.py +110 -55
  402. pulumiverse_scaleway/mongodb/instance.py +569 -268
  403. pulumiverse_scaleway/mongodb/outputs.py +192 -68
  404. pulumiverse_scaleway/mongodb/snapshot.py +127 -126
  405. pulumiverse_scaleway/mongodb/user.py +507 -0
  406. pulumiverse_scaleway/network/__init__.py +2 -1
  407. pulumiverse_scaleway/network/_inputs.py +209 -155
  408. pulumiverse_scaleway/network/acl.py +100 -101
  409. pulumiverse_scaleway/network/gateway_network.py +228 -180
  410. pulumiverse_scaleway/network/get_gateway_network.py +55 -44
  411. pulumiverse_scaleway/network/get_private_network.py +58 -47
  412. pulumiverse_scaleway/network/get_public_gateway.py +56 -56
  413. pulumiverse_scaleway/network/get_public_gateway_dhcp.py +44 -44
  414. pulumiverse_scaleway/network/get_public_gateway_dhcp_reservation.py +44 -44
  415. pulumiverse_scaleway/network/get_public_gateway_ip.py +24 -24
  416. pulumiverse_scaleway/network/get_public_gateway_pat_rule.py +32 -32
  417. pulumiverse_scaleway/network/get_routes.py +47 -47
  418. pulumiverse_scaleway/network/get_vpc.py +58 -47
  419. pulumiverse_scaleway/network/get_vpcs.py +31 -31
  420. pulumiverse_scaleway/network/outputs.py +338 -270
  421. pulumiverse_scaleway/network/private_network.py +203 -155
  422. pulumiverse_scaleway/network/public_gateway.py +261 -260
  423. pulumiverse_scaleway/network/public_gateway_dhcp.py +285 -284
  424. pulumiverse_scaleway/network/public_gateway_dhcp_reservation.py +107 -106
  425. pulumiverse_scaleway/network/public_gateway_ip.py +107 -106
  426. pulumiverse_scaleway/network/public_gateway_ip_reverse_dns.py +54 -53
  427. pulumiverse_scaleway/network/public_gateway_pat_rule.py +132 -131
  428. pulumiverse_scaleway/network/route.py +230 -141
  429. pulumiverse_scaleway/network/vpc.py +172 -124
  430. pulumiverse_scaleway/object/__init__.py +3 -1
  431. pulumiverse_scaleway/object/_inputs.py +202 -166
  432. pulumiverse_scaleway/object/bucket.py +162 -148
  433. pulumiverse_scaleway/object/bucket_acl.py +97 -94
  434. pulumiverse_scaleway/object/bucket_lock_configuration.py +57 -56
  435. pulumiverse_scaleway/object/bucket_policy.py +71 -134
  436. pulumiverse_scaleway/object/bucket_website_configuration.py +104 -85
  437. pulumiverse_scaleway/object/get.py +290 -0
  438. pulumiverse_scaleway/object/get_bucket.py +35 -35
  439. pulumiverse_scaleway/object/get_bucket_policy.py +22 -22
  440. pulumiverse_scaleway/object/item.py +301 -223
  441. pulumiverse_scaleway/object/outputs.py +210 -166
  442. pulumiverse_scaleway/object_bucket.py +162 -148
  443. pulumiverse_scaleway/object_bucket_acl.py +97 -94
  444. pulumiverse_scaleway/object_bucket_lock_configuration.py +57 -56
  445. pulumiverse_scaleway/object_bucket_policy.py +71 -134
  446. pulumiverse_scaleway/object_bucket_website_configuration.py +104 -85
  447. pulumiverse_scaleway/object_item.py +301 -223
  448. pulumiverse_scaleway/observability/__init__.py +4 -2
  449. pulumiverse_scaleway/observability/_inputs.py +106 -106
  450. pulumiverse_scaleway/observability/alert_manager.py +66 -65
  451. pulumiverse_scaleway/observability/cockpit.py +71 -49
  452. pulumiverse_scaleway/observability/get_grafana.py +103 -0
  453. pulumiverse_scaleway/observability/get_instance.py +16 -16
  454. pulumiverse_scaleway/observability/get_source.py +88 -45
  455. pulumiverse_scaleway/observability/get_sources.py +375 -0
  456. pulumiverse_scaleway/observability/grafana_user.py +72 -113
  457. pulumiverse_scaleway/observability/outputs.py +241 -101
  458. pulumiverse_scaleway/observability/source.py +142 -141
  459. pulumiverse_scaleway/observability/token.py +84 -83
  460. pulumiverse_scaleway/outputs.py +5235 -3665
  461. pulumiverse_scaleway/provider.py +107 -82
  462. pulumiverse_scaleway/pulumi-plugin.json +1 -1
  463. pulumiverse_scaleway/rdb_snapshot.py +127 -126
  464. pulumiverse_scaleway/redis/__init__.py +2 -1
  465. pulumiverse_scaleway/redis/_inputs.py +163 -69
  466. pulumiverse_scaleway/redis/cluster.py +273 -225
  467. pulumiverse_scaleway/redis/get_cluster.py +65 -54
  468. pulumiverse_scaleway/redis/outputs.py +199 -87
  469. pulumiverse_scaleway/redis_cluster.py +273 -225
  470. pulumiverse_scaleway/registry/__init__.py +2 -1
  471. pulumiverse_scaleway/registry/get_image.py +48 -48
  472. pulumiverse_scaleway/registry/get_image_tag.py +44 -44
  473. pulumiverse_scaleway/registry/get_namespace.py +36 -36
  474. pulumiverse_scaleway/registry/namespace.py +106 -105
  475. pulumiverse_scaleway/registry_namespace.py +106 -105
  476. pulumiverse_scaleway/sdb_database.py +97 -96
  477. pulumiverse_scaleway/secret.py +188 -179
  478. pulumiverse_scaleway/secret_version.py +107 -106
  479. pulumiverse_scaleway/secrets/__init__.py +2 -1
  480. pulumiverse_scaleway/secrets/_inputs.py +63 -63
  481. pulumiverse_scaleway/secrets/get_secret.py +58 -58
  482. pulumiverse_scaleway/secrets/get_version.py +46 -46
  483. pulumiverse_scaleway/secrets/outputs.py +84 -84
  484. pulumiverse_scaleway/secrets/secret.py +188 -179
  485. pulumiverse_scaleway/secrets/version.py +107 -106
  486. pulumiverse_scaleway/tem/__init__.py +2 -1
  487. pulumiverse_scaleway/tem/_inputs.py +33 -33
  488. pulumiverse_scaleway/tem/blocked_list.py +105 -104
  489. pulumiverse_scaleway/tem/domain.py +384 -257
  490. pulumiverse_scaleway/tem/domain_validation.py +63 -62
  491. pulumiverse_scaleway/tem/get_domain.py +103 -70
  492. pulumiverse_scaleway/tem/get_offer_subscription.py +34 -34
  493. pulumiverse_scaleway/tem/outputs.py +44 -44
  494. pulumiverse_scaleway/tem/webhook.py +132 -131
  495. pulumiverse_scaleway/tem_domain.py +384 -257
  496. pulumiverse_scaleway/tem_domain_validation.py +63 -62
  497. pulumiverse_scaleway/tem_webhook.py +132 -131
  498. pulumiverse_scaleway/vpc.py +172 -124
  499. pulumiverse_scaleway/vpc_gateway_network.py +228 -180
  500. pulumiverse_scaleway/vpc_private_network.py +203 -155
  501. pulumiverse_scaleway/vpc_public_gateway.py +261 -260
  502. pulumiverse_scaleway/vpc_public_gateway_dhcp.py +285 -284
  503. pulumiverse_scaleway/vpc_public_gateway_dhcp_reservation.py +107 -106
  504. pulumiverse_scaleway/vpc_public_gateway_ip.py +107 -106
  505. pulumiverse_scaleway/vpc_public_gateway_ip_reverse_dns.py +54 -53
  506. pulumiverse_scaleway/vpc_public_gateway_pat_rule.py +132 -131
  507. pulumiverse_scaleway/vpc_route.py +230 -141
  508. pulumiverse_scaleway/webhosting.py +213 -212
  509. {pulumiverse_scaleway-1.27.0a1744869119.dist-info → pulumiverse_scaleway-1.39.0a1764841480.dist-info}/METADATA +2 -2
  510. pulumiverse_scaleway-1.39.0a1764841480.dist-info/RECORD +513 -0
  511. {pulumiverse_scaleway-1.27.0a1744869119.dist-info → pulumiverse_scaleway-1.39.0a1764841480.dist-info}/WHEEL +1 -1
  512. pulumiverse_scaleway/get_cockpit_plan.py +0 -129
  513. pulumiverse_scaleway/observability/get_plan.py +0 -125
  514. pulumiverse_scaleway-1.27.0a1744869119.dist-info/RECORD +0 -483
  515. {pulumiverse_scaleway-1.27.0a1744869119.dist-info → pulumiverse_scaleway-1.39.0a1764841480.dist-info}/top_level.txt +0 -0
@@ -1,8 +1,8 @@
1
1
  # coding=utf-8
2
- # *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. ***
2
+ # *** WARNING: this file was generated by pulumi-language-python. ***
3
3
  # *** Do not edit by hand unless you're certain you know what you are doing! ***
4
4
 
5
- import copy
5
+ import builtins as _builtins
6
6
  import warnings
7
7
  import sys
8
8
  import pulumi
@@ -13,112 +13,155 @@ if sys.version_info >= (3, 11):
13
13
  else:
14
14
  from typing_extensions import NotRequired, TypedDict, TypeAlias
15
15
  from . import _utilities
16
+ from . import outputs
17
+ from ._inputs import *
16
18
 
17
19
  __all__ = ['BlockSnapshotArgs', 'BlockSnapshot']
18
20
 
19
21
  @pulumi.input_type
20
22
  class BlockSnapshotArgs:
21
23
  def __init__(__self__, *,
22
- volume_id: pulumi.Input[str],
23
- name: Optional[pulumi.Input[str]] = None,
24
- project_id: Optional[pulumi.Input[str]] = None,
25
- tags: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
26
- zone: Optional[pulumi.Input[str]] = None):
24
+ export: Optional[pulumi.Input['BlockSnapshotExportArgs']] = None,
25
+ import_: Optional[pulumi.Input['BlockSnapshotImportArgs']] = None,
26
+ name: Optional[pulumi.Input[_builtins.str]] = None,
27
+ project_id: Optional[pulumi.Input[_builtins.str]] = None,
28
+ tags: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
29
+ volume_id: Optional[pulumi.Input[_builtins.str]] = None,
30
+ zone: Optional[pulumi.Input[_builtins.str]] = None):
27
31
  """
28
32
  The set of arguments for constructing a BlockSnapshot resource.
29
- :param pulumi.Input[str] volume_id: The ID of the volume to take a snapshot from.
30
- :param pulumi.Input[str] name: The name of the snapshot. If not provided, a name will be randomly generated.
31
- :param pulumi.Input[str] project_id: ). The ID of the Scaleway Project the snapshot is associated with.
32
- :param pulumi.Input[Sequence[pulumi.Input[str]]] tags: A list of tags to apply to the snapshot.
33
- :param pulumi.Input[str] zone: ). The zone in which the snapshot should be created.
34
- """
35
- pulumi.set(__self__, "volume_id", volume_id)
33
+ :param pulumi.Input['BlockSnapshotExportArgs'] export: Use this block to export the volume as a QCOW file to Object Storage.
34
+ :param pulumi.Input['BlockSnapshotImportArgs'] import_: Use this block to import a QCOW image from Object Storage to create a volume.
35
+ :param pulumi.Input[_builtins.str] name: The name of the snapshot. If not provided, a name will be randomly generated.
36
+ :param pulumi.Input[_builtins.str] project_id: ). The ID of the Scaleway Project the snapshot is associated with.
37
+ :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] tags: A list of tags to apply to the snapshot.
38
+ :param pulumi.Input[_builtins.str] volume_id: The ID of the volume to take a snapshot from.
39
+ :param pulumi.Input[_builtins.str] zone: ). The zone in which the snapshot should be created.
40
+ """
41
+ if export is not None:
42
+ pulumi.set(__self__, "export", export)
43
+ if import_ is not None:
44
+ pulumi.set(__self__, "import_", import_)
36
45
  if name is not None:
37
46
  pulumi.set(__self__, "name", name)
38
47
  if project_id is not None:
39
48
  pulumi.set(__self__, "project_id", project_id)
40
49
  if tags is not None:
41
50
  pulumi.set(__self__, "tags", tags)
51
+ if volume_id is not None:
52
+ pulumi.set(__self__, "volume_id", volume_id)
42
53
  if zone is not None:
43
54
  pulumi.set(__self__, "zone", zone)
44
55
 
45
- @property
46
- @pulumi.getter(name="volumeId")
47
- def volume_id(self) -> pulumi.Input[str]:
56
+ @_builtins.property
57
+ @pulumi.getter
58
+ def export(self) -> Optional[pulumi.Input['BlockSnapshotExportArgs']]:
48
59
  """
49
- The ID of the volume to take a snapshot from.
60
+ Use this block to export the volume as a QCOW file to Object Storage.
50
61
  """
51
- return pulumi.get(self, "volume_id")
62
+ return pulumi.get(self, "export")
52
63
 
53
- @volume_id.setter
54
- def volume_id(self, value: pulumi.Input[str]):
55
- pulumi.set(self, "volume_id", value)
64
+ @export.setter
65
+ def export(self, value: Optional[pulumi.Input['BlockSnapshotExportArgs']]):
66
+ pulumi.set(self, "export", value)
56
67
 
57
- @property
68
+ @_builtins.property
69
+ @pulumi.getter(name="import")
70
+ def import_(self) -> Optional[pulumi.Input['BlockSnapshotImportArgs']]:
71
+ """
72
+ Use this block to import a QCOW image from Object Storage to create a volume.
73
+ """
74
+ return pulumi.get(self, "import_")
75
+
76
+ @import_.setter
77
+ def import_(self, value: Optional[pulumi.Input['BlockSnapshotImportArgs']]):
78
+ pulumi.set(self, "import_", value)
79
+
80
+ @_builtins.property
58
81
  @pulumi.getter
59
- def name(self) -> Optional[pulumi.Input[str]]:
82
+ def name(self) -> Optional[pulumi.Input[_builtins.str]]:
60
83
  """
61
84
  The name of the snapshot. If not provided, a name will be randomly generated.
62
85
  """
63
86
  return pulumi.get(self, "name")
64
87
 
65
88
  @name.setter
66
- def name(self, value: Optional[pulumi.Input[str]]):
89
+ def name(self, value: Optional[pulumi.Input[_builtins.str]]):
67
90
  pulumi.set(self, "name", value)
68
91
 
69
- @property
92
+ @_builtins.property
70
93
  @pulumi.getter(name="projectId")
71
- def project_id(self) -> Optional[pulumi.Input[str]]:
94
+ def project_id(self) -> Optional[pulumi.Input[_builtins.str]]:
72
95
  """
73
96
  ). The ID of the Scaleway Project the snapshot is associated with.
74
97
  """
75
98
  return pulumi.get(self, "project_id")
76
99
 
77
100
  @project_id.setter
78
- def project_id(self, value: Optional[pulumi.Input[str]]):
101
+ def project_id(self, value: Optional[pulumi.Input[_builtins.str]]):
79
102
  pulumi.set(self, "project_id", value)
80
103
 
81
- @property
104
+ @_builtins.property
82
105
  @pulumi.getter
83
- def tags(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
106
+ def tags(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]:
84
107
  """
85
108
  A list of tags to apply to the snapshot.
86
109
  """
87
110
  return pulumi.get(self, "tags")
88
111
 
89
112
  @tags.setter
90
- def tags(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
113
+ def tags(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]):
91
114
  pulumi.set(self, "tags", value)
92
115
 
93
- @property
116
+ @_builtins.property
117
+ @pulumi.getter(name="volumeId")
118
+ def volume_id(self) -> Optional[pulumi.Input[_builtins.str]]:
119
+ """
120
+ The ID of the volume to take a snapshot from.
121
+ """
122
+ return pulumi.get(self, "volume_id")
123
+
124
+ @volume_id.setter
125
+ def volume_id(self, value: Optional[pulumi.Input[_builtins.str]]):
126
+ pulumi.set(self, "volume_id", value)
127
+
128
+ @_builtins.property
94
129
  @pulumi.getter
95
- def zone(self) -> Optional[pulumi.Input[str]]:
130
+ def zone(self) -> Optional[pulumi.Input[_builtins.str]]:
96
131
  """
97
132
  ). The zone in which the snapshot should be created.
98
133
  """
99
134
  return pulumi.get(self, "zone")
100
135
 
101
136
  @zone.setter
102
- def zone(self, value: Optional[pulumi.Input[str]]):
137
+ def zone(self, value: Optional[pulumi.Input[_builtins.str]]):
103
138
  pulumi.set(self, "zone", value)
104
139
 
105
140
 
106
141
  @pulumi.input_type
107
142
  class _BlockSnapshotState:
108
143
  def __init__(__self__, *,
109
- name: Optional[pulumi.Input[str]] = None,
110
- project_id: Optional[pulumi.Input[str]] = None,
111
- tags: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
112
- volume_id: Optional[pulumi.Input[str]] = None,
113
- zone: Optional[pulumi.Input[str]] = None):
144
+ export: Optional[pulumi.Input['BlockSnapshotExportArgs']] = None,
145
+ import_: Optional[pulumi.Input['BlockSnapshotImportArgs']] = None,
146
+ name: Optional[pulumi.Input[_builtins.str]] = None,
147
+ project_id: Optional[pulumi.Input[_builtins.str]] = None,
148
+ tags: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
149
+ volume_id: Optional[pulumi.Input[_builtins.str]] = None,
150
+ zone: Optional[pulumi.Input[_builtins.str]] = None):
114
151
  """
115
152
  Input properties used for looking up and filtering BlockSnapshot resources.
116
- :param pulumi.Input[str] name: The name of the snapshot. If not provided, a name will be randomly generated.
117
- :param pulumi.Input[str] project_id: ). The ID of the Scaleway Project the snapshot is associated with.
118
- :param pulumi.Input[Sequence[pulumi.Input[str]]] tags: A list of tags to apply to the snapshot.
119
- :param pulumi.Input[str] volume_id: The ID of the volume to take a snapshot from.
120
- :param pulumi.Input[str] zone: ). The zone in which the snapshot should be created.
121
- """
153
+ :param pulumi.Input['BlockSnapshotExportArgs'] export: Use this block to export the volume as a QCOW file to Object Storage.
154
+ :param pulumi.Input['BlockSnapshotImportArgs'] import_: Use this block to import a QCOW image from Object Storage to create a volume.
155
+ :param pulumi.Input[_builtins.str] name: The name of the snapshot. If not provided, a name will be randomly generated.
156
+ :param pulumi.Input[_builtins.str] project_id: ). The ID of the Scaleway Project the snapshot is associated with.
157
+ :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] tags: A list of tags to apply to the snapshot.
158
+ :param pulumi.Input[_builtins.str] volume_id: The ID of the volume to take a snapshot from.
159
+ :param pulumi.Input[_builtins.str] zone: ). The zone in which the snapshot should be created.
160
+ """
161
+ if export is not None:
162
+ pulumi.set(__self__, "export", export)
163
+ if import_ is not None:
164
+ pulumi.set(__self__, "import_", import_)
122
165
  if name is not None:
123
166
  pulumi.set(__self__, "name", name)
124
167
  if project_id is not None:
@@ -130,70 +173,95 @@ class _BlockSnapshotState:
130
173
  if zone is not None:
131
174
  pulumi.set(__self__, "zone", zone)
132
175
 
133
- @property
176
+ @_builtins.property
177
+ @pulumi.getter
178
+ def export(self) -> Optional[pulumi.Input['BlockSnapshotExportArgs']]:
179
+ """
180
+ Use this block to export the volume as a QCOW file to Object Storage.
181
+ """
182
+ return pulumi.get(self, "export")
183
+
184
+ @export.setter
185
+ def export(self, value: Optional[pulumi.Input['BlockSnapshotExportArgs']]):
186
+ pulumi.set(self, "export", value)
187
+
188
+ @_builtins.property
189
+ @pulumi.getter(name="import")
190
+ def import_(self) -> Optional[pulumi.Input['BlockSnapshotImportArgs']]:
191
+ """
192
+ Use this block to import a QCOW image from Object Storage to create a volume.
193
+ """
194
+ return pulumi.get(self, "import_")
195
+
196
+ @import_.setter
197
+ def import_(self, value: Optional[pulumi.Input['BlockSnapshotImportArgs']]):
198
+ pulumi.set(self, "import_", value)
199
+
200
+ @_builtins.property
134
201
  @pulumi.getter
135
- def name(self) -> Optional[pulumi.Input[str]]:
202
+ def name(self) -> Optional[pulumi.Input[_builtins.str]]:
136
203
  """
137
204
  The name of the snapshot. If not provided, a name will be randomly generated.
138
205
  """
139
206
  return pulumi.get(self, "name")
140
207
 
141
208
  @name.setter
142
- def name(self, value: Optional[pulumi.Input[str]]):
209
+ def name(self, value: Optional[pulumi.Input[_builtins.str]]):
143
210
  pulumi.set(self, "name", value)
144
211
 
145
- @property
212
+ @_builtins.property
146
213
  @pulumi.getter(name="projectId")
147
- def project_id(self) -> Optional[pulumi.Input[str]]:
214
+ def project_id(self) -> Optional[pulumi.Input[_builtins.str]]:
148
215
  """
149
216
  ). The ID of the Scaleway Project the snapshot is associated with.
150
217
  """
151
218
  return pulumi.get(self, "project_id")
152
219
 
153
220
  @project_id.setter
154
- def project_id(self, value: Optional[pulumi.Input[str]]):
221
+ def project_id(self, value: Optional[pulumi.Input[_builtins.str]]):
155
222
  pulumi.set(self, "project_id", value)
156
223
 
157
- @property
224
+ @_builtins.property
158
225
  @pulumi.getter
159
- def tags(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
226
+ def tags(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]:
160
227
  """
161
228
  A list of tags to apply to the snapshot.
162
229
  """
163
230
  return pulumi.get(self, "tags")
164
231
 
165
232
  @tags.setter
166
- def tags(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
233
+ def tags(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]):
167
234
  pulumi.set(self, "tags", value)
168
235
 
169
- @property
236
+ @_builtins.property
170
237
  @pulumi.getter(name="volumeId")
171
- def volume_id(self) -> Optional[pulumi.Input[str]]:
238
+ def volume_id(self) -> Optional[pulumi.Input[_builtins.str]]:
172
239
  """
173
240
  The ID of the volume to take a snapshot from.
174
241
  """
175
242
  return pulumi.get(self, "volume_id")
176
243
 
177
244
  @volume_id.setter
178
- def volume_id(self, value: Optional[pulumi.Input[str]]):
245
+ def volume_id(self, value: Optional[pulumi.Input[_builtins.str]]):
179
246
  pulumi.set(self, "volume_id", value)
180
247
 
181
- @property
248
+ @_builtins.property
182
249
  @pulumi.getter
183
- def zone(self) -> Optional[pulumi.Input[str]]:
250
+ def zone(self) -> Optional[pulumi.Input[_builtins.str]]:
184
251
  """
185
252
  ). The zone in which the snapshot should be created.
186
253
  """
187
254
  return pulumi.get(self, "zone")
188
255
 
189
256
  @zone.setter
190
- def zone(self, value: Optional[pulumi.Input[str]]):
257
+ def zone(self, value: Optional[pulumi.Input[_builtins.str]]):
191
258
  pulumi.set(self, "zone", value)
192
259
 
193
260
 
194
261
  warnings.warn("""scaleway.index/blocksnapshot.BlockSnapshot has been deprecated in favor of scaleway.block/snapshot.Snapshot""", DeprecationWarning)
195
262
 
196
263
 
264
+ @pulumi.type_token("scaleway:index/blockSnapshot:BlockSnapshot")
197
265
  class BlockSnapshot(pulumi.CustomResource):
198
266
  warnings.warn("""scaleway.index/blocksnapshot.BlockSnapshot has been deprecated in favor of scaleway.block/snapshot.Snapshot""", DeprecationWarning)
199
267
 
@@ -201,11 +269,13 @@ class BlockSnapshot(pulumi.CustomResource):
201
269
  def __init__(__self__,
202
270
  resource_name: str,
203
271
  opts: Optional[pulumi.ResourceOptions] = None,
204
- name: Optional[pulumi.Input[str]] = None,
205
- project_id: Optional[pulumi.Input[str]] = None,
206
- tags: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
207
- volume_id: Optional[pulumi.Input[str]] = None,
208
- zone: Optional[pulumi.Input[str]] = None,
272
+ export: Optional[pulumi.Input[Union['BlockSnapshotExportArgs', 'BlockSnapshotExportArgsDict']]] = None,
273
+ import_: Optional[pulumi.Input[Union['BlockSnapshotImportArgs', 'BlockSnapshotImportArgsDict']]] = None,
274
+ name: Optional[pulumi.Input[_builtins.str]] = None,
275
+ project_id: Optional[pulumi.Input[_builtins.str]] = None,
276
+ tags: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
277
+ volume_id: Optional[pulumi.Input[_builtins.str]] = None,
278
+ zone: Optional[pulumi.Input[_builtins.str]] = None,
209
279
  __props__=None):
210
280
  """
211
281
  The `block.Snapshot` resource is used to create and manage snapshots of Block Storage volumes.
@@ -231,6 +301,45 @@ class BlockSnapshot(pulumi.CustomResource):
231
301
  volume_id=block_volume.id)
232
302
  ```
233
303
 
304
+ ### How to import from Object Storage
305
+
306
+ ```python
307
+ import pulumi
308
+ import pulumiverse_scaleway as scaleway
309
+
310
+ my_import_bucket = scaleway.object.Bucket("my-import-bucket", name="snapshot-bucket-to-import")
311
+ qcow_object = scaleway.object.Item("qcow-object",
312
+ bucket=snapshot_bucket["name"],
313
+ key="my-snapshot.qcow2",
314
+ file="imported-snapshot/snapshot.qcow2")
315
+ imported = scaleway.block.Volume("imported",
316
+ iops=5000,
317
+ name="imported-from-qcow",
318
+ import_=[{
319
+ "bucket": "my-import-bucket",
320
+ "key": "imported-snapshot/snapshot.qcow2",
321
+ }])
322
+ ```
323
+
324
+ ### How to export to Object Storage
325
+
326
+ ```python
327
+ import pulumi
328
+ import pulumiverse_scaleway as scaleway
329
+
330
+ my_import_bucket = scaleway.object.Bucket("my-import-bucket", name="snapshot-bucket-to-import")
331
+ qcow_object = scaleway.object.Item("qcow-object",
332
+ bucket=snapshot_bucket["name"],
333
+ key="export/my-snapshot.qcow2")
334
+ to_export = scaleway.block.Volume("to_export",
335
+ iops=5000,
336
+ name="to-export",
337
+ export=[{
338
+ "bucket": "snapshot-bucket-to-import",
339
+ "key": "exports/my-snapshot.qcow2",
340
+ }])
341
+ ```
342
+
234
343
  ## Import
235
344
 
236
345
  This section explains how to import the snapshot of a Block Storage volume using the zoned ID format (`{zone}/{id}`).
@@ -243,17 +352,19 @@ class BlockSnapshot(pulumi.CustomResource):
243
352
 
244
353
  :param str resource_name: The name of the resource.
245
354
  :param pulumi.ResourceOptions opts: Options for the resource.
246
- :param pulumi.Input[str] name: The name of the snapshot. If not provided, a name will be randomly generated.
247
- :param pulumi.Input[str] project_id: ). The ID of the Scaleway Project the snapshot is associated with.
248
- :param pulumi.Input[Sequence[pulumi.Input[str]]] tags: A list of tags to apply to the snapshot.
249
- :param pulumi.Input[str] volume_id: The ID of the volume to take a snapshot from.
250
- :param pulumi.Input[str] zone: ). The zone in which the snapshot should be created.
355
+ :param pulumi.Input[Union['BlockSnapshotExportArgs', 'BlockSnapshotExportArgsDict']] export: Use this block to export the volume as a QCOW file to Object Storage.
356
+ :param pulumi.Input[Union['BlockSnapshotImportArgs', 'BlockSnapshotImportArgsDict']] import_: Use this block to import a QCOW image from Object Storage to create a volume.
357
+ :param pulumi.Input[_builtins.str] name: The name of the snapshot. If not provided, a name will be randomly generated.
358
+ :param pulumi.Input[_builtins.str] project_id: ). The ID of the Scaleway Project the snapshot is associated with.
359
+ :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] tags: A list of tags to apply to the snapshot.
360
+ :param pulumi.Input[_builtins.str] volume_id: The ID of the volume to take a snapshot from.
361
+ :param pulumi.Input[_builtins.str] zone: ). The zone in which the snapshot should be created.
251
362
  """
252
363
  ...
253
364
  @overload
254
365
  def __init__(__self__,
255
366
  resource_name: str,
256
- args: BlockSnapshotArgs,
367
+ args: Optional[BlockSnapshotArgs] = None,
257
368
  opts: Optional[pulumi.ResourceOptions] = None):
258
369
  """
259
370
  The `block.Snapshot` resource is used to create and manage snapshots of Block Storage volumes.
@@ -279,6 +390,45 @@ class BlockSnapshot(pulumi.CustomResource):
279
390
  volume_id=block_volume.id)
280
391
  ```
281
392
 
393
+ ### How to import from Object Storage
394
+
395
+ ```python
396
+ import pulumi
397
+ import pulumiverse_scaleway as scaleway
398
+
399
+ my_import_bucket = scaleway.object.Bucket("my-import-bucket", name="snapshot-bucket-to-import")
400
+ qcow_object = scaleway.object.Item("qcow-object",
401
+ bucket=snapshot_bucket["name"],
402
+ key="my-snapshot.qcow2",
403
+ file="imported-snapshot/snapshot.qcow2")
404
+ imported = scaleway.block.Volume("imported",
405
+ iops=5000,
406
+ name="imported-from-qcow",
407
+ import_=[{
408
+ "bucket": "my-import-bucket",
409
+ "key": "imported-snapshot/snapshot.qcow2",
410
+ }])
411
+ ```
412
+
413
+ ### How to export to Object Storage
414
+
415
+ ```python
416
+ import pulumi
417
+ import pulumiverse_scaleway as scaleway
418
+
419
+ my_import_bucket = scaleway.object.Bucket("my-import-bucket", name="snapshot-bucket-to-import")
420
+ qcow_object = scaleway.object.Item("qcow-object",
421
+ bucket=snapshot_bucket["name"],
422
+ key="export/my-snapshot.qcow2")
423
+ to_export = scaleway.block.Volume("to_export",
424
+ iops=5000,
425
+ name="to-export",
426
+ export=[{
427
+ "bucket": "snapshot-bucket-to-import",
428
+ "key": "exports/my-snapshot.qcow2",
429
+ }])
430
+ ```
431
+
282
432
  ## Import
283
433
 
284
434
  This section explains how to import the snapshot of a Block Storage volume using the zoned ID format (`{zone}/{id}`).
@@ -304,11 +454,13 @@ class BlockSnapshot(pulumi.CustomResource):
304
454
  def _internal_init(__self__,
305
455
  resource_name: str,
306
456
  opts: Optional[pulumi.ResourceOptions] = None,
307
- name: Optional[pulumi.Input[str]] = None,
308
- project_id: Optional[pulumi.Input[str]] = None,
309
- tags: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
310
- volume_id: Optional[pulumi.Input[str]] = None,
311
- zone: Optional[pulumi.Input[str]] = None,
457
+ export: Optional[pulumi.Input[Union['BlockSnapshotExportArgs', 'BlockSnapshotExportArgsDict']]] = None,
458
+ import_: Optional[pulumi.Input[Union['BlockSnapshotImportArgs', 'BlockSnapshotImportArgsDict']]] = None,
459
+ name: Optional[pulumi.Input[_builtins.str]] = None,
460
+ project_id: Optional[pulumi.Input[_builtins.str]] = None,
461
+ tags: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
462
+ volume_id: Optional[pulumi.Input[_builtins.str]] = None,
463
+ zone: Optional[pulumi.Input[_builtins.str]] = None,
312
464
  __props__=None):
313
465
  pulumi.log.warn("""BlockSnapshot is deprecated: scaleway.index/blocksnapshot.BlockSnapshot has been deprecated in favor of scaleway.block/snapshot.Snapshot""")
314
466
  opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts)
@@ -319,11 +471,11 @@ class BlockSnapshot(pulumi.CustomResource):
319
471
  raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource')
320
472
  __props__ = BlockSnapshotArgs.__new__(BlockSnapshotArgs)
321
473
 
474
+ __props__.__dict__["export"] = export
475
+ __props__.__dict__["import_"] = import_
322
476
  __props__.__dict__["name"] = name
323
477
  __props__.__dict__["project_id"] = project_id
324
478
  __props__.__dict__["tags"] = tags
325
- if volume_id is None and not opts.urn:
326
- raise TypeError("Missing required property 'volume_id'")
327
479
  __props__.__dict__["volume_id"] = volume_id
328
480
  __props__.__dict__["zone"] = zone
329
481
  super(BlockSnapshot, __self__).__init__(
@@ -336,11 +488,13 @@ class BlockSnapshot(pulumi.CustomResource):
336
488
  def get(resource_name: str,
337
489
  id: pulumi.Input[str],
338
490
  opts: Optional[pulumi.ResourceOptions] = None,
339
- name: Optional[pulumi.Input[str]] = None,
340
- project_id: Optional[pulumi.Input[str]] = None,
341
- tags: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
342
- volume_id: Optional[pulumi.Input[str]] = None,
343
- zone: Optional[pulumi.Input[str]] = None) -> 'BlockSnapshot':
491
+ export: Optional[pulumi.Input[Union['BlockSnapshotExportArgs', 'BlockSnapshotExportArgsDict']]] = None,
492
+ import_: Optional[pulumi.Input[Union['BlockSnapshotImportArgs', 'BlockSnapshotImportArgsDict']]] = None,
493
+ name: Optional[pulumi.Input[_builtins.str]] = None,
494
+ project_id: Optional[pulumi.Input[_builtins.str]] = None,
495
+ tags: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
496
+ volume_id: Optional[pulumi.Input[_builtins.str]] = None,
497
+ zone: Optional[pulumi.Input[_builtins.str]] = None) -> 'BlockSnapshot':
344
498
  """
345
499
  Get an existing BlockSnapshot resource's state with the given name, id, and optional extra
346
500
  properties used to qualify the lookup.
@@ -348,16 +502,20 @@ class BlockSnapshot(pulumi.CustomResource):
348
502
  :param str resource_name: The unique name of the resulting resource.
349
503
  :param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
350
504
  :param pulumi.ResourceOptions opts: Options for the resource.
351
- :param pulumi.Input[str] name: The name of the snapshot. If not provided, a name will be randomly generated.
352
- :param pulumi.Input[str] project_id: ). The ID of the Scaleway Project the snapshot is associated with.
353
- :param pulumi.Input[Sequence[pulumi.Input[str]]] tags: A list of tags to apply to the snapshot.
354
- :param pulumi.Input[str] volume_id: The ID of the volume to take a snapshot from.
355
- :param pulumi.Input[str] zone: ). The zone in which the snapshot should be created.
505
+ :param pulumi.Input[Union['BlockSnapshotExportArgs', 'BlockSnapshotExportArgsDict']] export: Use this block to export the volume as a QCOW file to Object Storage.
506
+ :param pulumi.Input[Union['BlockSnapshotImportArgs', 'BlockSnapshotImportArgsDict']] import_: Use this block to import a QCOW image from Object Storage to create a volume.
507
+ :param pulumi.Input[_builtins.str] name: The name of the snapshot. If not provided, a name will be randomly generated.
508
+ :param pulumi.Input[_builtins.str] project_id: ). The ID of the Scaleway Project the snapshot is associated with.
509
+ :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] tags: A list of tags to apply to the snapshot.
510
+ :param pulumi.Input[_builtins.str] volume_id: The ID of the volume to take a snapshot from.
511
+ :param pulumi.Input[_builtins.str] zone: ). The zone in which the snapshot should be created.
356
512
  """
357
513
  opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
358
514
 
359
515
  __props__ = _BlockSnapshotState.__new__(_BlockSnapshotState)
360
516
 
517
+ __props__.__dict__["export"] = export
518
+ __props__.__dict__["import_"] = import_
361
519
  __props__.__dict__["name"] = name
362
520
  __props__.__dict__["project_id"] = project_id
363
521
  __props__.__dict__["tags"] = tags
@@ -365,41 +523,57 @@ class BlockSnapshot(pulumi.CustomResource):
365
523
  __props__.__dict__["zone"] = zone
366
524
  return BlockSnapshot(resource_name, opts=opts, __props__=__props__)
367
525
 
368
- @property
526
+ @_builtins.property
527
+ @pulumi.getter
528
+ def export(self) -> pulumi.Output[Optional['outputs.BlockSnapshotExport']]:
529
+ """
530
+ Use this block to export the volume as a QCOW file to Object Storage.
531
+ """
532
+ return pulumi.get(self, "export")
533
+
534
+ @_builtins.property
535
+ @pulumi.getter(name="import")
536
+ def import_(self) -> pulumi.Output[Optional['outputs.BlockSnapshotImport']]:
537
+ """
538
+ Use this block to import a QCOW image from Object Storage to create a volume.
539
+ """
540
+ return pulumi.get(self, "import_")
541
+
542
+ @_builtins.property
369
543
  @pulumi.getter
370
- def name(self) -> pulumi.Output[str]:
544
+ def name(self) -> pulumi.Output[_builtins.str]:
371
545
  """
372
546
  The name of the snapshot. If not provided, a name will be randomly generated.
373
547
  """
374
548
  return pulumi.get(self, "name")
375
549
 
376
- @property
550
+ @_builtins.property
377
551
  @pulumi.getter(name="projectId")
378
- def project_id(self) -> pulumi.Output[str]:
552
+ def project_id(self) -> pulumi.Output[_builtins.str]:
379
553
  """
380
554
  ). The ID of the Scaleway Project the snapshot is associated with.
381
555
  """
382
556
  return pulumi.get(self, "project_id")
383
557
 
384
- @property
558
+ @_builtins.property
385
559
  @pulumi.getter
386
- def tags(self) -> pulumi.Output[Optional[Sequence[str]]]:
560
+ def tags(self) -> pulumi.Output[Optional[Sequence[_builtins.str]]]:
387
561
  """
388
562
  A list of tags to apply to the snapshot.
389
563
  """
390
564
  return pulumi.get(self, "tags")
391
565
 
392
- @property
566
+ @_builtins.property
393
567
  @pulumi.getter(name="volumeId")
394
- def volume_id(self) -> pulumi.Output[str]:
568
+ def volume_id(self) -> pulumi.Output[Optional[_builtins.str]]:
395
569
  """
396
570
  The ID of the volume to take a snapshot from.
397
571
  """
398
572
  return pulumi.get(self, "volume_id")
399
573
 
400
- @property
574
+ @_builtins.property
401
575
  @pulumi.getter
402
- def zone(self) -> pulumi.Output[str]:
576
+ def zone(self) -> pulumi.Output[Optional[_builtins.str]]:
403
577
  """
404
578
  ). The zone in which the snapshot should be created.
405
579
  """