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
@@ -21,32 +21,36 @@ __all__ = ['DeploymentArgs', 'Deployment']
21
21
  @pulumi.input_type
22
22
  class DeploymentArgs:
23
23
  def __init__(__self__, *,
24
- model_name: pulumi.Input[str],
25
- node_type: pulumi.Input[str],
26
- accept_eula: Optional[pulumi.Input[bool]] = None,
27
- max_size: Optional[pulumi.Input[int]] = None,
28
- min_size: Optional[pulumi.Input[int]] = None,
29
- name: Optional[pulumi.Input[str]] = None,
24
+ model_id: pulumi.Input[_builtins.str],
25
+ node_type: pulumi.Input[_builtins.str],
26
+ accept_eula: Optional[pulumi.Input[_builtins.bool]] = None,
27
+ max_size: Optional[pulumi.Input[_builtins.int]] = None,
28
+ min_size: Optional[pulumi.Input[_builtins.int]] = None,
29
+ name: Optional[pulumi.Input[_builtins.str]] = None,
30
30
  private_endpoint: Optional[pulumi.Input['DeploymentPrivateEndpointArgs']] = None,
31
- project_id: Optional[pulumi.Input[str]] = None,
31
+ private_ips: Optional[pulumi.Input[Sequence[pulumi.Input['DeploymentPrivateIpArgs']]]] = None,
32
+ project_id: Optional[pulumi.Input[_builtins.str]] = None,
32
33
  public_endpoint: Optional[pulumi.Input['DeploymentPublicEndpointArgs']] = None,
33
- region: Optional[pulumi.Input[str]] = None,
34
- tags: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None):
34
+ quantization: Optional[pulumi.Input[_builtins.int]] = None,
35
+ region: Optional[pulumi.Input[_builtins.str]] = None,
36
+ tags: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None):
35
37
  """
36
38
  The set of arguments for constructing a Deployment resource.
37
- :param pulumi.Input[str] model_name: The model name to use for the deployment. Model names can be found in Console or using Scaleway's CLI (`scw inference model list`)
38
- :param pulumi.Input[str] node_type: The node type to use for the deployment. Node types can be found using Scaleway's CLI (`scw inference node-type list`)
39
- :param pulumi.Input[bool] accept_eula: Some models (e.g Meta Llama) require end-user license agreements. Set `true` to accept.
40
- :param pulumi.Input[int] max_size: The maximum size of the pool.
41
- :param pulumi.Input[int] min_size: The minimum size of the pool.
42
- :param pulumi.Input[str] name: The deployment name.
39
+ :param pulumi.Input[_builtins.str] model_id: The model id used for the deployment.
40
+ :param pulumi.Input[_builtins.str] node_type: The node type to use for the deployment. Node types can be found using Scaleway's CLI (`scw inference node-type list`)
41
+ :param pulumi.Input[_builtins.bool] accept_eula: Some models (e.g Meta Llama) require end-user license agreements. Set `true` to accept.
42
+ :param pulumi.Input[_builtins.int] max_size: The maximum size of the pool.
43
+ :param pulumi.Input[_builtins.int] min_size: The minimum size of the pool.
44
+ :param pulumi.Input[_builtins.str] name: The deployment name.
43
45
  :param pulumi.Input['DeploymentPrivateEndpointArgs'] private_endpoint: Configuration of the deployment's private endpoint.
44
- :param pulumi.Input[str] project_id: `project_id`) The ID of the project the deployment is associated with.
46
+ :param pulumi.Input[Sequence[pulumi.Input['DeploymentPrivateIpArgs']]] private_ips: The private IPv4 address associated with the deployment.
47
+ :param pulumi.Input[_builtins.str] project_id: `project_id`) The ID of the project the deployment is associated with.
45
48
  :param pulumi.Input['DeploymentPublicEndpointArgs'] public_endpoint: Configuration of the deployment's public endpoint.
46
- :param pulumi.Input[str] region: `region`) The region in which the deployment is created.
47
- :param pulumi.Input[Sequence[pulumi.Input[str]]] tags: The tags associated with the deployment.
49
+ :param pulumi.Input[_builtins.int] quantization: The number of bits each model parameter should be quantized to
50
+ :param pulumi.Input[_builtins.str] region: `region`) The region in which the deployment is created.
51
+ :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] tags: The tags associated with the deployment.
48
52
  """
49
- pulumi.set(__self__, "model_name", model_name)
53
+ pulumi.set(__self__, "model_id", model_id)
50
54
  pulumi.set(__self__, "node_type", node_type)
51
55
  if accept_eula is not None:
52
56
  pulumi.set(__self__, "accept_eula", accept_eula)
@@ -58,88 +62,92 @@ class DeploymentArgs:
58
62
  pulumi.set(__self__, "name", name)
59
63
  if private_endpoint is not None:
60
64
  pulumi.set(__self__, "private_endpoint", private_endpoint)
65
+ if private_ips is not None:
66
+ pulumi.set(__self__, "private_ips", private_ips)
61
67
  if project_id is not None:
62
68
  pulumi.set(__self__, "project_id", project_id)
63
69
  if public_endpoint is not None:
64
70
  pulumi.set(__self__, "public_endpoint", public_endpoint)
71
+ if quantization is not None:
72
+ pulumi.set(__self__, "quantization", quantization)
65
73
  if region is not None:
66
74
  pulumi.set(__self__, "region", region)
67
75
  if tags is not None:
68
76
  pulumi.set(__self__, "tags", tags)
69
77
 
70
- @property
71
- @pulumi.getter(name="modelName")
72
- def model_name(self) -> pulumi.Input[str]:
78
+ @_builtins.property
79
+ @pulumi.getter(name="modelId")
80
+ def model_id(self) -> pulumi.Input[_builtins.str]:
73
81
  """
74
- The model name to use for the deployment. Model names can be found in Console or using Scaleway's CLI (`scw inference model list`)
82
+ The model id used for the deployment.
75
83
  """
76
- return pulumi.get(self, "model_name")
84
+ return pulumi.get(self, "model_id")
77
85
 
78
- @model_name.setter
79
- def model_name(self, value: pulumi.Input[str]):
80
- pulumi.set(self, "model_name", value)
86
+ @model_id.setter
87
+ def model_id(self, value: pulumi.Input[_builtins.str]):
88
+ pulumi.set(self, "model_id", value)
81
89
 
82
- @property
90
+ @_builtins.property
83
91
  @pulumi.getter(name="nodeType")
84
- def node_type(self) -> pulumi.Input[str]:
92
+ def node_type(self) -> pulumi.Input[_builtins.str]:
85
93
  """
86
94
  The node type to use for the deployment. Node types can be found using Scaleway's CLI (`scw inference node-type list`)
87
95
  """
88
96
  return pulumi.get(self, "node_type")
89
97
 
90
98
  @node_type.setter
91
- def node_type(self, value: pulumi.Input[str]):
99
+ def node_type(self, value: pulumi.Input[_builtins.str]):
92
100
  pulumi.set(self, "node_type", value)
93
101
 
