pulumiverse-scaleway 1.30.0a1750140900__py3-none-any.whl → 1.31.0__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (499) hide show
  1. pulumiverse_scaleway/__init__.py +38 -1
  2. pulumiverse_scaleway/_inputs.py +2331 -2160
  3. pulumiverse_scaleway/_utilities.py +1 -1
  4. pulumiverse_scaleway/account/__init__.py +2 -1
  5. pulumiverse_scaleway/account/get_availability_zones.py +9 -8
  6. pulumiverse_scaleway/account/get_project.py +21 -20
  7. pulumiverse_scaleway/account/get_projects.py +28 -21
  8. pulumiverse_scaleway/account/get_ssh_key.py +24 -23
  9. pulumiverse_scaleway/account/outputs.py +20 -19
  10. pulumiverse_scaleway/account/project.py +59 -57
  11. pulumiverse_scaleway/account/ssh_key.py +87 -85
  12. pulumiverse_scaleway/account_project.py +59 -57
  13. pulumiverse_scaleway/account_ssh_key.py +87 -85
  14. pulumiverse_scaleway/apple_silicon_server.py +251 -155
  15. pulumiverse_scaleway/applesilicon/__init__.py +2 -1
  16. pulumiverse_scaleway/applesilicon/_inputs.py +89 -34
  17. pulumiverse_scaleway/applesilicon/outputs.py +54 -21
  18. pulumiverse_scaleway/applesilicon/server.py +251 -155
  19. pulumiverse_scaleway/autoscaling/__init__.py +13 -0
  20. pulumiverse_scaleway/autoscaling/_inputs.py +559 -0
  21. pulumiverse_scaleway/autoscaling/instance_group.py +808 -0
  22. pulumiverse_scaleway/autoscaling/instance_policy.py +635 -0
  23. pulumiverse_scaleway/autoscaling/instance_template.py +879 -0
  24. pulumiverse_scaleway/autoscaling/outputs.py +439 -0
  25. pulumiverse_scaleway/baremetal_server.py +262 -260
  26. pulumiverse_scaleway/billing/__init__.py +2 -1
  27. pulumiverse_scaleway/billing/get_consumptions.py +10 -9
  28. pulumiverse_scaleway/billing/get_invoices.py +19 -18
  29. pulumiverse_scaleway/billing/outputs.py +73 -72
  30. pulumiverse_scaleway/block/__init__.py +2 -1
  31. pulumiverse_scaleway/block/_inputs.py +12 -11
  32. pulumiverse_scaleway/block/get_snapshot.py +29 -28
  33. pulumiverse_scaleway/block/get_volume.py +28 -27
  34. pulumiverse_scaleway/block/outputs.py +14 -13
  35. pulumiverse_scaleway/block/snapshot.py +73 -71
  36. pulumiverse_scaleway/block/volume.py +115 -113
  37. pulumiverse_scaleway/block_snapshot.py +73 -71
  38. pulumiverse_scaleway/block_volume.py +115 -113
  39. pulumiverse_scaleway/cockpit.py +38 -36
  40. pulumiverse_scaleway/cockpit_alert_manager.py +52 -50
  41. pulumiverse_scaleway/cockpit_grafana_user.py +59 -57
  42. pulumiverse_scaleway/cockpit_source.py +115 -113
  43. pulumiverse_scaleway/cockpit_token.py +66 -64
  44. pulumiverse_scaleway/config/__init__.py +2 -1
  45. pulumiverse_scaleway/config/__init__.pyi +2 -1
  46. pulumiverse_scaleway/config/vars.py +2 -1
  47. pulumiverse_scaleway/container.py +573 -343
  48. pulumiverse_scaleway/container_cron.py +80 -78
  49. pulumiverse_scaleway/container_domain.py +52 -50
  50. pulumiverse_scaleway/container_namespace.py +211 -140
  51. pulumiverse_scaleway/container_token.py +80 -78
  52. pulumiverse_scaleway/container_trigger.py +59 -57
  53. pulumiverse_scaleway/containers/__init__.py +2 -1
  54. pulumiverse_scaleway/containers/_inputs.py +72 -71
  55. pulumiverse_scaleway/containers/container.py +573 -343
  56. pulumiverse_scaleway/containers/cron.py +80 -78
  57. pulumiverse_scaleway/containers/domain.py +52 -50
  58. pulumiverse_scaleway/containers/get_container.py +87 -42
  59. pulumiverse_scaleway/containers/get_namespace.py +43 -31
  60. pulumiverse_scaleway/containers/namespace.py +211 -140
  61. pulumiverse_scaleway/containers/outputs.py +62 -61
  62. pulumiverse_scaleway/containers/token.py +80 -78
  63. pulumiverse_scaleway/containers/trigger.py +59 -57
  64. pulumiverse_scaleway/database.py +66 -64
  65. pulumiverse_scaleway/database_acl.py +31 -29
  66. pulumiverse_scaleway/database_backup.py +101 -99
  67. pulumiverse_scaleway/database_instance.py +297 -295
  68. pulumiverse_scaleway/database_privilege.py +73 -71
  69. pulumiverse_scaleway/database_read_replica.py +45 -43
  70. pulumiverse_scaleway/database_user.py +73 -71
  71. pulumiverse_scaleway/databases/__init__.py +2 -1
  72. pulumiverse_scaleway/databases/_inputs.py +191 -190
  73. pulumiverse_scaleway/databases/acl.py +31 -29
  74. pulumiverse_scaleway/databases/database.py +66 -64
  75. pulumiverse_scaleway/databases/database_backup.py +101 -99
  76. pulumiverse_scaleway/databases/get_acl.py +13 -12
  77. pulumiverse_scaleway/databases/get_database.py +19 -18
  78. pulumiverse_scaleway/databases/get_database_backup.py +34 -33
  79. pulumiverse_scaleway/databases/get_instance.py +43 -42
  80. pulumiverse_scaleway/databases/get_privilege.py +24 -23
  81. pulumiverse_scaleway/databases/instance.py +297 -295
  82. pulumiverse_scaleway/databases/outputs.py +188 -187
  83. pulumiverse_scaleway/databases/privilege.py +73 -71
  84. pulumiverse_scaleway/databases/read_replica.py +45 -43
  85. pulumiverse_scaleway/databases/serverless_database.py +80 -78
  86. pulumiverse_scaleway/databases/snapshot.py +101 -99
  87. pulumiverse_scaleway/databases/user.py +73 -71
  88. pulumiverse_scaleway/domain/__init__.py +2 -1
  89. pulumiverse_scaleway/domain/_inputs.py +531 -530
  90. pulumiverse_scaleway/domain/get_record.py +38 -37
  91. pulumiverse_scaleway/domain/get_zone.py +24 -23
  92. pulumiverse_scaleway/domain/outputs.py +358 -357
  93. pulumiverse_scaleway/domain/record.py +129 -127
  94. pulumiverse_scaleway/domain/registration.py +94 -92
  95. pulumiverse_scaleway/domain/zone.py +87 -85
  96. pulumiverse_scaleway/domain_record.py +129 -127
  97. pulumiverse_scaleway/domain_zone.py +87 -85
  98. pulumiverse_scaleway/edge_services_backend_stage.py +45 -43
  99. pulumiverse_scaleway/edge_services_cache_stage.py +162 -113
  100. pulumiverse_scaleway/edge_services_dns_stage.py +108 -106
  101. pulumiverse_scaleway/edge_services_head_stage.py +31 -29
  102. pulumiverse_scaleway/edge_services_pipeline.py +66 -64
  103. pulumiverse_scaleway/edge_services_plan.py +31 -29
  104. pulumiverse_scaleway/edge_services_route_stage.py +59 -57
  105. pulumiverse_scaleway/edge_services_tls_stage.py +122 -120
  106. pulumiverse_scaleway/edge_services_waf_stage.py +87 -85
  107. pulumiverse_scaleway/elasticmetal/__init__.py +2 -1
  108. pulumiverse_scaleway/elasticmetal/_inputs.py +123 -122
  109. pulumiverse_scaleway/elasticmetal/get_ip.py +56 -39
  110. pulumiverse_scaleway/elasticmetal/get_ips.py +24 -23
  111. pulumiverse_scaleway/elasticmetal/get_offer.py +29 -28
  112. pulumiverse_scaleway/elasticmetal/get_option.py +19 -18
  113. pulumiverse_scaleway/elasticmetal/get_os.py +23 -22
  114. pulumiverse_scaleway/elasticmetal/get_partition_schema.py +29 -28
  115. pulumiverse_scaleway/elasticmetal/get_server.py +39 -38
  116. pulumiverse_scaleway/elasticmetal/ip.py +139 -137
  117. pulumiverse_scaleway/elasticmetal/ip_mac_address.py +87 -85
  118. pulumiverse_scaleway/elasticmetal/outputs.py +233 -232
  119. pulumiverse_scaleway/elasticmetal/server.py +262 -260
  120. pulumiverse_scaleway/file_filesystem.py +552 -0
  121. pulumiverse_scaleway/flexible_ip.py +139 -137
  122. pulumiverse_scaleway/flexible_ip_mac_address.py +87 -85
  123. pulumiverse_scaleway/function.py +394 -284
  124. pulumiverse_scaleway/function_cron.py +80 -78
  125. pulumiverse_scaleway/function_domain.py +52 -50
  126. pulumiverse_scaleway/function_namespace.py +197 -126
  127. pulumiverse_scaleway/function_token.py +80 -78
  128. pulumiverse_scaleway/function_trigger.py +59 -57
  129. pulumiverse_scaleway/functions/__init__.py +2 -1
  130. pulumiverse_scaleway/functions/_inputs.py +42 -41
  131. pulumiverse_scaleway/functions/cron.py +80 -78
  132. pulumiverse_scaleway/functions/domain.py +52 -50
  133. pulumiverse_scaleway/functions/function.py +394 -284
  134. pulumiverse_scaleway/functions/get_function.py +69 -46
  135. pulumiverse_scaleway/functions/get_namespace.py +42 -30
  136. pulumiverse_scaleway/functions/namespace.py +197 -126
  137. pulumiverse_scaleway/functions/outputs.py +26 -25
  138. pulumiverse_scaleway/functions/token.py +80 -78
  139. pulumiverse_scaleway/functions/trigger.py +59 -57
  140. pulumiverse_scaleway/get_account_project.py +21 -20
  141. pulumiverse_scaleway/get_account_ssh_key.py +24 -23
  142. pulumiverse_scaleway/get_availability_zones.py +9 -8
  143. pulumiverse_scaleway/get_baremetal_offer.py +29 -28
  144. pulumiverse_scaleway/get_baremetal_option.py +19 -18
  145. pulumiverse_scaleway/get_baremetal_os.py +23 -22
  146. pulumiverse_scaleway/get_baremetal_server.py +39 -38
  147. pulumiverse_scaleway/get_billing_consumptions.py +10 -9
  148. pulumiverse_scaleway/get_billing_invoices.py +19 -18
  149. pulumiverse_scaleway/get_block_snapshot.py +29 -28
  150. pulumiverse_scaleway/get_block_volume.py +28 -27
  151. pulumiverse_scaleway/get_cockpit.py +10 -9
  152. pulumiverse_scaleway/get_cockpit_source.py +77 -33
  153. pulumiverse_scaleway/get_config.py +13 -12
  154. pulumiverse_scaleway/get_container.py +87 -42
  155. pulumiverse_scaleway/get_container_namespace.py +43 -31
  156. pulumiverse_scaleway/get_database.py +19 -18
  157. pulumiverse_scaleway/get_database_acl.py +13 -12
  158. pulumiverse_scaleway/get_database_backup.py +34 -33
  159. pulumiverse_scaleway/get_database_instance.py +43 -42
  160. pulumiverse_scaleway/get_database_privilege.py +24 -23
  161. pulumiverse_scaleway/get_domain_record.py +38 -37
  162. pulumiverse_scaleway/get_domain_zone.py +24 -23
  163. pulumiverse_scaleway/get_flexible_ip.py +56 -39
  164. pulumiverse_scaleway/get_flexible_ips.py +24 -23
  165. pulumiverse_scaleway/get_function.py +69 -46
  166. pulumiverse_scaleway/get_function_namespace.py +42 -30
  167. pulumiverse_scaleway/get_iam_api_key.py +17 -16
  168. pulumiverse_scaleway/get_iam_application.py +23 -22
  169. pulumiverse_scaleway/get_iam_group.py +25 -24
  170. pulumiverse_scaleway/get_iam_ssh_key.py +24 -23
  171. pulumiverse_scaleway/get_iam_user.py +23 -22
  172. pulumiverse_scaleway/get_instance_image.py +42 -41
  173. pulumiverse_scaleway/get_instance_ip.py +20 -19
  174. pulumiverse_scaleway/get_instance_placement_group.py +28 -27
  175. pulumiverse_scaleway/get_instance_private_nic.py +31 -30
  176. pulumiverse_scaleway/get_instance_security_group.py +31 -30
  177. pulumiverse_scaleway/get_instance_server.py +59 -47
  178. pulumiverse_scaleway/get_instance_servers.py +24 -23
  179. pulumiverse_scaleway/get_instance_snapshot.py +29 -28
  180. pulumiverse_scaleway/get_instance_volume.py +30 -29
  181. pulumiverse_scaleway/get_iot_device.py +31 -30
  182. pulumiverse_scaleway/get_iot_hub.py +39 -38
  183. pulumiverse_scaleway/get_ipam_ip.py +51 -50
  184. pulumiverse_scaleway/get_ipam_ips.py +44 -43
  185. pulumiverse_scaleway/get_k8s_version.py +16 -15
  186. pulumiverse_scaleway/get_kubernetes_cluster.py +39 -38
  187. pulumiverse_scaleway/get_kubernetes_node_pool.py +59 -47
  188. pulumiverse_scaleway/get_lb_acls.py +22 -21
  189. pulumiverse_scaleway/get_lb_backend.py +43 -42
  190. pulumiverse_scaleway/get_lb_backends.py +22 -21
  191. pulumiverse_scaleway/get_lb_frontend.py +26 -25
  192. pulumiverse_scaleway/get_lb_frontends.py +22 -21
  193. pulumiverse_scaleway/get_lb_ips.py +29 -28
  194. pulumiverse_scaleway/get_lb_route.py +16 -15
  195. pulumiverse_scaleway/get_lb_routes.py +17 -16
  196. pulumiverse_scaleway/get_lbs.py +24 -23
  197. pulumiverse_scaleway/get_loadbalancer.py +36 -35
  198. pulumiverse_scaleway/get_loadbalancer_certificate.py +24 -23
  199. pulumiverse_scaleway/get_loadbalancer_ip.py +29 -28
  200. pulumiverse_scaleway/get_marketplace_image.py +23 -22
  201. pulumiverse_scaleway/get_mnq_sns.py +14 -13
  202. pulumiverse_scaleway/get_mnq_sqs.py +14 -13
  203. pulumiverse_scaleway/get_mongo_db_instance.py +35 -34
  204. pulumiverse_scaleway/get_object_bucket.py +22 -21
  205. pulumiverse_scaleway/get_object_bucket_policy.py +17 -16
  206. pulumiverse_scaleway/get_redis_cluster.py +34 -33
  207. pulumiverse_scaleway/get_registry_image.py +37 -36
  208. pulumiverse_scaleway/get_registry_image_tag.py +33 -32
  209. pulumiverse_scaleway/get_registry_namespace.py +27 -26
  210. pulumiverse_scaleway/get_secret.py +41 -40
  211. pulumiverse_scaleway/get_secret_version.py +34 -33
  212. pulumiverse_scaleway/get_tem_domain.py +43 -42
  213. pulumiverse_scaleway/get_vpc.py +47 -35
  214. pulumiverse_scaleway/get_vpc_gateway_network.py +28 -27
  215. pulumiverse_scaleway/get_vpc_private_network.py +44 -32
  216. pulumiverse_scaleway/get_vpc_public_gateway.py +36 -35
  217. pulumiverse_scaleway/get_vpc_public_gateway_dhcp.py +24 -23
  218. pulumiverse_scaleway/get_vpc_public_gateway_dhcp_reservation.py +33 -32
  219. pulumiverse_scaleway/get_vpc_public_gateway_ip.py +14 -13
  220. pulumiverse_scaleway/get_vpc_public_pat_rule.py +21 -20
  221. pulumiverse_scaleway/get_vpc_routes.py +38 -37
  222. pulumiverse_scaleway/get_vpcs.py +24 -23
  223. pulumiverse_scaleway/get_web_host_offer.py +25 -24
  224. pulumiverse_scaleway/get_webhosting.py +36 -35
  225. pulumiverse_scaleway/hosting/__init__.py +2 -1
  226. pulumiverse_scaleway/hosting/_inputs.py +61 -60
  227. pulumiverse_scaleway/hosting/get_hosting.py +36 -35
  228. pulumiverse_scaleway/hosting/get_offer.py +25 -24
  229. pulumiverse_scaleway/hosting/hosting.py +164 -162
  230. pulumiverse_scaleway/hosting/outputs.py +139 -138
  231. pulumiverse_scaleway/iam/__init__.py +2 -1
  232. pulumiverse_scaleway/iam/_inputs.py +22 -21
  233. pulumiverse_scaleway/iam/api_key.py +115 -113
  234. pulumiverse_scaleway/iam/application.py +80 -78
  235. pulumiverse_scaleway/iam/get_api_key.py +17 -16
  236. pulumiverse_scaleway/iam/get_application.py +23 -22
  237. pulumiverse_scaleway/iam/get_group.py +25 -24
  238. pulumiverse_scaleway/iam/get_ssh_key.py +24 -23
  239. pulumiverse_scaleway/iam/get_user.py +23 -22
  240. pulumiverse_scaleway/iam/group.py +115 -113
  241. pulumiverse_scaleway/iam/group_membership.py +45 -43
  242. pulumiverse_scaleway/iam/outputs.py +14 -13
  243. pulumiverse_scaleway/iam/policy.py +136 -134
  244. pulumiverse_scaleway/iam/ssh_key.py +87 -85
  245. pulumiverse_scaleway/iam/user.py +284 -273
  246. pulumiverse_scaleway/iam_api_key.py +115 -113
  247. pulumiverse_scaleway/iam_application.py +80 -78
  248. pulumiverse_scaleway/iam_group.py +115 -113
  249. pulumiverse_scaleway/iam_group_membership.py +45 -43
  250. pulumiverse_scaleway/iam_policy.py +136 -134
  251. pulumiverse_scaleway/iam_ssh_key.py +87 -85
  252. pulumiverse_scaleway/iam_user.py +284 -273
  253. pulumiverse_scaleway/inference/__init__.py +2 -1
  254. pulumiverse_scaleway/inference/_inputs.py +116 -61
  255. pulumiverse_scaleway/inference/deployment.py +225 -176
  256. pulumiverse_scaleway/inference/get_model.py +27 -26
  257. pulumiverse_scaleway/inference/model.py +129 -127
  258. pulumiverse_scaleway/inference/outputs.py +82 -49
  259. pulumiverse_scaleway/inference_deployment.py +225 -176
  260. pulumiverse_scaleway/instance/__init__.py +2 -1
  261. pulumiverse_scaleway/instance/_inputs.py +296 -295
  262. pulumiverse_scaleway/instance/get_image.py +42 -41
  263. pulumiverse_scaleway/instance/get_ip.py +20 -19
  264. pulumiverse_scaleway/instance/get_placement_group.py +28 -27
  265. pulumiverse_scaleway/instance/get_private_nic.py +31 -30
  266. pulumiverse_scaleway/instance/get_security_group.py +31 -30
  267. pulumiverse_scaleway/instance/get_server.py +59 -47
  268. pulumiverse_scaleway/instance/get_servers.py +24 -23
  269. pulumiverse_scaleway/instance/get_snapshot.py +29 -28
  270. pulumiverse_scaleway/instance/get_volume.py +30 -29
  271. pulumiverse_scaleway/instance/image.py +150 -148
  272. pulumiverse_scaleway/instance/ip.py +94 -92
  273. pulumiverse_scaleway/instance/ip_reverse_dns.py +45 -43
  274. pulumiverse_scaleway/instance/outputs.py +349 -348
  275. pulumiverse_scaleway/instance/placement_group.py +101 -99
  276. pulumiverse_scaleway/instance/private_nic.py +94 -92
  277. pulumiverse_scaleway/instance/security_group.py +150 -148
  278. pulumiverse_scaleway/instance/security_group_rules.py +17 -15
  279. pulumiverse_scaleway/instance/server.py +393 -330
  280. pulumiverse_scaleway/instance/snapshot.py +108 -106
  281. pulumiverse_scaleway/instance/user_data.py +59 -57
  282. pulumiverse_scaleway/instance/volume.py +129 -127
  283. pulumiverse_scaleway/instance_image.py +150 -148
  284. pulumiverse_scaleway/instance_ip.py +94 -92
  285. pulumiverse_scaleway/instance_ip_reverse_dns.py +45 -43
  286. pulumiverse_scaleway/instance_placement_group.py +101 -99
  287. pulumiverse_scaleway/instance_private_nic.py +94 -92
  288. pulumiverse_scaleway/instance_security_group.py +150 -148
  289. pulumiverse_scaleway/instance_security_group_rules.py +17 -15
  290. pulumiverse_scaleway/instance_server.py +393 -330
  291. pulumiverse_scaleway/instance_snapshot.py +108 -106
  292. pulumiverse_scaleway/instance_user_data.py +59 -57
  293. pulumiverse_scaleway/instance_volume.py +129 -127
  294. pulumiverse_scaleway/iot/__init__.py +2 -1
  295. pulumiverse_scaleway/iot/_inputs.py +98 -97
  296. pulumiverse_scaleway/iot/device.py +122 -120
  297. pulumiverse_scaleway/iot/get_device.py +31 -30
  298. pulumiverse_scaleway/iot/get_hub.py +39 -38
  299. pulumiverse_scaleway/iot/hub.py +206 -204
  300. pulumiverse_scaleway/iot/network.py +94 -92
  301. pulumiverse_scaleway/iot/outputs.py +78 -77
  302. pulumiverse_scaleway/iot/route.py +66 -64
  303. pulumiverse_scaleway/iot_device.py +122 -120
  304. pulumiverse_scaleway/iot_hub.py +206 -204
  305. pulumiverse_scaleway/iot_network.py +94 -92
  306. pulumiverse_scaleway/iot_route.py +66 -64
  307. pulumiverse_scaleway/ipam/__init__.py +2 -1
  308. pulumiverse_scaleway/ipam/_inputs.py +87 -86
  309. pulumiverse_scaleway/ipam/get_ip.py +51 -50
  310. pulumiverse_scaleway/ipam/get_ips.py +44 -43
  311. pulumiverse_scaleway/ipam/ip.py +94 -92
  312. pulumiverse_scaleway/ipam/ip_reverse_dns.py +59 -57
  313. pulumiverse_scaleway/ipam/outputs.py +90 -89
  314. pulumiverse_scaleway/ipam_ip.py +94 -92
  315. pulumiverse_scaleway/ipam_ip_reverse_dns.py +59 -57
  316. pulumiverse_scaleway/job/__init__.py +2 -1
  317. pulumiverse_scaleway/job/_inputs.py +38 -37
  318. pulumiverse_scaleway/job/definition.py +143 -141
  319. pulumiverse_scaleway/job/outputs.py +24 -23
  320. pulumiverse_scaleway/job_definition.py +143 -141
  321. pulumiverse_scaleway/kubernetes/__init__.py +2 -1
  322. pulumiverse_scaleway/kubernetes/_inputs.py +190 -189
  323. pulumiverse_scaleway/kubernetes/acl.py +45 -43
  324. pulumiverse_scaleway/kubernetes/cluster.py +234 -232
  325. pulumiverse_scaleway/kubernetes/get_cluster.py +39 -38
  326. pulumiverse_scaleway/kubernetes/get_pool.py +59 -47
  327. pulumiverse_scaleway/kubernetes/get_version.py +16 -15
  328. pulumiverse_scaleway/kubernetes/outputs.py +217 -216
  329. pulumiverse_scaleway/kubernetes/pool.py +351 -288
  330. pulumiverse_scaleway/kubernetes_cluster.py +234 -232
  331. pulumiverse_scaleway/kubernetes_node_pool.py +351 -288
  332. pulumiverse_scaleway/loadbalancer.py +199 -197
  333. pulumiverse_scaleway/loadbalancer_acl.py +80 -78
  334. pulumiverse_scaleway/loadbalancer_backend.py +381 -379
  335. pulumiverse_scaleway/loadbalancer_certificate.py +73 -71
  336. pulumiverse_scaleway/loadbalancer_frontend.py +136 -134
  337. pulumiverse_scaleway/loadbalancer_ip.py +101 -99
  338. pulumiverse_scaleway/loadbalancer_route.py +101 -99
  339. pulumiverse_scaleway/loadbalancers/__init__.py +2 -1
  340. pulumiverse_scaleway/loadbalancers/_inputs.py +263 -222
  341. pulumiverse_scaleway/loadbalancers/acl.py +80 -78
  342. pulumiverse_scaleway/loadbalancers/backend.py +381 -379
  343. pulumiverse_scaleway/loadbalancers/certificate.py +73 -71
  344. pulumiverse_scaleway/loadbalancers/frontend.py +136 -134
  345. pulumiverse_scaleway/loadbalancers/get_acls.py +22 -21
  346. pulumiverse_scaleway/loadbalancers/get_backend.py +43 -42
  347. pulumiverse_scaleway/loadbalancers/get_backends.py +22 -21
  348. pulumiverse_scaleway/loadbalancers/get_certificate.py +24 -23
  349. pulumiverse_scaleway/loadbalancers/get_frontend.py +26 -25
  350. pulumiverse_scaleway/loadbalancers/get_frontends.py +22 -21
  351. pulumiverse_scaleway/loadbalancers/get_ip.py +29 -28
  352. pulumiverse_scaleway/loadbalancers/get_ips.py +29 -28
  353. pulumiverse_scaleway/loadbalancers/get_load_balancer.py +36 -35
  354. pulumiverse_scaleway/loadbalancers/get_load_balancers.py +24 -23
  355. pulumiverse_scaleway/loadbalancers/get_route.py +16 -15
  356. pulumiverse_scaleway/loadbalancers/get_routes.py +17 -16
  357. pulumiverse_scaleway/loadbalancers/ip.py +101 -99
  358. pulumiverse_scaleway/loadbalancers/load_balancer.py +199 -197
  359. pulumiverse_scaleway/loadbalancers/outputs.py +581 -530
  360. pulumiverse_scaleway/loadbalancers/route.py +101 -99
  361. pulumiverse_scaleway/mnq/__init__.py +2 -1
  362. pulumiverse_scaleway/mnq/_inputs.py +32 -31
  363. pulumiverse_scaleway/mnq/get_sns.py +14 -13
  364. pulumiverse_scaleway/mnq/get_sqs.py +14 -13
  365. pulumiverse_scaleway/mnq/nats_account.py +52 -50
  366. pulumiverse_scaleway/mnq/nats_credentials.py +52 -50
  367. pulumiverse_scaleway/mnq/outputs.py +20 -19
  368. pulumiverse_scaleway/mnq/sns.py +38 -36
  369. pulumiverse_scaleway/mnq/sns_credentials.py +59 -57
  370. pulumiverse_scaleway/mnq/sns_topic.py +143 -141
  371. pulumiverse_scaleway/mnq/sns_topic_subscription.py +150 -148
  372. pulumiverse_scaleway/mnq/sqs.py +38 -36
  373. pulumiverse_scaleway/mnq/sqs_credentials.py +59 -57
  374. pulumiverse_scaleway/mnq/sqs_queue.py +192 -190
  375. pulumiverse_scaleway/mnq_nats_account.py +52 -50
  376. pulumiverse_scaleway/mnq_nats_credentials.py +52 -50
  377. pulumiverse_scaleway/mnq_sns.py +38 -36
  378. pulumiverse_scaleway/mnq_sns_credentials.py +59 -57
  379. pulumiverse_scaleway/mnq_sns_topic.py +143 -141
  380. pulumiverse_scaleway/mnq_sns_topic_subscription.py +150 -148
  381. pulumiverse_scaleway/mnq_sqs.py +38 -36
  382. pulumiverse_scaleway/mnq_sqs_credentials.py +59 -57
  383. pulumiverse_scaleway/mnq_sqs_queue.py +192 -190
  384. pulumiverse_scaleway/mongo_db_instance.py +199 -197
  385. pulumiverse_scaleway/mongo_db_snapshot.py +101 -99
  386. pulumiverse_scaleway/mongodb/__init__.py +2 -1
  387. pulumiverse_scaleway/mongodb/_inputs.py +53 -52
  388. pulumiverse_scaleway/mongodb/get_instance.py +35 -34
  389. pulumiverse_scaleway/mongodb/instance.py +199 -197
  390. pulumiverse_scaleway/mongodb/outputs.py +64 -63
  391. pulumiverse_scaleway/mongodb/snapshot.py +101 -99
  392. pulumiverse_scaleway/network/__init__.py +2 -1
  393. pulumiverse_scaleway/network/_inputs.py +140 -139
  394. pulumiverse_scaleway/network/acl.py +59 -57
  395. pulumiverse_scaleway/network/gateway_network.py +143 -141
  396. pulumiverse_scaleway/network/get_gateway_network.py +28 -27
  397. pulumiverse_scaleway/network/get_private_network.py +44 -32
  398. pulumiverse_scaleway/network/get_public_gateway.py +36 -35
  399. pulumiverse_scaleway/network/get_public_gateway_dhcp.py +24 -23
  400. pulumiverse_scaleway/network/get_public_gateway_dhcp_reservation.py +33 -32
  401. pulumiverse_scaleway/network/get_public_gateway_ip.py +14 -13
  402. pulumiverse_scaleway/network/get_public_gateway_pat_rule.py +21 -20
  403. pulumiverse_scaleway/network/get_routes.py +38 -37
  404. pulumiverse_scaleway/network/get_vpc.py +47 -35
  405. pulumiverse_scaleway/network/get_vpcs.py +24 -23
  406. pulumiverse_scaleway/network/outputs.py +206 -205
  407. pulumiverse_scaleway/network/private_network.py +170 -121
  408. pulumiverse_scaleway/network/public_gateway.py +213 -211
  409. pulumiverse_scaleway/network/public_gateway_dhcp.py +234 -232
  410. pulumiverse_scaleway/network/public_gateway_dhcp_reservation.py +87 -85
  411. pulumiverse_scaleway/network/public_gateway_ip.py +87 -85
  412. pulumiverse_scaleway/network/public_gateway_ip_reverse_dns.py +45 -43
  413. pulumiverse_scaleway/network/public_gateway_pat_rule.py +108 -106
  414. pulumiverse_scaleway/network/route.py +115 -113
  415. pulumiverse_scaleway/network/vpc.py +149 -100
  416. pulumiverse_scaleway/object/__init__.py +2 -1
  417. pulumiverse_scaleway/object/_inputs.py +157 -134
  418. pulumiverse_scaleway/object/bucket.py +115 -113
  419. pulumiverse_scaleway/object/bucket_acl.py +79 -75
  420. pulumiverse_scaleway/object/bucket_lock_configuration.py +45 -43
  421. pulumiverse_scaleway/object/bucket_policy.py +59 -57
  422. pulumiverse_scaleway/object/bucket_website_configuration.py +85 -65
  423. pulumiverse_scaleway/object/get_bucket.py +22 -21
  424. pulumiverse_scaleway/object/get_bucket_policy.py +17 -16
  425. pulumiverse_scaleway/object/item.py +232 -183
  426. pulumiverse_scaleway/object/outputs.py +133 -118
  427. pulumiverse_scaleway/object_bucket.py +115 -113
  428. pulumiverse_scaleway/object_bucket_acl.py +79 -75
  429. pulumiverse_scaleway/object_bucket_lock_configuration.py +45 -43
  430. pulumiverse_scaleway/object_bucket_policy.py +59 -57
  431. pulumiverse_scaleway/object_bucket_website_configuration.py +85 -65
  432. pulumiverse_scaleway/object_item.py +232 -183
  433. pulumiverse_scaleway/observability/__init__.py +2 -1
  434. pulumiverse_scaleway/observability/_inputs.py +89 -88
  435. pulumiverse_scaleway/observability/alert_manager.py +52 -50
  436. pulumiverse_scaleway/observability/cockpit.py +38 -36
  437. pulumiverse_scaleway/observability/get_instance.py +10 -9
  438. pulumiverse_scaleway/observability/get_source.py +77 -33
  439. pulumiverse_scaleway/observability/grafana_user.py +59 -57
  440. pulumiverse_scaleway/observability/outputs.py +77 -76
  441. pulumiverse_scaleway/observability/source.py +115 -113
  442. pulumiverse_scaleway/observability/token.py +66 -64
  443. pulumiverse_scaleway/outputs.py +2870 -2741
  444. pulumiverse_scaleway/provider.py +87 -65
  445. pulumiverse_scaleway/pulumi-plugin.json +1 -1
  446. pulumiverse_scaleway/rdb_snapshot.py +101 -99
  447. pulumiverse_scaleway/redis/__init__.py +2 -1
  448. pulumiverse_scaleway/redis/_inputs.py +63 -62
  449. pulumiverse_scaleway/redis/cluster.py +178 -176
  450. pulumiverse_scaleway/redis/get_cluster.py +34 -33
  451. pulumiverse_scaleway/redis/outputs.py +74 -73
  452. pulumiverse_scaleway/redis_cluster.py +178 -176
  453. pulumiverse_scaleway/registry/__init__.py +2 -1
  454. pulumiverse_scaleway/registry/get_image.py +37 -36
  455. pulumiverse_scaleway/registry/get_image_tag.py +33 -32
  456. pulumiverse_scaleway/registry/get_namespace.py +27 -26
  457. pulumiverse_scaleway/registry/namespace.py +87 -85
  458. pulumiverse_scaleway/registry_namespace.py +87 -85
  459. pulumiverse_scaleway/sdb_database.py +80 -78
  460. pulumiverse_scaleway/secret.py +143 -141
  461. pulumiverse_scaleway/secret_version.py +87 -85
  462. pulumiverse_scaleway/secrets/__init__.py +2 -1
  463. pulumiverse_scaleway/secrets/_inputs.py +53 -52
  464. pulumiverse_scaleway/secrets/get_secret.py +41 -40
  465. pulumiverse_scaleway/secrets/get_version.py +34 -33
  466. pulumiverse_scaleway/secrets/outputs.py +64 -63
  467. pulumiverse_scaleway/secrets/secret.py +143 -141
  468. pulumiverse_scaleway/secrets/version.py +87 -85
  469. pulumiverse_scaleway/tem/__init__.py +2 -1
  470. pulumiverse_scaleway/tem/_inputs.py +28 -27
  471. pulumiverse_scaleway/tem/blocked_list.py +87 -85
  472. pulumiverse_scaleway/tem/domain.py +199 -197
  473. pulumiverse_scaleway/tem/domain_validation.py +52 -50
  474. pulumiverse_scaleway/tem/get_domain.py +43 -42
  475. pulumiverse_scaleway/tem/get_offer_subscription.py +22 -21
  476. pulumiverse_scaleway/tem/outputs.py +34 -33
  477. pulumiverse_scaleway/tem/webhook.py +108 -106
  478. pulumiverse_scaleway/tem_domain.py +199 -197
  479. pulumiverse_scaleway/tem_domain_validation.py +52 -50
  480. pulumiverse_scaleway/tem_webhook.py +108 -106
  481. pulumiverse_scaleway/vpc.py +149 -100
  482. pulumiverse_scaleway/vpc_gateway_network.py +143 -141
  483. pulumiverse_scaleway/vpc_private_network.py +170 -121
  484. pulumiverse_scaleway/vpc_public_gateway.py +213 -211
  485. pulumiverse_scaleway/vpc_public_gateway_dhcp.py +234 -232
  486. pulumiverse_scaleway/vpc_public_gateway_dhcp_reservation.py +87 -85
  487. pulumiverse_scaleway/vpc_public_gateway_ip.py +87 -85
  488. pulumiverse_scaleway/vpc_public_gateway_ip_reverse_dns.py +45 -43
  489. pulumiverse_scaleway/vpc_public_gateway_pat_rule.py +108 -106
  490. pulumiverse_scaleway/vpc_route.py +115 -113
  491. pulumiverse_scaleway/webhosting.py +164 -162
  492. {pulumiverse_scaleway-1.30.0a1750140900.dist-info → pulumiverse_scaleway-1.31.0.dist-info}/METADATA +2 -2
  493. pulumiverse_scaleway-1.31.0.dist-info/RECORD +496 -0
  494. pulumiverse_scaleway/elasticmetal/get_easy_partitioning.py +0 -177
  495. pulumiverse_scaleway/get_cockpit_plan.py +0 -94
  496. pulumiverse_scaleway/observability/get_plan.py +0 -90
  497. pulumiverse_scaleway-1.30.0a1750140900.dist-info/RECORD +0 -492
  498. {pulumiverse_scaleway-1.30.0a1750140900.dist-info → pulumiverse_scaleway-1.31.0.dist-info}/WHEEL +0 -0
  499. {pulumiverse_scaleway-1.30.0a1750140900.dist-info → pulumiverse_scaleway-1.31.0.dist-info}/top_level.txt +0 -0