94
- @property
102
+ @_builtins.property
95
103
  @pulumi.getter(name="acceptEula")
96
- def accept_eula(self) -> Optional[pulumi.Input[bool]]:
104
+ def accept_eula(self) -> Optional[pulumi.Input[_builtins.bool]]:
97
105
  """
98
106
  Some models (e.g Meta Llama) require end-user license agreements. Set `true` to accept.
99
107
  """
100
108
  return pulumi.get(self, "accept_eula")
101
109
 
102
110
  @accept_eula.setter
103
- def accept_eula(self, value: Optional[pulumi.Input[bool]]):
111
+ def accept_eula(self, value: Optional[pulumi.Input[_builtins.bool]]):
104
112
  pulumi.set(self, "accept_eula", value)
105
113
 
106
- @property
114
+ @_builtins.property
107
115
  @pulumi.getter(name="maxSize")
108
- def max_size(self) -> Optional[pulumi.Input[int]]:
116
+ def max_size(self) -> Optional[pulumi.Input[_builtins.int]]:
109
117
  """
110
118
  The maximum size of the pool.
111
119
  """
112
120
  return pulumi.get(self, "max_size")
113
121
 
114
122
  @max_size.setter
115
- def max_size(self, value: Optional[pulumi.Input[int]]):
123
+ def max_size(self, value: Optional[pulumi.Input[_builtins.int]]):
116
124
  pulumi.set(self, "max_size", value)
117
125
 
118
- @property
126
+ @_builtins.property
119
127
  @pulumi.getter(name="minSize")
120
- def min_size(self) -> Optional[pulumi.Input[int]]:
128
+ def min_size(self) -> Optional[pulumi.Input[_builtins.int]]:
121
129
  """
122
130
  The minimum size of the pool.
123
131
  """
124
132
  return pulumi.get(self, "min_size")
125
133
 
126
134
  @min_size.setter
127
- def min_size(self, value: Optional[pulumi.Input[int]]):
135
+ def min_size(self, value: Optional[pulumi.Input[_builtins.int]]):
128
136
  pulumi.set(self, "min_size", value)
129
137
 
130
- @property
138
+ @_builtins.property
131
139
  @pulumi.getter
132
- def name(self) -> Optional[pulumi.Input[str]]:
140
+ def name(self) -> Optional[pulumi.Input[_builtins.str]]:
133
141
  """
134
142
  The deployment name.
135
143
  """
136
144
  return pulumi.get(self, "name")
137
145
 
138
146
  @name.setter
139
- def name(self, value: Optional[pulumi.Input[str]]):
147
+ def name(self, value: Optional[pulumi.Input[_builtins.str]]):
140
148
  pulumi.set(self, "name", value)
141
149
 
142
- @property
150
+ @_builtins.property
143
151
  @pulumi.getter(name="privateEndpoint")
144
152
  def private_endpoint(self) -> Optional[pulumi.Input['DeploymentPrivateEndpointArgs']]:
145
153
  """
@@ -151,19 +159,31 @@ class DeploymentArgs:
151
159
  def private_endpoint(self, value: Optional[pulumi.Input['DeploymentPrivateEndpointArgs']]):
152
160
  pulumi.set(self, "private_endpoint", value)
153
161
 
154
- @property
162
+ @_builtins.property
163
+ @pulumi.getter(name="privateIps")
164
+ def private_ips(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['DeploymentPrivateIpArgs']]]]:
165
+ """
166
+ The private IPv4 address associated with the deployment.
167
+ """
168
+ return pulumi.get(self, "private_ips")
169
+
170
+ @private_ips.setter
171
+ def private_ips(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['DeploymentPrivateIpArgs']]]]):
172
+ pulumi.set(self, "private_ips", value)
173
+
174
+ @_builtins.property
155
175
  @pulumi.getter(name="projectId")
156
- def project_id(self) -> Optional[pulumi.Input[str]]:
176
+ def project_id(self) -> Optional[pulumi.Input[_builtins.str]]:
157
177
  """
158
178
  `project_id`) The ID of the project the deployment is associated with.
159
179
  """
160
180
  return pulumi.get(self, "project_id")
161
181
 
162
182
  @project_id.setter
163
- def project_id(self, value: Optional[pulumi.Input[str]]):
183
+ def project_id(self, value: Optional[pulumi.Input[_builtins.str]]):
164
184
  pulumi.set(self, "project_id", value)
165
185
 
166
- @property
186
+ @_builtins.property
167
187
  @pulumi.getter(name="publicEndpoint")
168
188
  def public_endpoint(self) -> Optional[pulumi.Input['DeploymentPublicEndpointArgs']]:
169
189
  """
@@ -175,68 +195,84 @@ class DeploymentArgs:
175
195
  def public_endpoint(self, value: Optional[pulumi.Input['DeploymentPublicEndpointArgs']]):
176
196
  pulumi.set(self, "public_endpoint", value)
177
197
 
178
- @property
198
+ @_builtins.property
199
+ @pulumi.getter
200
+ def quantization(self) -> Optional[pulumi.Input[_builtins.int]]:
201
+ """
202
+ The number of bits each model parameter should be quantized to
203
+ """
204
+ return pulumi.get(self, "quantization")
205
+
206
+ @quantization.setter
207
+ def quantization(self, value: Optional[pulumi.Input[_builtins.int]]):
208
+ pulumi.set(self, "quantization", value)
209
+
210
+ @_builtins.property
179
211
  @pulumi.getter
180
- def region(self) -> Optional[pulumi.Input[str]]:
212
+ def region(self) -> Optional[pulumi.Input[_builtins.str]]:
181
213
  """
182
214
  `region`) The region in which the deployment is created.
183
215
  """
184
216
  return pulumi.get(self, "region")
185
217
 
186
218
  @region.setter
187
- def region(self, value: Optional[pulumi.Input[str]]):
219
+ def region(self, value: Optional[pulumi.Input[_builtins.str]]):
188
220
  pulumi.set(self, "region", value)
189
221
 
190
- @property
222
+ @_builtins.property
191
223
  @pulumi.getter
192
- def tags(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
224
+ def tags(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]:
193
225
  """
194
226
  The tags associated with the deployment.
195
227
  """
196
228
  return pulumi.get(self, "tags")
197
229
 
198
230
  @tags.setter
199
- def tags(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
231
+ def tags(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]):
200
232
  pulumi.set(self, "tags", value)
201
233
 
202
234
 
203
235
  @pulumi.input_type
204
236
  class _DeploymentState:
205
237
  def __init__(__self__, *,
206
- accept_eula: Optional[pulumi.Input[bool]] = None,
207
- created_at: Optional[pulumi.Input[str]] = None,
208
- max_size: Optional[pulumi.Input[int]] = None,
209
- min_size: Optional[pulumi.Input[int]] = None,
210
- model_id: Optional[pulumi.Input[str]] = None,
211
- model_name: Optional[pulumi.Input[str]] = None,
212
- name: Optional[pulumi.Input[str]] = None,
213
- node_type: Optional[pulumi.Input[str]] = None,
238
+ accept_eula: Optional[pulumi.Input[_builtins.bool]] = None,
239
+ created_at: Optional[pulumi.Input[_builtins.str]] = None,
240
+ max_size: Optional[pulumi.Input[_builtins.int]] = None,
241
+ min_size: Optional[pulumi.Input[_builtins.int]] = None,
242
+ model_id: Optional[pulumi.Input[_builtins.str]] = None,
243
+ model_name: Optional[pulumi.Input[_builtins.str]] = None,
244
+ name: Optional[pulumi.Input[_builtins.str]] = None,
245
+ node_type: Optional[pulumi.Input[_builtins.str]] = None,
214
246
  private_endpoint: Optional[pulumi.Input['DeploymentPrivateEndpointArgs']] = None,
215
- project_id: Optional[pulumi.Input[str]] = None,
247
+ private_ips: Optional[pulumi.Input[Sequence[pulumi.Input['DeploymentPrivateIpArgs']]]] = None,
248
+ project_id: Optional[pulumi.Input[_builtins.str]] = None,
216
249
  public_endpoint: Optional[pulumi.Input['DeploymentPublicEndpointArgs']] = None,
217
- region: Optional[pulumi.Input[str]] = None,
218
- size: Optional[pulumi.Input[int]] = None,
219
- status: Optional[pulumi.Input[str]] = None,
220
- tags: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
221
- updated_at: Optional[pulumi.Input[str]] = None):
250
+ quantization: Optional[pulumi.Input[_builtins.int]] = None,
251
+ region: Optional[pulumi.Input[_builtins.str]] = None,
252
+ size: Optional[pulumi.Input[_builtins.int]] = None,
253
+ status: Optional[pulumi.Input[_builtins.str]] = None,
254
+ tags: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
255
+ updated_at: Optional[pulumi.Input[_builtins.str]] = None):
222
256
  """
223
257
  Input properties used for looking up and filtering Deployment resources.
224
- :param pulumi.Input[bool] accept_eula: Some models (e.g Meta Llama) require end-user license agreements. Set `true` to accept.
225
- :param pulumi.Input[str] created_at: The date and time of the creation of the deployment.
226
- :param pulumi.Input[int] max_size: The maximum size of the pool.
227
- :param pulumi.Input[int] min_size: The minimum size of the pool.
228
- :param pulumi.Input[str] model_id: The model id used for the deployment.
229
- :param pulumi.Input[str] model_name: The model name to use for the deployment. Model names can be found in Console or using Scaleway's CLI (`scw inference model list`)
230
- :param pulumi.Input[str] name: The deployment name.
231
- :param pulumi.Input[str] node_type: The node type to use for the deployment. Node types can be found using Scaleway's CLI (`scw inference node-type list`)
258
+ :param pulumi.Input[_builtins.bool] accept_eula: Some models (e.g Meta Llama) require end-user license agreements. Set `true` to accept.
259
+ :param pulumi.Input[_builtins.str] created_at: The date and time of the creation of the deployment.
260
+ :param pulumi.Input[_builtins.int] max_size: The maximum size of the pool.
261
+ :param pulumi.Input[_builtins.int] min_size: The minimum size of the pool.
262
+ :param pulumi.Input[_builtins.str] model_id: The model id used for the deployment.
263
+ :param pulumi.Input[_builtins.str] model_name: The model name used for the deployment. Model names can be found in Console or using Scaleway's CLI (`scw inference model list`)
264
+ :param pulumi.Input[_builtins.str] name: The deployment name.
265
+ :param pulumi.Input[_builtins.str] node_type: The node type to use for the deployment. Node types can be found using Scaleway's CLI (`scw inference node-type list`)
232
266
  :param pulumi.Input['DeploymentPrivateEndpointArgs'] private_endpoint: Configuration of the deployment's private endpoint.
233
- :param pulumi.Input[str] project_id: `project_id`) The ID of the project the deployment is associated with.
267
+ :param pulumi.Input[Sequence[pulumi.Input['DeploymentPrivateIpArgs']]] private_ips: The private IPv4 address associated with the deployment.
268
+ :param pulumi.Input[_builtins.str] project_id: `project_id`) The ID of the project the deployment is associated with.
234
269
  :param pulumi.Input['DeploymentPublicEndpointArgs'] public_endpoint: Configuration of the deployment's public endpoint.
235
- :param pulumi.Input[str] region: `region`) The region in which the deployment is created.
236
- :param pulumi.Input[int] size: The size of the pool.
237
- :param pulumi.Input[str] status: The status of the deployment.
238
- :param pulumi.Input[Sequence[pulumi.Input[str]]] tags: The tags associated with the deployment.
239
- :param pulumi.Input[str] updated_at: The date and time of the last update of the deployment.
270
+ :param pulumi.Input[_builtins.int] quantization: The number of bits each model parameter should be quantized to
271
+ :param pulumi.Input[_builtins.str] region: `region`) The region in which the deployment is created.
272
+ :param pulumi.Input[_builtins.int] size: The size of the pool.
273
+ :param pulumi.Input[_builtins.str] status: The status of the deployment.
274
+ :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] tags: The tags associated with the deployment.
275
+ :param pulumi.Input[_builtins.str] updated_at: The date and time of the last update of the deployment.
240
276
  """
241
277
  if accept_eula is not None:
242
278
  pulumi.set(__self__, "accept_eula", accept_eula)
@@ -256,10 +292,14 @@ class _DeploymentState:
256
292
  pulumi.set(__self__, "node_type", node_type)
257
293
  if private_endpoint is not None:
258
294
  pulumi.set(__self__, "private_endpoint", private_endpoint)
295
+ if private_ips is not None:
296
+ pulumi.set(__self__, "private_ips", private_ips)
259
297
  if project_id is not None:
260
298
  pulumi.set(__self__, "project_id", project_id)
261
299
  if public_endpoint is not None:
262
300
  pulumi.set(__self__, "public_endpoint", public_endpoint)
301
+ if quantization is not None:
302
+ pulumi.set(__self__, "quantization", quantization)
263
303
  if region is not None:
264
304
  pulumi.set(__self__, "region", region)
265
305
  if size is not None:
@@ -271,103 +311,103 @@ class _DeploymentState:
271
311
  if updated_at is not None:
272
312
  pulumi.set(__self__, "updated_at", updated_at)
273
313
 
274
- @property
314
+ @_builtins.property
275
315
  @pulumi.getter(name="acceptEula")
276
- def accept_eula(self) -> Optional[pulumi.Input[bool]]:
316
+ def accept_eula(self) -> Optional[pulumi.Input[_builtins.bool]]:
277
317
  """
278
318
  Some models (e.g Meta Llama) require end-user license agreements. Set `true` to accept.
279
319
  """
280
320
  return pulumi.get(self, "accept_eula")
281
321
 
282
322
  @accept_eula.setter
283
- def accept_eula(self, value: Optional[pulumi.Input[bool]]):
323
+ def accept_eula(self, value: Optional[pulumi.Input[_builtins.bool]]):
284
324
  pulumi.set(self, "accept_eula", value)
285
325
 