@@ -0,0 +1,13 @@
1
+ # coding=utf-8
2
+ # *** WARNING: this file was generated by pulumi-language-python. ***
3
+ # *** Do not edit by hand unless you're certain you know what you are doing! ***
4
+
5
+ import builtins
6
+ from .. import _utilities
7
+ import typing
8
+ # Export this package's modules as members:
9
+ from .instance_group import *
10
+ from .instance_policy import *
11
+ from .instance_template import *
12
+ from ._inputs import *
13
+ from . import outputs
@@ -0,0 +1,559 @@
1
+ # coding=utf-8
2
+ # *** WARNING: this file was generated by pulumi-language-python. ***
3
+ # *** Do not edit by hand unless you're certain you know what you are doing! ***
4
+
5
+ import builtins
6
+ import copy
7
+ import warnings
8
+ import sys
9
+ import pulumi
10
+ import pulumi.runtime
11
+ from typing import Any, Mapping, Optional, Sequence, Union, overload
12
+ if sys.version_info >= (3, 11):
13
+ from typing import NotRequired, TypedDict, TypeAlias
14
+ else:
15
+ from typing_extensions import NotRequired, TypedDict, TypeAlias
16
+ from .. import _utilities
17
+
18
+ __all__ = [
19
+ 'InstanceGroupCapacityArgs',
20
+ 'InstanceGroupCapacityArgsDict',
21
+ 'InstanceGroupLoadBalancerArgs',
22
+ 'InstanceGroupLoadBalancerArgsDict',
23
+ 'InstancePolicyMetricArgs',
24
+ 'InstancePolicyMetricArgsDict',
25
+ 'InstanceTemplateVolumeArgs',
26
+ 'InstanceTemplateVolumeArgsDict',
27
+ 'InstanceTemplateVolumeFromEmptyArgs',
28
+ 'InstanceTemplateVolumeFromEmptyArgsDict',
29
+ 'InstanceTemplateVolumeFromSnapshotArgs',
30
+ 'InstanceTemplateVolumeFromSnapshotArgsDict',
31
+ ]
32
+
33
+ MYPY = False
34
+
35
+ if not MYPY:
36
+ class InstanceGroupCapacityArgsDict(TypedDict):
37
+ cooldown_delay: NotRequired[pulumi.Input[builtins.int]]
38
+ """
39
+ Time (in seconds) after a scaling action during which requests to carry out a new scaling action will be denied.
40
+ """
41
+ max_replicas: NotRequired[pulumi.Input[builtins.int]]
42
+ """
43
+ The maximum count of Instances for the Instance group.
44
+ """
45
+ min_replicas: NotRequired[pulumi.Input[builtins.int]]
46
+ """
47
+ The minimum count of Instances for the Instance group.
48
+ """
49
+ elif False:
50
+ InstanceGroupCapacityArgsDict: TypeAlias = Mapping[str, Any]
51
+
52
+ @pulumi.input_type
53
+ class InstanceGroupCapacityArgs:
54
+ def __init__(__self__, *,
55
+ cooldown_delay: Optional[pulumi.Input[builtins.int]] = None,
56
+ max_replicas: Optional[pulumi.Input[builtins.int]] = None,
57
+ min_replicas: Optional[pulumi.Input[builtins.int]] = None):
58
+ """
59
+ :param pulumi.Input[builtins.int] cooldown_delay: Time (in seconds) after a scaling action during which requests to carry out a new scaling action will be denied.
60
+ :param pulumi.Input[builtins.int] max_replicas: The maximum count of Instances for the Instance group.
61
+ :param pulumi.Input[builtins.int] min_replicas: The minimum count of Instances for the Instance group.
62
+ """
63
+ if cooldown_delay is not None:
64
+ pulumi.set(__self__, "cooldown_delay", cooldown_delay)
65
+ if max_replicas is not None:
66
+ pulumi.set(__self__, "max_replicas", max_replicas)
67
+ if min_replicas is not None:
68
+ pulumi.set(__self__, "min_replicas", min_replicas)
69
+
70
+ @property
71
+ @pulumi.getter(name="cooldownDelay")
72
+ def cooldown_delay(self) -> Optional[pulumi.Input[builtins.int]]:
73
+ """
74
+ Time (in seconds) after a scaling action during which requests to carry out a new scaling action will be denied.
75
+ """
76
+ return pulumi.get(self, "cooldown_delay")
77
+
78
+ @cooldown_delay.setter
79
+ def cooldown_delay(self, value: Optional[pulumi.Input[builtins.int]]):
80
+ pulumi.set(self, "cooldown_delay", value)
81
+
82
+ @property
83
+ @pulumi.getter(name="maxReplicas")
84
+ def max_replicas(self) -> Optional[pulumi.Input[builtins.int]]:
85
+ """
86
+ The maximum count of Instances for the Instance group.
87
+ """
88
+ return pulumi.get(self, "max_replicas")
89
+
90
+ @max_replicas.setter
91
+ def max_replicas(self, value: Optional[pulumi.Input[builtins.int]]):
92
+ pulumi.set(self, "max_replicas", value)
93
+
94
+ @property
95
+ @pulumi.getter(name="minReplicas")
96
+ def min_replicas(self) -> Optional[pulumi.Input[builtins.int]]:
97
+ """
98
+ The minimum count of Instances for the Instance group.
99
+ """
100
+ return pulumi.get(self, "min_replicas")
101
+
102
+ @min_replicas.setter
103
+ def min_replicas(self, value: Optional[pulumi.Input[builtins.int]]):
104
+ pulumi.set(self, "min_replicas", value)
105
+
106
+
107
+ if not MYPY:
108
+ class InstanceGroupLoadBalancerArgsDict(TypedDict):
109
+ backend_ids: NotRequired[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]]
110
+ """
111
+ The Load Balancer backend IDs.
112
+ """
113
+ id: NotRequired[pulumi.Input[builtins.str]]
114
+ """
115
+ The ID of the Load Balancer.
116
+ """
117
+ private_network_id: NotRequired[pulumi.Input[builtins.str]]
118
+ """
119
+ The ID of the Private Network attached to the Load Balancer.
120
+ """
121
+ elif False:
122
+ InstanceGroupLoadBalancerArgsDict: TypeAlias = Mapping[str, Any]
123
+
124
+ @pulumi.input_type
125
+ class InstanceGroupLoadBalancerArgs:
126
+ def __init__(__self__, *,
127
+ backend_ids: Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]] = None,
128
+ id: Optional[pulumi.Input[builtins.str]] = None,
129
+ private_network_id: Optional[pulumi.Input[builtins.str]] = None):
130
+ """
131
+ :param pulumi.Input[Sequence[pulumi.Input[builtins.str]]] backend_ids: The Load Balancer backend IDs.
132
+ :param pulumi.Input[builtins.str] id: The ID of the Load Balancer.
133
+ :param pulumi.Input[builtins.str] private_network_id: The ID of the Private Network attached to the Load Balancer.
134
+ """
135
+ if backend_ids is not None:
136
+ pulumi.set(__self__, "backend_ids", backend_ids)
137
+ if id is not None:
138
+ pulumi.set(__self__, "id", id)
139
+ if private_network_id is not None:
140
+ pulumi.set(__self__, "private_network_id", private_network_id)
141
+
142
+ @property
143
+ @pulumi.getter(name="backendIds")
144
+ def backend_ids(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]]:
145
+ """
146
+ The Load Balancer backend IDs.
147
+ """
148
+ return pulumi.get(self, "backend_ids")
149
+
150
+ @backend_ids.setter
151
+ def backend_ids(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]]):
152
+ pulumi.set(self, "backend_ids", value)
153
+
154
+ @property
155
+ @pulumi.getter
156
+ def id(self) -> Optional[pulumi.Input[builtins.str]]:
157
+ """
158
+ The ID of the Load Balancer.
159
+ """
160
+ return pulumi.get(self, "id")
161
+
162
+ @id.setter
163
+ def id(self, value: Optional[pulumi.Input[builtins.str]]):
164
+ pulumi.set(self, "id", value)
165
+
166
+ @property
167
+ @pulumi.getter(name="privateNetworkId")
168
+ def private_network_id(self) -> Optional[pulumi.Input[builtins.str]]:
169
+ """
170
+ The ID of the Private Network attached to the Load Balancer.
171
+ """
172
+ return pulumi.get(self, "private_network_id")
173
+
174
+ @private_network_id.setter
175
+ def private_network_id(self, value: Optional[pulumi.Input[builtins.str]]):
176
+ pulumi.set(self, "private_network_id", value)
177
+
178
+
179
+ if not MYPY:
180
+ class InstancePolicyMetricArgsDict(TypedDict):
181
+ aggregate: pulumi.Input[builtins.str]
182
+ """
183
+ How the values sampled for the `metric` should be aggregated.
184
+ """
185
+ name: pulumi.Input[builtins.str]
186
+ """
187
+ Name or description of the metric policy.
188
+ """
189
+ operator: pulumi.Input[builtins.str]
190
+ """
191
+ Operator used when comparing the threshold value of the chosen `metric` to the actual sampled and aggregated value.
192
+ """
193
+ cockpit_metric_name: NotRequired[pulumi.Input[builtins.str]]
194
+ """
195
+ The custom metric to use for this policy. This must be stored in Scaleway Cockpit. The metric forms the basis of the condition that will be checked to determine whether a scaling action should be triggered
196
+ """
197
+ managed_metric: NotRequired[pulumi.Input[builtins.str]]
198
+ """
199
+ The managed metric to use for this policy. These are available by default in Cockpit without any configuration or `node_exporter`. The chosen metric forms the basis of the condition that will be checked to determine whether a scaling action should be triggered.
200
+ """
201
+ sampling_range_min: NotRequired[pulumi.Input[builtins.int]]
202
+ """
203
+ The Interval of time, in minutes, during which metric is sampled.
204
+ """
205
+ threshold: NotRequired[pulumi.Input[builtins.int]]
206
+ """
207
+ The threshold value to measure the aggregated sampled `metric` value against. Combined with the `operator` field, determines whether a scaling action should be triggered.
208
+ """
209
+ elif False:
210
+ InstancePolicyMetricArgsDict: TypeAlias = Mapping[str, Any]
211
+
212
+ @pulumi.input_type
213
+ class InstancePolicyMetricArgs:
214
+ def __init__(__self__, *,
215
+ aggregate: pulumi.Input[builtins.str],
216
+ name: pulumi.Input[builtins.str],
217
+ operator: pulumi.Input[builtins.str],
218
+ cockpit_metric_name: Optional[pulumi.Input[builtins.str]] = None,
219
+ managed_metric: Optional[pulumi.Input[builtins.str]] = None,
220
+ sampling_range_min: Optional[pulumi.Input[builtins.int]] = None,
221
+ threshold: Optional[pulumi.Input[builtins.int]] = None):
222
+ """
223
+ :param pulumi.Input[builtins.str] aggregate: How the values sampled for the `metric` should be aggregated.
224
+ :param pulumi.Input[builtins.str] name: Name or description of the metric policy.
225
+ :param pulumi.Input[builtins.str] operator: Operator used when comparing the threshold value of the chosen `metric` to the actual sampled and aggregated value.
226
+ :param pulumi.Input[builtins.str] cockpit_metric_name: The custom metric to use for this policy. This must be stored in Scaleway Cockpit. The metric forms the basis of the condition that will be checked to determine whether a scaling action should be triggered
227
+ :param pulumi.Input[builtins.str] managed_metric: The managed metric to use for this policy. These are available by default in Cockpit without any configuration or `node_exporter`. The chosen metric forms the basis of the condition that will be checked to determine whether a scaling action should be triggered.
228
+ :param pulumi.Input[builtins.int] sampling_range_min: The Interval of time, in minutes, during which metric is sampled.
229
+ :param pulumi.Input[builtins.int] threshold: The threshold value to measure the aggregated sampled `metric` value against. Combined with the `operator` field, determines whether a scaling action should be triggered.
230
+ """
231
+ pulumi.set(__self__, "aggregate", aggregate)
232
+ pulumi.set(__self__, "name", name)
233
+ pulumi.set(__self__, "operator", operator)
234
+ if cockpit_metric_name is not None:
235
+ pulumi.set(__self__, "cockpit_metric_name", cockpit_metric_name)
236
+ if managed_metric is not None:
237
+ pulumi.set(__self__, "managed_metric", managed_metric)
238
+ if sampling_range_min is not None:
239
+ pulumi.set(__self__, "sampling_range_min", sampling_range_min)
240
+ if threshold is not None:
241
+ pulumi.set(__self__, "threshold", threshold)
242
+
243
+ @property
244
+ @pulumi.getter
245
+ def aggregate(self) -> pulumi.Input[builtins.str]:
246
+ """
247
+ How the values sampled for the `metric` should be aggregated.
248
+ """
249
+ return pulumi.get(self, "aggregate")
250
+
251
+ @aggregate.setter
252
+ def aggregate(self, value: pulumi.Input[builtins.str]):
253
+ pulumi.set(self, "aggregate", value)
254
+
255
+ @property
256
+ @pulumi.getter
257
+ def name(self) -> pulumi.Input[builtins.str]:
258
+ """
259
+ Name or description of the metric policy.
260
+ """
261
+ return pulumi.get(self, "name")
262
+
263
+ @name.setter
264
+ def name(self, value: pulumi.Input[builtins.str]):
265
+ pulumi.set(self, "name", value)
266
+
267
+ @property
268
+ @pulumi.getter
269
+ def operator(self) -> pulumi.Input[builtins.str]:
270
+ """
271
+ Operator used when comparing the threshold value of the chosen `metric` to the actual sampled and aggregated value.
272
+ """
273
+ return pulumi.get(self, "operator")
274
+
275
+ @operator.setter
276
+ def operator(self, value: pulumi.Input[builtins.str]):
277
+ pulumi.set(self, "operator", value)
278
+
279
+ @property
280
+ @pulumi.getter(name="cockpitMetricName")
281
+ def cockpit_metric_name(self) -> Optional[pulumi.Input[builtins.str]]:
282
+ """
283
+ The custom metric to use for this policy. This must be stored in Scaleway Cockpit. The metric forms the basis of the condition that will be checked to determine whether a scaling action should be triggered
284
+ """
285
+ return pulumi.get(self, "cockpit_metric_name")
286
+
287
+ @cockpit_metric_name.setter
288
+ def cockpit_metric_name(self, value: Optional[pulumi.Input[builtins.str]]):
289
+ pulumi.set(self, "cockpit_metric_name", value)
290
+
291
+ @property
292
+ @pulumi.getter(name="managedMetric")
293
+ def managed_metric(self) -> Optional[pulumi.Input[builtins.str]]:
294
+ """
295
+ The managed metric to use for this policy. These are available by default in Cockpit without any configuration or `node_exporter`. The chosen metric forms the basis of the condition that will be checked to determine whether a scaling action should be triggered.
296
+ """
297
+ return pulumi.get(self, "managed_metric")
298
+
299
+ @managed_metric.setter
300
+ def managed_metric(self, value: Optional[pulumi.Input[builtins.str]]):
301
+ pulumi.set(self, "managed_metric", value)
302
+
303
+ @property
304
+ @pulumi.getter(name="samplingRangeMin")
305
+ def sampling_range_min(self) -> Optional[pulumi.Input[builtins.int]]:
306
+ """
307
+ The Interval of time, in minutes, during which metric is sampled.
308
+ """
309
+ return pulumi.get(self, "sampling_range_min")
310
+
311
+ @sampling_range_min.setter
312
+ def sampling_range_min(self, value: Optional[pulumi.Input[builtins.int]]):
313
+ pulumi.set(self, "sampling_range_min", value)
314
+
315
+ @property
316
+ @pulumi.getter
317
+ def threshold(self) -> Optional[pulumi.Input[builtins.int]]:
318
+ """
319
+ The threshold value to measure the aggregated sampled `metric` value against. Combined with the `operator` field, determines whether a scaling action should be triggered.
320
+ """
321
+ return pulumi.get(self, "threshold")
322
+
323
+ @threshold.setter
324
+ def threshold(self, value: Optional[pulumi.Input[builtins.int]]):
325
+ pulumi.set(self, "threshold", value)
326
+
327
+
328
+ if not MYPY:
329
+ class InstanceTemplateVolumeArgsDict(TypedDict):
330
+ name: pulumi.Input[builtins.str]
331
+ """
332
+ The name of the volume.
333
+ """
334
+ volume_type: pulumi.Input[builtins.str]
335
+ """
336
+ The type of the volume.
337
+ """
338
+ boot: NotRequired[pulumi.Input[builtins.bool]]
339
+ """
340
+ Force the Instance to boot on this volume.
341
+ """
342
+ from_empty: NotRequired[pulumi.Input['InstanceTemplateVolumeFromEmptyArgsDict']]
343
+ """
344
+ Volume instance template from empty
345
+ """
346
+ from_snapshot: NotRequired[pulumi.Input['InstanceTemplateVolumeFromSnapshotArgsDict']]
347
+ """
348
+ Volume instance template from snapshot
349
+ """
350
+ perf_iops: NotRequired[pulumi.Input[builtins.int]]
351
+ """
352
+ The maximum IO/s expected, according to the different options available in stock (`5000 | 15000`).
353
+ """
354
+ tags: NotRequired[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]]
355
+ """
356
+ The list of tags assigned to the volume.
357
+ """
358
+ elif False:
359
+ InstanceTemplateVolumeArgsDict: TypeAlias = Mapping[str, Any]
360
+
361
+ @pulumi.input_type
362
+ class InstanceTemplateVolumeArgs:
363
+ def __init__(__self__, *,
364
+ name: pulumi.Input[builtins.str],
365
+ volume_type: pulumi.Input[builtins.str],
366
+ boot: Optional[pulumi.Input[builtins.bool]] = None,
367
+ from_empty: Optional[pulumi.Input['InstanceTemplateVolumeFromEmptyArgs']] = None,
368
+ from_snapshot: Optional[pulumi.Input['InstanceTemplateVolumeFromSnapshotArgs']] = None,
369
+ perf_iops: Optional[pulumi.Input[builtins.int]] = None,
370
+ tags: Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]] = None):
371
+ """
372
+ :param pulumi.Input[builtins.str] name: The name of the volume.
373
+ :param pulumi.Input[builtins.str] volume_type: The type of the volume.
374
+ :param pulumi.Input[builtins.bool] boot: Force the Instance to boot on this volume.
375
+ :param pulumi.Input['InstanceTemplateVolumeFromEmptyArgs'] from_empty: Volume instance template from empty
376
+ :param pulumi.Input['InstanceTemplateVolumeFromSnapshotArgs'] from_snapshot: Volume instance template from snapshot
377
+ :param pulumi.Input[builtins.int] perf_iops: The maximum IO/s expected, according to the different options available in stock (`5000 | 15000`).
378
+ :param pulumi.Input[Sequence[pulumi.Input[builtins.str]]] tags: The list of tags assigned to the volume.
379
+ """
380
+ pulumi.set(__self__, "name", name)
381
+ pulumi.set(__self__, "volume_type", volume_type)
382
+ if boot is not None:
383
+ pulumi.set(__self__, "boot", boot)
384
+ if from_empty is not None:
385
+ pulumi.set(__self__, "from_empty", from_empty)
386
+ if from_snapshot is not None:
387
+ pulumi.set(__self__, "from_snapshot", from_snapshot)
388
+ if perf_iops is not None:
389
+ pulumi.set(__self__, "perf_iops", perf_iops)
390
+ if tags is not None:
391
+ pulumi.set(__self__, "tags", tags)
392
+
393
+ @property
394
+ @pulumi.getter
395
+ def name(self) -> pulumi.Input[builtins.str]:
396
+ """
397
+ The name of the volume.
398
+ """
399
+ return pulumi.get(self, "name")
400
+
401
+ @name.setter
402
+ def name(self, value: pulumi.Input[builtins.str]):
403
+ pulumi.set(self, "name", value)
404
+
405
+ @property
406
+ @pulumi.getter(name="volumeType")
407
+ def volume_type(self) -> pulumi.Input[builtins.str]:
408
+ """
409
+ The type of the volume.
410
+ """
411
+ return pulumi.get(self, "volume_type")
412
+
413
+ @volume_type.setter
414
+ def volume_type(self, value: pulumi.Input[builtins.str]):
415
+ pulumi.set(self, "volume_type", value)
416
+
417
+ @property
418
+ @pulumi.getter
419
+ def boot(self) -> Optional[pulumi.Input[builtins.bool]]:
420
+ """
421
+ Force the Instance to boot on this volume.
422
+ """
423
+ return pulumi.get(self, "boot")
424
+
425
+ @boot.setter
426
+ def boot(self, value: Optional[pulumi.Input[builtins.bool]]):
427
+ pulumi.set(self, "boot", value)
428
+
429
+ @property
430
+ @pulumi.getter(name="fromEmpty")
431
+ def from_empty(self) -> Optional[pulumi.Input['InstanceTemplateVolumeFromEmptyArgs']]:
432
+ """
433
+ Volume instance template from empty
434
+ """
435
+ return pulumi.get(self, "from_empty")
436
+
437
+ @from_empty.setter
438
+ def from_empty(self, value: Optional[pulumi.Input['InstanceTemplateVolumeFromEmptyArgs']]):
439
+ pulumi.set(self, "from_empty", value)
440
+
441
+ @property
442
+ @pulumi.getter(name="fromSnapshot")
443
+ def from_snapshot(self) -> Optional[pulumi.Input['InstanceTemplateVolumeFromSnapshotArgs']]:
444
+ """
445
+ Volume instance template from snapshot
446
+ """
447
+ return pulumi.get(self, "from_snapshot")
448
+
449
+ @from_snapshot.setter
450
+ def from_snapshot(self, value: Optional[pulumi.Input['InstanceTemplateVolumeFromSnapshotArgs']]):
451
+ pulumi.set(self, "from_snapshot", value)
452
+
453
+ @property
454
+ @pulumi.getter(name="perfIops")
455
+ def perf_iops(self) -> Optional[pulumi.Input[builtins.int]]:
456
+ """
457
+ The maximum IO/s expected, according to the different options available in stock (`5000 | 15000`).
458
+ """
459
+ return pulumi.get(self, "perf_iops")
460
+
461
+ @perf_iops.setter
462
+ def perf_iops(self, value: Optional[pulumi.Input[builtins.int]]):
463
+ pulumi.set(self, "perf_iops", value)
464
+
465
+ @property
466
+ @pulumi.getter
467
+ def tags(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]]:
468
+ """
469
+ The list of tags assigned to the volume.
470
+ """
471
+ return pulumi.get(self, "tags")
472
+
473
+ @tags.setter
474
+ def tags(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]]):
475
+ pulumi.set(self, "tags", value)
476
+
477
+
478
+ if not MYPY:
479
+ class InstanceTemplateVolumeFromEmptyArgsDict(TypedDict):
480
+ size: pulumi.Input[builtins.int]
481
+ """
482
+ Size in GB of the new empty volume
483
+ """
484
+ elif False:
485
+ InstanceTemplateVolumeFromEmptyArgsDict: TypeAlias = Mapping[str, Any]
486
+
487
+ @pulumi.input_type
488
+ class InstanceTemplateVolumeFromEmptyArgs:
489
+ def __init__(__self__, *,
490
+ size: pulumi.Input[builtins.int]):
491
+ """
492
+ :param pulumi.Input[builtins.int] size: Size in GB of the new empty volume
493
+ """
494
+ pulumi.set(__self__, "size", size)
495
+
496
+ @property
497
+ @pulumi.getter
498
+ def size(self) -> pulumi.Input[builtins.int]:
499
+ """
500
+ Size in GB of the new empty volume
501
+ """
502
+ return pulumi.get(self, "size")
503
+
504
+ @size.setter
505
+ def size(self, value: pulumi.Input[builtins.int]):
506
+ pulumi.set(self, "size", value)
507
+
508
+
509
+ if not MYPY:
510
+ class InstanceTemplateVolumeFromSnapshotArgsDict(TypedDict):
511
+ snapshot_id: pulumi.Input[builtins.str]
512
+ """
513
+ ID of the snapshot to clone
514
+ """
515
+ size: NotRequired[pulumi.Input[builtins.int]]
516
+ """
517
+ Override size (in GB) of the cloned volume
518
+ """
519
+ elif False:
520
+ InstanceTemplateVolumeFromSnapshotArgsDict: TypeAlias = Mapping[str, Any]
521
+
522
+ @pulumi.input_type
523
+ class InstanceTemplateVolumeFromSnapshotArgs:
524
+ def __init__(__self__, *,
525
+ snapshot_id: pulumi.Input[builtins.str],
526
+ size: Optional[pulumi.Input[builtins.int]] = None):
527
+ """
528
+ :param pulumi.Input[builtins.str] snapshot_id: ID of the snapshot to clone
529
+ :param pulumi.Input[builtins.int] size: Override size (in GB) of the cloned volume
530
+ """
531
+ pulumi.set(__self__, "snapshot_id", snapshot_id)
532
+ if size is not None:
533
+ pulumi.set(__self__, "size", size)
534
+
535
+ @property
536
+ @pulumi.getter(name="snapshotId")
537
+ def snapshot_id(self) -> pulumi.Input[builtins.str]:
538
+ """
539
+ ID of the snapshot to clone
540
+ """
541
+ return pulumi.get(self, "snapshot_id")
542
+
543
+ @snapshot_id.setter
544
+ def snapshot_id(self, value: pulumi.Input[builtins.str]):
545
+ pulumi.set(self, "snapshot_id", value)
546
+
547
+ @property
548
+ @pulumi.getter
549
+ def size(self) -> Optional[pulumi.Input[builtins.int]]:
550
+ """
551
+ Override size (in GB) of the cloned volume
552
+ """
553
+ return pulumi.get(self, "size")
554
+
555
+ @size.setter
556
+ def size(self, value: Optional[pulumi.Input[builtins.int]]):
557
+ pulumi.set(self, "size", value)
558
+
559
+