286
- @property
326
+ @_builtins.property
287
327
  @pulumi.getter(name="createdAt")
288
- def created_at(self) -> Optional[pulumi.Input[str]]:
328
+ def created_at(self) -> Optional[pulumi.Input[_builtins.str]]:
289
329
  """
290
330
  The date and time of the creation of the deployment.
291
331
  """
292
332
  return pulumi.get(self, "created_at")
293
333
 
294
334
  @created_at.setter
295
- def created_at(self, value: Optional[pulumi.Input[str]]):
335
+ def created_at(self, value: Optional[pulumi.Input[_builtins.str]]):
296
336
  pulumi.set(self, "created_at", value)
297
337
 
298
- @property
338
+ @_builtins.property
299
339
  @pulumi.getter(name="maxSize")
300
- def max_size(self) -> Optional[pulumi.Input[int]]:
340
+ def max_size(self) -> Optional[pulumi.Input[_builtins.int]]:
301
341
  """
302
342
  The maximum size of the pool.
303
343
  """
304
344
  return pulumi.get(self, "max_size")
305
345
 
306
346
  @max_size.setter
307
- def max_size(self, value: Optional[pulumi.Input[int]]):
347
+ def max_size(self, value: Optional[pulumi.Input[_builtins.int]]):
308
348
  pulumi.set(self, "max_size", value)
309
349
 
310
- @property
350
+ @_builtins.property
311
351
  @pulumi.getter(name="minSize")
312
- def min_size(self) -> Optional[pulumi.Input[int]]:
352
+ def min_size(self) -> Optional[pulumi.Input[_builtins.int]]:
313
353
  """
314
354
  The minimum size of the pool.
315
355
  """
316
356
  return pulumi.get(self, "min_size")
317
357
 
318
358
  @min_size.setter
319
- def min_size(self, value: Optional[pulumi.Input[int]]):
359
+ def min_size(self, value: Optional[pulumi.Input[_builtins.int]]):
320
360
  pulumi.set(self, "min_size", value)
321
361
 
322
- @property
362
+ @_builtins.property
323
363
  @pulumi.getter(name="modelId")
324
- def model_id(self) -> Optional[pulumi.Input[str]]:
364
+ def model_id(self) -> Optional[pulumi.Input[_builtins.str]]:
325
365
  """
326
366
  The model id used for the deployment.
327
367
  """
328
368
  return pulumi.get(self, "model_id")
329
369
 
330
370
  @model_id.setter
331
- def model_id(self, value: Optional[pulumi.Input[str]]):
371
+ def model_id(self, value: Optional[pulumi.Input[_builtins.str]]):
332
372
  pulumi.set(self, "model_id", value)
333
373
 
334
- @property
374
+ @_builtins.property
335
375
  @pulumi.getter(name="modelName")
336
- def model_name(self) -> Optional[pulumi.Input[str]]:
376
+ def model_name(self) -> Optional[pulumi.Input[_builtins.str]]:
337
377
  """
338
- The model name to use for the deployment. Model names can be found in Console or using Scaleway's CLI (`scw inference model list`)
378
+ The model name used for the deployment. Model names can be found in Console or using Scaleway's CLI (`scw inference model list`)
339
379
  """
340
380
  return pulumi.get(self, "model_name")
341
381
 
342
382
  @model_name.setter
343
- def model_name(self, value: Optional[pulumi.Input[str]]):
383
+ def model_name(self, value: Optional[pulumi.Input[_builtins.str]]):
344
384
  pulumi.set(self, "model_name", value)
345
385
 
346
- @property
386
+ @_builtins.property
347
387
  @pulumi.getter
348
- def name(self) -> Optional[pulumi.Input[str]]:
388
+ def name(self) -> Optional[pulumi.Input[_builtins.str]]:
349
389
  """
350
390
  The deployment name.
351
391
  """
352
392
  return pulumi.get(self, "name")
353
393
 
354
394
  @name.setter
355
- def name(self, value: Optional[pulumi.Input[str]]):
395
+ def name(self, value: Optional[pulumi.Input[_builtins.str]]):
356
396
  pulumi.set(self, "name", value)
357
397
 
358
- @property
398
+ @_builtins.property
359
399
  @pulumi.getter(name="nodeType")
360
- def node_type(self) -> Optional[pulumi.Input[str]]:
400
+ def node_type(self) -> Optional[pulumi.Input[_builtins.str]]:
361
401
  """
362
402
  The node type to use for the deployment. Node types can be found using Scaleway's CLI (`scw inference node-type list`)
363
403
  """
364
404
  return pulumi.get(self, "node_type")
365
405
 
366
406
  @node_type.setter
367
- def node_type(self, value: Optional[pulumi.Input[str]]):
407
+ def node_type(self, value: Optional[pulumi.Input[_builtins.str]]):
368
408
  pulumi.set(self, "node_type", value)
369
409
 
370
- @property
410
+ @_builtins.property
371
411
  @pulumi.getter(name="privateEndpoint")
372
412
  def private_endpoint(self) -> Optional[pulumi.Input['DeploymentPrivateEndpointArgs']]:
373
413
  """
@@ -379,19 +419,31 @@ class _DeploymentState:
379
419
  def private_endpoint(self, value: Optional[pulumi.Input['DeploymentPrivateEndpointArgs']]):
380
420
  pulumi.set(self, "private_endpoint", value)
381
421
 
382
- @property
422
+ @_builtins.property
423
+ @pulumi.getter(name="privateIps")
424
+ def private_ips(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['DeploymentPrivateIpArgs']]]]:
425
+ """
426
+ The private IPv4 address associated with the deployment.
427
+ """
428
+ return pulumi.get(self, "private_ips")
429
+
430
+ @private_ips.setter
431
+ def private_ips(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['DeploymentPrivateIpArgs']]]]):
432
+ pulumi.set(self, "private_ips", value)
433
+
434
+ @_builtins.property
383
435
  @pulumi.getter(name="projectId")
384
- def project_id(self) -> Optional[pulumi.Input[str]]:
436
+ def project_id(self) -> Optional[pulumi.Input[_builtins.str]]:
385
437
  """
386
438
  `project_id`) The ID of the project the deployment is associated with.
387
439
  """
388
440
  return pulumi.get(self, "project_id")
389
441
 
390
442
  @project_id.setter
391
- def project_id(self, value: Optional[pulumi.Input[str]]):
443
+ def project_id(self, value: Optional[pulumi.Input[_builtins.str]]):
392
444
  pulumi.set(self, "project_id", value)
393
445
 
394
- @property
446
+ @_builtins.property
395
447
  @pulumi.getter(name="publicEndpoint")
396
448
  def public_endpoint(self) -> Optional[pulumi.Input['DeploymentPublicEndpointArgs']]:
397
449
  """
@@ -403,83 +455,98 @@ class _DeploymentState:
403
455
  def public_endpoint(self, value: Optional[pulumi.Input['DeploymentPublicEndpointArgs']]):
404
456
  pulumi.set(self, "public_endpoint", value)
405
457
 
406
- @property
458
+ @_builtins.property
407
459
  @pulumi.getter
408
- def region(self) -> Optional[pulumi.Input[str]]:
460
+ def quantization(self) -> Optional[pulumi.Input[_builtins.int]]:
461
+ """
462
+ The number of bits each model parameter should be quantized to
463
+ """
464
+ return pulumi.get(self, "quantization")
465
+
466
+ @quantization.setter
467
+ def quantization(self, value: Optional[pulumi.Input[_builtins.int]]):
468
+ pulumi.set(self, "quantization", value)
469
+
470
+ @_builtins.property
471
+ @pulumi.getter
472
+ def region(self) -> Optional[pulumi.Input[_builtins.str]]:
409
473
  """
410
474
  `region`) The region in which the deployment is created.
411
475
  """
412
476
  return pulumi.get(self, "region")
413
477
 
414
478
  @region.setter
415
- def region(self, value: Optional[pulumi.Input[str]]):
479
+ def region(self, value: Optional[pulumi.Input[_builtins.str]]):
416
480
  pulumi.set(self, "region", value)
417
481
 
418
- @property
482
+ @_builtins.property
419
483
  @pulumi.getter
420
- def size(self) -> Optional[pulumi.Input[int]]:
484
+ def size(self) -> Optional[pulumi.Input[_builtins.int]]:
421
485
  """
422
486
  The size of the pool.
423
487
  """
424
488
  return pulumi.get(self, "size")
425
489
 
426
490
  @size.setter
427
- def size(self, value: Optional[pulumi.Input[int]]):
491
+ def size(self, value: Optional[pulumi.Input[_builtins.int]]):
428
492
  pulumi.set(self, "size", value)
429
493
 
430
- @property
494
+ @_builtins.property
431
495
  @pulumi.getter
432
- def status(self) -> Optional[pulumi.Input[str]]:
496
+ def status(self) -> Optional[pulumi.Input[_builtins.str]]:
433
497
  """
434
498
  The status of the deployment.
435
499
  """
436
500
  return pulumi.get(self, "status")
437
501
 
438
502
  @status.setter
439
- def status(self, value: Optional[pulumi.Input[str]]):
503
+ def status(self, value: Optional[pulumi.Input[_builtins.str]]):
440
504
  pulumi.set(self, "status", value)
441
505
 
442
- @property
506
+ @_builtins.property
443
507
  @pulumi.getter
444
- def tags(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
508
+ def tags(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]:
445
509
  """
446
510
  The tags associated with the deployment.
447
511
  """
448
512
  return pulumi.get(self, "tags")
449
513
 
450
514
  @tags.setter
451
- def tags(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
515
+ def tags(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]):
452
516
  pulumi.set(self, "tags", value)
453
517
 
454
- @property
518
+ @_builtins.property
455
519
  @pulumi.getter(name="updatedAt")
456
- def updated_at(self) -> Optional[pulumi.Input[str]]:
520
+ def updated_at(self) -> Optional[pulumi.Input[_builtins.str]]:
457
521
  """
458
522
  The date and time of the last update of the deployment.
459
523
  """
460
524
  return pulumi.get(self, "updated_at")
461
525
 
462
526
  @updated_at.setter
463
- def updated_at(self, value: Optional[pulumi.Input[str]]):
527
+ def updated_at(self, value: Optional[pulumi.Input[_builtins.str]]):
464
528
  pulumi.set(self, "updated_at", value)
465
529
 
466
530
 
531
+ @pulumi.type_token("scaleway:inference/deployment:Deployment")
467
532
  class Deployment(pulumi.CustomResource):
468
533
  @overload
469
534
  def __init__(__self__,
470
535
  resource_name: str,
471
536
  opts: Optional[pulumi.ResourceOptions] = None,
472
- accept_eula: Optional[pulumi.Input[bool]] = None,
473
- max_size: Optional[pulumi.Input[int]] = None,
474
- min_size: Optional[pulumi.Input[int]] = None,
475
- model_name: Optional[pulumi.Input[str]] = None,
476
- name: Optional[pulumi.Input[str]] = None,
477
- node_type: Optional[pulumi.Input[str]] = None,
537
+ accept_eula: Optional[pulumi.Input[_builtins.bool]] = None,
538
+ max_size: Optional[pulumi.Input[_builtins.int]] = None,
539
+ min_size: Optional[pulumi.Input[_builtins.int]] = None,
540
+ model_id: Optional[pulumi.Input[_builtins.str]] = None,
541
+ name: Optional[pulumi.Input[_builtins.str]] = None,
542
+ node_type: Optional[pulumi.Input[_builtins.str]] = None,
478
543
  private_endpoint: Optional[pulumi.Input[Union['DeploymentPrivateEndpointArgs', 'DeploymentPrivateEndpointArgsDict']]] = None,
479
- project_id: Optional[pulumi.Input[str]] = None,
544
+ private_ips: Optional[pulumi.Input[Sequence[pulumi.Input[Union['DeploymentPrivateIpArgs', 'DeploymentPrivateIpArgsDict']]]]] = None,
545
+ project_id: Optional[pulumi.Input[_builtins.str]] = None,
480
546
  public_endpoint: Optional[pulumi.Input[Union['DeploymentPublicEndpointArgs', 'DeploymentPublicEndpointArgsDict']]] = None,
481
- region: Optional[pulumi.Input[str]] = None,
482
- tags: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
547
+ quantization: Optional[pulumi.Input[_builtins.int]] = None,
548
+ region: Optional[pulumi.Input[_builtins.str]] = None,
549
+ tags: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
483
550
  __props__=None):
484
551
  """
485
552
  Creates and manages Scaleway Managed Inference deployments.
@@ -491,12 +558,14 @@ class Deployment(pulumi.CustomResource):
491
558
 
492
559
  ```python
493
560
  import pulumi
561
+ import pulumi_scaleway as scaleway
494
562
  import pulumiverse_scaleway as scaleway
495
563
 
564
+ my_model = scaleway.inference.get_model(name="meta/llama-3.1-8b-instruct:fp8")
496
565
  deployment = scaleway.inference.Deployment("deployment",
497
566
  name="tf-inference-deployment",
498
567
  node_type="L4",
499
- model_name="meta/llama-3.1-8b-instruct:fp8",
568
+ model_name=my_model.id,
500
569
  public_endpoint={
501
570
  "is_enabled": True,
502
571
  },
@@ -515,17 +584,19 @@ class Deployment(pulumi.CustomResource):
515
584
 
516
585
  :param str resource_name: The name of the resource.
517
586
  :param pulumi.ResourceOptions opts: Options for the resource.
518
- :param pulumi.Input[bool] accept_eula: Some models (e.g Meta Llama) require end-user license agreements. Set `true` to accept.
519
- :param pulumi.Input[int] max_size: The maximum size of the pool.
520
- :param pulumi.Input[int] min_size: The minimum size of the pool.
521
- :param pulumi.Input[str] model_name: The model name to use for the deployment. Model names can be found in Console or using Scaleway's CLI (`scw inference model list`)
522
- :param pulumi.Input[str] name: The deployment name.
523
- :param pulumi.Input[str] node_type: The node type to use for the deployment. Node types can be found using Scaleway's CLI (`scw inference node-type list`)
587
+ :param pulumi.Input[_builtins.bool] accept_eula: Some models (e.g Meta Llama) require end-user license agreements. Set `true` to accept.
588
+ :param pulumi.Input[_builtins.int] max_size: The maximum size of the pool.
589
+ :param pulumi.Input[_builtins.int] min_size: The minimum size of the pool.
590
+ :param pulumi.Input[_builtins.str] model_id: The model id used for the deployment.
591
+ :param pulumi.Input[_builtins.str] name: The deployment name.
592
+ :param pulumi.Input[_builtins.str] node_type: The node type to use for the deployment. Node types can be found using Scaleway's CLI (`scw inference node-type list`)
524
593
  :param pulumi.Input[Union['DeploymentPrivateEndpointArgs', 'DeploymentPrivateEndpointArgsDict']] private_endpoint: Configuration of the deployment's private endpoint.
525
- :param pulumi.Input[str] project_id: `project_id`) The ID of the project the deployment is associated with.
594
+ :param pulumi.Input[Sequence[pulumi.Input[Union['DeploymentPrivateIpArgs', 'DeploymentPrivateIpArgsDict']]]] private_ips: The private IPv4 address associated with the deployment.
595
+ :param pulumi.Input[_builtins.str] project_id: `project_id`) The ID of the project the deployment is associated with.
526
596
  :param pulumi.Input[Union['DeploymentPublicEndpointArgs', 'DeploymentPublicEndpointArgsDict']] public_endpoint: Configuration of the deployment's public endpoint.
527
- :param pulumi.Input[str] region: `region`) The region in which the deployment is created.
528
- :param pulumi.Input[Sequence[pulumi.Input[str]]] tags: The tags associated with the deployment.
597
+ :param pulumi.Input[_builtins.int] quantization: The number of bits each model parameter should be quantized to
598
+ :param pulumi.Input[_builtins.str] region: `region`) The region in which the deployment is created.
599
+ :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] tags: The tags associated with the deployment.
529
600
  """
530
601
  ...
531
602
  @overload
@@ -543,12 +614,14 @@ class Deployment(pulumi.CustomResource):
543
614
 
544
615
  ```python
545
616
  import pulumi
617
+ import pulumi_scaleway as scaleway
546
618
  import pulumiverse_scaleway as scaleway
547
619
 
620
+ my_model = scaleway.inference.get_model(name="meta/llama-3.1-8b-instruct:fp8")
548
621
  deployment = scaleway.inference.Deployment("deployment",
549
622
  name="tf-inference-deployment",
550
623
  node_type="L4",
551
- model_name="meta/llama-3.1-8b-instruct:fp8",
624
+ model_name=my_model.id,
552
625
  public_endpoint={
553
626
  "is_enabled": True,
554
627
  },
@@ -580,17 +653,19 @@ class Deployment(pulumi.CustomResource):
580
653
  def _internal_init(__self__,
581
654
  resource_name: str,
582
655
  opts: Optional[pulumi.ResourceOptions] = None,
583
- accept_eula: Optional[pulumi.Input[bool]] = None,
584
- max_size: Optional[pulumi.Input[int]] = None,
585
- min_size: Optional[pulumi.Input[int]] = None,
586
- model_name: Optional[pulumi.Input[str]] = None,
587
- name: Optional[pulumi.Input[str]] = None,
588
- node_type: Optional[pulumi.Input[str]] = None,
656
+ accept_eula: Optional[pulumi.Input[_builtins.bool]] = None,
657
+ max_size: Optional[pulumi.Input[_builtins.int]] = None,
658
+ min_size: Optional[pulumi.Input[_builtins.int]] = None,
659
+ model_id: Optional[pulumi.Input[_builtins.str]] = None,
660
+ name: Optional[pulumi.Input[_builtins.str]] = None,
661
+ node_type: Optional[pulumi.Input[_builtins.str]] = None,
589
662
  private_endpoint: Optional[pulumi.Input[Union['DeploymentPrivateEndpointArgs', 'DeploymentPrivateEndpointArgsDict']]] = None,
590
- project_id: Optional[pulumi.Input[str]] = None,
663
+ private_ips: Optional[pulumi.Input[Sequence[pulumi.Input[Union['DeploymentPrivateIpArgs', 'DeploymentPrivateIpArgsDict']]]]] = None,
664
+ project_id: Optional[pulumi.Input[_builtins.str]] = None,
591
665
  public_endpoint: Optional[pulumi.Input[Union['DeploymentPublicEndpointArgs', 'DeploymentPublicEndpointArgsDict']]] = None,
592
- region: Optional[pulumi.Input[str]] = None,
593
- tags: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
666
+ quantization: Optional[pulumi.Input[_builtins.int]] = None,
667
+ region: Optional[pulumi.Input[_builtins.str]] = None,
668
+ tags: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
594
669
  __props__=None):
595
670
  opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts)
596
671
  if not isinstance(opts, pulumi.ResourceOptions):
@@ -603,20 +678,22 @@ class Deployment(pulumi.CustomResource):
603
678
  __props__.__dict__["accept_eula"] = accept_eula
604
679
  __props__.__dict__["max_size"] = max_size
605
680
  __props__.__dict__["min_size"] = min_size
606
- if model_name is None and not opts.urn:
607
- raise TypeError("Missing required property 'model_name'")
608
- __props__.__dict__["model_name"] = model_name
681
+ if model_id is None and not opts.urn:
682
+ raise TypeError("Missing required property 'model_id'")
683
+ __props__.__dict__["model_id"] = model_id
609
684
  __props__.__dict__["name"] = name
610
685
  if node_type is None and not opts.urn:
611
686
  raise TypeError("Missing required property 'node_type'")
612
687
  __props__.__dict__["node_type"] = node_type
613
688
  __props__.__dict__["private_endpoint"] = private_endpoint
689
+ __props__.__dict__["private_ips"] = private_ips
614
690
  __props__.__dict__["project_id"] = project_id
615
691
  __props__.__dict__["public_endpoint"] = public_endpoint
692
+ __props__.__dict__["quantization"] = quantization
616
693
  __props__.__dict__["region"] = region
617
694
  __props__.__dict__["tags"] = tags
618
695
  __props__.__dict__["created_at"] = None
619
- __props__.__dict__["model_id"] = None
696
+ __props__.__dict__["model_name"] = None
620
697
  __props__.__dict__["size"] = None
621
698
  __props__.__dict__["status"] = None
622
699
  __props__.__dict__["updated_at"] = None
@@ -632,22 +709,24 @@ class Deployment(pulumi.CustomResource):
632
709
  def get(resource_name: str,
633
710
  id: pulumi.Input[str],
634
711
  opts: Optional[pulumi.ResourceOptions] = None,
635
- accept_eula: Optional[pulumi.Input[bool]] = None,
636
- created_at: Optional[pulumi.Input[str]] = None,
637
- max_size: Optional[pulumi.Input[int]] = None,
638
- min_size: Optional[pulumi.Input[int]] = None,
639
- model_id: Optional[pulumi.Input[str]] = None,
640
- model_name: Optional[pulumi.Input[str]] = None,
641
- name: Optional[pulumi.Input[str]] = None,
642
- node_type: Optional[pulumi.Input[str]] = None,
712
+ accept_eula: Optional[pulumi.Input[_builtins.bool]] = None,
713
+ created_at: Optional[pulumi.Input[_builtins.str]] = None,
714
+ max_size: Optional[pulumi.Input[_builtins.int]] = None,
715
+ min_size: Optional[pulumi.Input[_builtins.int]] = None,
716
+ model_id: Optional[pulumi.Input[_builtins.str]] = None,
717
+ model_name: Optional[pulumi.Input[_builtins.str]] = None,
718
+ name: Optional[pulumi.Input[_builtins.str]] = None,
719
+ node_type: Optional[pulumi.Input[_builtins.str]] = None,
643
720
  private_endpoint: Optional[pulumi.Input[Union['DeploymentPrivateEndpointArgs', 'DeploymentPrivateEndpointArgsDict']]] = None,
644
- project_id: Optional[pulumi.Input[str]] = None,
721
+ private_ips: Optional[pulumi.Input[Sequence[pulumi.Input[Union['DeploymentPrivateIpArgs', 'DeploymentPrivateIpArgsDict']]]]] = None,
722
+ project_id: Optional[pulumi.Input[_builtins.str]] = None,
645
723
  public_endpoint: Optional[pulumi.Input[Union['DeploymentPublicEndpointArgs', 'DeploymentPublicEndpointArgsDict']]] = None,
646
- region: Optional[pulumi.Input[str]] = None,
647
- size: Optional[pulumi.Input[int]] = None,
648
- status: Optional[pulumi.Input[str]] = None,
649
- tags: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
650
- updated_at: Optional[pulumi.Input[str]] = None) -> 'Deployment':
724
+ quantization: Optional[pulumi.Input[_builtins.int]] = None,
725
+ region: Optional[pulumi.Input[_builtins.str]] = None,
726
+ size: Optional[pulumi.Input[_builtins.int]] = None,
727
+ status: Optional[pulumi.Input[_builtins.str]] = None,
728
+ tags: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
729
+ updated_at: Optional[pulumi.Input[_builtins.str]] = None) -> 'Deployment':
651
730
  """
652
731
  Get an existing Deployment resource's state with the given name, id, and optional extra
653
732
  properties used to qualify the lookup.
@@ -655,22 +734,24 @@ class Deployment(pulumi.CustomResource):
655
734
  :param str resource_name: The unique name of the resulting resource.
656
735
  :param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
657
736
  :param pulumi.ResourceOptions opts: Options for the resource.
658
- :param pulumi.Input[bool] accept_eula: Some models (e.g Meta Llama) require end-user license agreements. Set `true` to accept.
659
- :param pulumi.Input[str] created_at: The date and time of the creation of the deployment.
660
- :param pulumi.Input[int] max_size: The maximum size of the pool.
661
- :param pulumi.Input[int] min_size: The minimum size of the pool.
662
- :param pulumi.Input[str] model_id: The model id used for the deployment.
663
- :param pulumi.Input[str] model_name: The model name to use for the deployment. Model names can be found in Console or using Scaleway's CLI (`scw inference model list`)
664
- :param pulumi.Input[str] name: The deployment name.
665
- :param pulumi.Input[str] node_type: The node type to use for the deployment. Node types can be found using Scaleway's CLI (`scw inference node-type list`)
737
+ :param pulumi.Input[_builtins.bool] accept_eula: Some models (e.g Meta Llama) require end-user license agreements. Set `true` to accept.
738
+ :param pulumi.Input[_builtins.str] created_at: The date and time of the creation of the deployment.
739
+ :param pulumi.Input[_builtins.int] max_size: The maximum size of the pool.
740
+ :param pulumi.Input[_builtins.int] min_size: The minimum size of the pool.
741
+ :param pulumi.Input[_builtins.str] model_id: The model id used for the deployment.
742
+ :param pulumi.Input[_builtins.str] model_name: The model name used for the deployment. Model names can be found in Console or using Scaleway's CLI (`scw inference model list`)
743
+ :param pulumi.Input[_builtins.str] name: The deployment name.
744
+ :param pulumi.Input[_builtins.str] node_type: The node type to use for the deployment. Node types can be found using Scaleway's CLI (`scw inference node-type list`)
666
745
  :param pulumi.Input[Union['DeploymentPrivateEndpointArgs', 'DeploymentPrivateEndpointArgsDict']] private_endpoint: Configuration of the deployment's private endpoint.
667
- :param pulumi.Input[str] project_id: `project_id`) The ID of the project the deployment is associated with.
746
+ :param pulumi.Input[Sequence[pulumi.Input[Union['DeploymentPrivateIpArgs', 'DeploymentPrivateIpArgsDict']]]] private_ips: The private IPv4 address associated with the deployment.
747
+ :param pulumi.Input[_builtins.str] project_id: `project_id`) The ID of the project the deployment is associated with.
668
748
  :param pulumi.Input[Union['DeploymentPublicEndpointArgs', 'DeploymentPublicEndpointArgsDict']] public_endpoint: Configuration of the deployment's public endpoint.
669
- :param pulumi.Input[str] region: `region`) The region in which the deployment is created.
670
- :param pulumi.Input[int] size: The size of the pool.
671
- :param pulumi.Input[str] status: The status of the deployment.
672
- :param pulumi.Input[Sequence[pulumi.Input[str]]] tags: The tags associated with the deployment.
673
- :param pulumi.Input[str] updated_at: The date and time of the last update of the deployment.
749
+ :param pulumi.Input[_builtins.int] quantization: The number of bits each model parameter should be quantized to
750
+ :param pulumi.Input[_builtins.str] region: `region`) The region in which the deployment is created.
751
+ :param pulumi.Input[_builtins.int] size: The size of the pool.
752
+ :param pulumi.Input[_builtins.str] status: The status of the deployment.
753
+ :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] tags: The tags associated with the deployment.
754
+ :param pulumi.Input[_builtins.str] updated_at: The date and time of the last update of the deployment.
674
755
  """
675
756
  opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
676
757
 
@@ -685,8 +766,10 @@ class Deployment(pulumi.CustomResource):
685
766
  __props__.__dict__["name"] = name
686
767
  __props__.__dict__["node_type"] = node_type
687
768
  __props__.__dict__["private_endpoint"] = private_endpoint
769
+ __props__.__dict__["private_ips"] = private_ips
688
770
  __props__.__dict__["project_id"] = project_id
689
771
  __props__.__dict__["public_endpoint"] = public_endpoint
772
+ __props__.__dict__["quantization"] = quantization
690
773
  __props__.__dict__["region"] = region
691
774
  __props__.__dict__["size"] = size
692
775
  __props__.__dict__["status"] = status
@@ -694,71 +777,71 @@ class Deployment(pulumi.CustomResource):
694
777
  __props__.__dict__["updated_at"] = updated_at
695
778
  return Deployment(resource_name, opts=opts, __props__=__props__)
696
779
 
697
- @property
780
+ @_builtins.property
698
781
  @pulumi.getter(name="acceptEula")
699
- def accept_eula(self) -> pulumi.Output[Optional[bool]]:
782
+ def accept_eula(self) -> pulumi.Output[Optional[_builtins.bool]]:
700
783
  """
701
784
  Some models (e.g Meta Llama) require end-user license agreements. Set `true` to accept.
702
785
  """
703
786
  return pulumi.get(self, "accept_eula")
704
787
 
705
- @property
788
+ @_builtins.property
706
789
  @pulumi.getter(name="createdAt")
707
- def created_at(self) -> pulumi.Output[str]:
790
+ def created_at(self) -> pulumi.Output[_builtins.str]:
708
791
  """
709
792
  The date and time of the creation of the deployment.
710
793
  """
711
794
  return pulumi.get(self, "created_at")
712
795
 
713
- @property
796
+ @_builtins.property
714
797
  @pulumi.getter(name="maxSize")
715
- def max_size(self) -> pulumi.Output[int]:
798
+ def max_size(self) -> pulumi.Output[Optional[_builtins.int]]:
716
799
  """
717
800
  The maximum size of the pool.
718
801
  """
719
802
  return pulumi.get(self, "max_size")
720
803
 
721
- @property
804
+ @_builtins.property
722
805
  @pulumi.getter(name="minSize")
723
- def min_size(self) -> pulumi.Output[int]:
806
+ def min_size(self) -> pulumi.Output[Optional[_builtins.int]]:
724
807
  """
725
808
  The minimum size of the pool.
726
809
  """
727
810
  return pulumi.get(self, "min_size")
728
811
 
729
- @property
812
+ @_builtins.property
730
813
  @pulumi.getter(name="modelId")
731
- def model_id(self) -> pulumi.Output[str]:
814
+ def model_id(self) -> pulumi.Output[_builtins.str]:
732
815
  """
733
816
  The model id used for the deployment.
734
817
  """
735
818
  return pulumi.get(self, "model_id")
736
819
 
737
- @property
820
+ @_builtins.property
738
821
  @pulumi.getter(name="modelName")
739
- def model_name(self) -> pulumi.Output[str]:
822
+ def model_name(self) -> pulumi.Output[_builtins.str]:
740
823
  """
741
- The model name to use for the deployment. Model names can be found in Console or using Scaleway's CLI (`scw inference model list`)
824
+ The model name used for the deployment. Model names can be found in Console or using Scaleway's CLI (`scw inference model list`)
742
825
  """
743
826
  return pulumi.get(self, "model_name")
744
827
 
745
- @property
828
+ @_builtins.property
746
829
  @pulumi.getter
747
- def name(self) -> pulumi.Output[str]:
830
+ def name(self) -> pulumi.Output[_builtins.str]:
748
831
  """
749
832
  The deployment name.
750
833
  """
751
834
  return pulumi.get(self, "name")
752
835
 
753
- @property
836
+ @_builtins.property
754
837
  @pulumi.getter(name="nodeType")
755
- def node_type(self) -> pulumi.Output[str]:
838
+ def node_type(self) -> pulumi.Output[_builtins.str]:
756
839
  """
757
840
  The node type to use for the deployment. Node types can be found using Scaleway's CLI (`scw inference node-type list`)
758
841
  """
759
842
  return pulumi.get(self, "node_type")
760
843
 
761
- @property
844
+ @_builtins.property
762
845
  @pulumi.getter(name="privateEndpoint")
763
846
  def private_endpoint(self) -> pulumi.Output[Optional['outputs.DeploymentPrivateEndpoint']]:
764
847
  """
@@ -766,15 +849,23 @@ class Deployment(pulumi.CustomResource):
766
849
  """
767
850
  return pulumi.get(self, "private_endpoint")
768
851
 
769
- @property
852
+ @_builtins.property
853
+ @pulumi.getter(name="privateIps")
854
+ def private_ips(self) -> pulumi.Output[Sequence['outputs.DeploymentPrivateIp']]:
855
+ """
856
+ The private IPv4 address associated with the deployment.
857
+ """
858
+ return pulumi.get(self, "private_ips")
859
+
860
+ @_builtins.property
770
861
  @pulumi.getter(name="projectId")
771
- def project_id(self) -> pulumi.Output[str]:
862
+ def project_id(self) -> pulumi.Output[_builtins.str]:
772
863
  """
773
864
  `project_id`) The ID of the project the deployment is associated with.
774
865
  """
775
866
  return pulumi.get(self, "project_id")
776
867
 
777
- @property
868
+ @_builtins.property
778
869
  @pulumi.getter(name="publicEndpoint")
779
870
  def public_endpoint(self) -> pulumi.Output[Optional['outputs.DeploymentPublicEndpoint']]:
780
871
  """
@@ -782,41 +873,49 @@ class Deployment(pulumi.CustomResource):
782
873
  """
783
874
  return pulumi.get(self, "public_endpoint")
784
875
 
785
- @property
876
+ @_builtins.property
877
+ @pulumi.getter
878
+ def quantization(self) -> pulumi.Output[Optional[_builtins.int]]:
879
+ """
880
+ The number of bits each model parameter should be quantized to
881
+ """
882
+ return pulumi.get(self, "quantization")
883
+
884
+ @_builtins.property
786
885
  @pulumi.getter
787
- def region(self) -> pulumi.Output[str]:
886
+ def region(self) -> pulumi.Output[Optional[_builtins.str]]:
788
887
  """
789
888
  `region`) The region in which the deployment is created.
790
889
  """
791
890
  return pulumi.get(self, "region")
792
891
 
793
- @property
892
+ @_builtins.property
794
893
  @pulumi.getter
795
- def size(self) -> pulumi.Output[int]:
894
+ def size(self) -> pulumi.Output[_builtins.int]:
796
895
  """
797
896
  The size of the pool.
798
897
  """
799
898
  return pulumi.get(self, "size")
800
899
 
801
- @property
900
+ @_builtins.property
802
901
  @pulumi.getter
803
- def status(self) -> pulumi.Output[str]:
902
+ def status(self) -> pulumi.Output[_builtins.str]:
804
903
  """
805
904
  The status of the deployment.
806
905
  """
807
906
  return pulumi.get(self, "status")
808
907
 
809
- @property
908
+ @_builtins.property
810
909
  @pulumi.getter
811
- def tags(self) -> pulumi.Output[Optional[Sequence[str]]]:
910
+ def tags(self) -> pulumi.Output[Optional[Sequence[_builtins.str]]]:
812
911
  """
813
912
  The tags associated with the deployment.
814
913
  """
815
914
  return pulumi.get(self, "tags")
816
915
 
817
- @property
916
+ @_builtins.property
818
917
  @pulumi.getter(name="updatedAt")
819
- def updated_at(self) -> pulumi.Output[str]:
918
+ def updated_at(self) -> pulumi.Output[_builtins.str]:
820
919
  """
821
920
  The date and time of the last update of the deployment.
822
921
  """