pulumiverse-scaleway 1.24.0a1741679978__py3-none-any.whl → 1.25.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 (461) hide show
  1. pulumiverse_scaleway/__init__.py +929 -0
  2. pulumiverse_scaleway/account/__init__.py +12 -0
  3. pulumiverse_scaleway/account/get_availability_zones.py +139 -0
  4. pulumiverse_scaleway/account/get_project.py +170 -0
  5. pulumiverse_scaleway/account/get_ssh_key.py +205 -0
  6. pulumiverse_scaleway/account/project.py +318 -0
  7. pulumiverse_scaleway/account/ssh_key.py +456 -0
  8. pulumiverse_scaleway/account_project.py +6 -0
  9. pulumiverse_scaleway/account_ssh_key.py +12 -6
  10. pulumiverse_scaleway/apple_silicon_server.py +8 -2
  11. pulumiverse_scaleway/applesilicon/__init__.py +10 -0
  12. pulumiverse_scaleway/applesilicon/_inputs.py +154 -0
  13. pulumiverse_scaleway/applesilicon/outputs.py +119 -0
  14. pulumiverse_scaleway/applesilicon/server.py +690 -0
  15. pulumiverse_scaleway/baremetal_server.py +64 -58
  16. pulumiverse_scaleway/billing/__init__.py +10 -0
  17. pulumiverse_scaleway/billing/get_consumptions.py +134 -0
  18. pulumiverse_scaleway/billing/get_invoices.py +154 -0
  19. pulumiverse_scaleway/billing/outputs.py +288 -0
  20. pulumiverse_scaleway/block/__init__.py +11 -0
  21. pulumiverse_scaleway/block/get_snapshot.py +174 -0
  22. pulumiverse_scaleway/block/get_volume.py +199 -0
  23. pulumiverse_scaleway/block/snapshot.py +403 -0
  24. pulumiverse_scaleway/block/volume.py +576 -0
  25. pulumiverse_scaleway/block_snapshot.py +12 -6
  26. pulumiverse_scaleway/block_volume.py +16 -10
  27. pulumiverse_scaleway/cockpit.py +10 -4
  28. pulumiverse_scaleway/cockpit_alert_manager.py +12 -6
  29. pulumiverse_scaleway/cockpit_grafana_user.py +12 -6
  30. pulumiverse_scaleway/cockpit_source.py +12 -6
  31. pulumiverse_scaleway/cockpit_token.py +16 -10
  32. pulumiverse_scaleway/container.py +16 -10
  33. pulumiverse_scaleway/container_cron.py +14 -8
  34. pulumiverse_scaleway/container_domain.py +24 -18
  35. pulumiverse_scaleway/container_namespace.py +10 -4
  36. pulumiverse_scaleway/container_token.py +32 -26
  37. pulumiverse_scaleway/container_trigger.py +12 -6
  38. pulumiverse_scaleway/containers/__init__.py +17 -0
  39. pulumiverse_scaleway/containers/_inputs.py +389 -0
  40. pulumiverse_scaleway/containers/container.py +1635 -0
  41. pulumiverse_scaleway/containers/cron.py +460 -0
  42. pulumiverse_scaleway/containers/domain.py +408 -0
  43. pulumiverse_scaleway/containers/get_container.py +562 -0
  44. pulumiverse_scaleway/containers/get_namespace.py +283 -0
  45. pulumiverse_scaleway/containers/namespace.py +638 -0
  46. pulumiverse_scaleway/containers/outputs.py +412 -0
  47. pulumiverse_scaleway/containers/token.py +454 -0
  48. pulumiverse_scaleway/containers/trigger.py +482 -0
  49. pulumiverse_scaleway/database.py +10 -4
  50. pulumiverse_scaleway/database_acl.py +10 -4
  51. pulumiverse_scaleway/database_backup.py +14 -8
  52. pulumiverse_scaleway/database_instance.py +24 -18
  53. pulumiverse_scaleway/database_privilege.py +16 -10
  54. pulumiverse_scaleway/database_read_replica.py +22 -16
  55. pulumiverse_scaleway/database_user.py +10 -4
  56. pulumiverse_scaleway/databases/__init__.py +23 -0
  57. pulumiverse_scaleway/databases/_inputs.py +822 -0
  58. pulumiverse_scaleway/databases/acl.py +334 -0
  59. pulumiverse_scaleway/databases/database.py +409 -0
  60. pulumiverse_scaleway/databases/database_backup.py +576 -0
  61. pulumiverse_scaleway/databases/get_acl.py +143 -0
  62. pulumiverse_scaleway/databases/get_database.py +187 -0
  63. pulumiverse_scaleway/databases/get_database_backup.py +253 -0
  64. pulumiverse_scaleway/databases/get_instance.py +415 -0
  65. pulumiverse_scaleway/databases/get_privilege.py +181 -0
  66. pulumiverse_scaleway/databases/instance.py +1696 -0
  67. pulumiverse_scaleway/databases/outputs.py +866 -0
  68. pulumiverse_scaleway/databases/privilege.py +424 -0
  69. pulumiverse_scaleway/databases/read_replica.py +530 -0
  70. pulumiverse_scaleway/databases/serverless_database.py +434 -0
  71. pulumiverse_scaleway/databases/snapshot.py +610 -0
  72. pulumiverse_scaleway/databases/user.py +448 -0
  73. pulumiverse_scaleway/domain/__init__.py +13 -0
  74. pulumiverse_scaleway/domain/_inputs.py +341 -0
  75. pulumiverse_scaleway/domain/get_record.py +340 -0
  76. pulumiverse_scaleway/domain/get_zone.py +201 -0
  77. pulumiverse_scaleway/domain/outputs.py +408 -0
  78. pulumiverse_scaleway/domain/record.py +1118 -0
  79. pulumiverse_scaleway/domain/zone.py +432 -0
  80. pulumiverse_scaleway/domain_record.py +36 -30
  81. pulumiverse_scaleway/domain_zone.py +6 -0
  82. pulumiverse_scaleway/elasticmetal/__init__.py +18 -0
  83. pulumiverse_scaleway/elasticmetal/_inputs.py +509 -0
  84. pulumiverse_scaleway/elasticmetal/get_ip.py +247 -0
  85. pulumiverse_scaleway/elasticmetal/get_ips.py +240 -0
  86. pulumiverse_scaleway/elasticmetal/get_offer.py +245 -0
  87. pulumiverse_scaleway/elasticmetal/get_option.py +168 -0
  88. pulumiverse_scaleway/elasticmetal/get_os.py +174 -0
  89. pulumiverse_scaleway/elasticmetal/get_server.py +422 -0
  90. pulumiverse_scaleway/elasticmetal/ip.py +704 -0
  91. pulumiverse_scaleway/elasticmetal/ip_mac_address.py +512 -0
  92. pulumiverse_scaleway/elasticmetal/outputs.py +974 -0
  93. pulumiverse_scaleway/elasticmetal/server.py +1591 -0
  94. pulumiverse_scaleway/flexible_ip.py +22 -16
  95. pulumiverse_scaleway/flexible_ip_mac_address.py +22 -16
  96. pulumiverse_scaleway/function.py +6 -0
  97. pulumiverse_scaleway/function_cron.py +16 -10
  98. pulumiverse_scaleway/function_domain.py +16 -10
  99. pulumiverse_scaleway/function_namespace.py +10 -4
  100. pulumiverse_scaleway/function_token.py +32 -26
  101. pulumiverse_scaleway/function_trigger.py +12 -6
  102. pulumiverse_scaleway/functions/__init__.py +17 -0
  103. pulumiverse_scaleway/functions/_inputs.py +211 -0
  104. pulumiverse_scaleway/functions/cron.py +464 -0
  105. pulumiverse_scaleway/functions/domain.py +372 -0
  106. pulumiverse_scaleway/functions/function.py +1105 -0
  107. pulumiverse_scaleway/functions/get_function.py +365 -0
  108. pulumiverse_scaleway/functions/get_namespace.py +238 -0
  109. pulumiverse_scaleway/functions/namespace.py +582 -0
  110. pulumiverse_scaleway/functions/outputs.py +168 -0
  111. pulumiverse_scaleway/functions/token.py +462 -0
  112. pulumiverse_scaleway/functions/trigger.py +482 -0
  113. pulumiverse_scaleway/get_account_project.py +6 -2
  114. pulumiverse_scaleway/get_account_ssh_key.py +6 -2
  115. pulumiverse_scaleway/get_availability_zones.py +8 -4
  116. pulumiverse_scaleway/get_baremetal_offer.py +4 -0
  117. pulumiverse_scaleway/get_baremetal_option.py +8 -4
  118. pulumiverse_scaleway/get_baremetal_os.py +8 -4
  119. pulumiverse_scaleway/get_baremetal_server.py +8 -4
  120. pulumiverse_scaleway/get_billing_consumptions.py +4 -0
  121. pulumiverse_scaleway/get_billing_invoices.py +4 -0
  122. pulumiverse_scaleway/get_block_snapshot.py +6 -2
  123. pulumiverse_scaleway/get_block_volume.py +6 -2
  124. pulumiverse_scaleway/get_cockpit.py +12 -8
  125. pulumiverse_scaleway/get_cockpit_plan.py +10 -6
  126. pulumiverse_scaleway/get_cockpit_source.py +8 -4
  127. pulumiverse_scaleway/get_container.py +16 -12
  128. pulumiverse_scaleway/get_container_namespace.py +10 -6
  129. pulumiverse_scaleway/get_database.py +6 -2
  130. pulumiverse_scaleway/get_database_acl.py +6 -2
  131. pulumiverse_scaleway/get_database_backup.py +10 -6
  132. pulumiverse_scaleway/get_database_instance.py +4 -0
  133. pulumiverse_scaleway/get_database_privilege.py +6 -2
  134. pulumiverse_scaleway/get_domain_record.py +10 -6
  135. pulumiverse_scaleway/get_domain_zone.py +4 -0
  136. pulumiverse_scaleway/get_flexible_ip.py +4 -0
  137. pulumiverse_scaleway/get_flexible_ips.py +16 -12
  138. pulumiverse_scaleway/get_function.py +6 -2
  139. pulumiverse_scaleway/get_function_namespace.py +6 -2
  140. pulumiverse_scaleway/get_iam_api_key.py +6 -2
  141. pulumiverse_scaleway/get_iam_application.py +8 -4
  142. pulumiverse_scaleway/get_iam_group.py +8 -4
  143. pulumiverse_scaleway/get_iam_ssh_key.py +4 -0
  144. pulumiverse_scaleway/get_iam_user.py +8 -4
  145. pulumiverse_scaleway/get_instance_image.py +4 -0
  146. pulumiverse_scaleway/get_instance_ip.py +4 -0
  147. pulumiverse_scaleway/get_instance_placement_group.py +4 -0
  148. pulumiverse_scaleway/get_instance_private_nic.py +10 -6
  149. pulumiverse_scaleway/get_instance_security_group.py +4 -0
  150. pulumiverse_scaleway/get_instance_server.py +4 -0
  151. pulumiverse_scaleway/get_instance_servers.py +4 -0
  152. pulumiverse_scaleway/get_instance_snapshot.py +8 -4
  153. pulumiverse_scaleway/get_instance_volume.py +4 -0
  154. pulumiverse_scaleway/get_iot_device.py +4 -0
  155. pulumiverse_scaleway/get_iot_hub.py +4 -0
  156. pulumiverse_scaleway/get_ipam_ip.py +18 -14
  157. pulumiverse_scaleway/get_ipam_ips.py +14 -10
  158. pulumiverse_scaleway/get_k8s_version.py +8 -4
  159. pulumiverse_scaleway/get_kubernetes_cluster.py +4 -0
  160. pulumiverse_scaleway/get_kubernetes_node_pool.py +4 -0
  161. pulumiverse_scaleway/get_lb_acls.py +8 -4
  162. pulumiverse_scaleway/get_lb_backend.py +18 -14
  163. pulumiverse_scaleway/get_lb_backends.py +8 -4
  164. pulumiverse_scaleway/get_lb_frontend.py +16 -12
  165. pulumiverse_scaleway/get_lb_frontends.py +8 -4
  166. pulumiverse_scaleway/get_lb_ips.py +4 -0
  167. pulumiverse_scaleway/get_lb_route.py +16 -12
  168. pulumiverse_scaleway/get_lb_routes.py +8 -4
  169. pulumiverse_scaleway/get_lbs.py +4 -0
  170. pulumiverse_scaleway/get_loadbalancer.py +8 -4
  171. pulumiverse_scaleway/get_loadbalancer_certificate.py +4 -0
  172. pulumiverse_scaleway/get_loadbalancer_ip.py +4 -0
  173. pulumiverse_scaleway/get_mnq_sns.py +8 -4
  174. pulumiverse_scaleway/get_mnq_sqs.py +8 -4
  175. pulumiverse_scaleway/get_mongo_db_instance.py +4 -0
  176. pulumiverse_scaleway/get_object_bucket.py +12 -8
  177. pulumiverse_scaleway/get_object_bucket_policy.py +8 -4
  178. pulumiverse_scaleway/get_redis_cluster.py +4 -0
  179. pulumiverse_scaleway/get_registry_image.py +4 -0
  180. pulumiverse_scaleway/get_registry_image_tag.py +4 -0
  181. pulumiverse_scaleway/get_registry_namespace.py +4 -0
  182. pulumiverse_scaleway/get_secret.py +12 -8
  183. pulumiverse_scaleway/get_secret_version.py +14 -10
  184. pulumiverse_scaleway/get_tem_domain.py +4 -0
  185. pulumiverse_scaleway/get_vpc.py +10 -6
  186. pulumiverse_scaleway/get_vpc_gateway_network.py +10 -6
  187. pulumiverse_scaleway/get_vpc_private_network.py +10 -6
  188. pulumiverse_scaleway/get_vpc_public_gateway.py +10 -6
  189. pulumiverse_scaleway/get_vpc_public_gateway_dhcp.py +8 -4
  190. pulumiverse_scaleway/get_vpc_public_gateway_dhcp_reservation.py +70 -66
  191. pulumiverse_scaleway/get_vpc_public_gateway_ip.py +8 -4
  192. pulumiverse_scaleway/get_vpc_public_pat_rule.py +26 -22
  193. pulumiverse_scaleway/get_vpc_routes.py +4 -0
  194. pulumiverse_scaleway/get_vpcs.py +4 -0
  195. pulumiverse_scaleway/get_web_host_offer.py +8 -4
  196. pulumiverse_scaleway/get_webhosting.py +8 -4
  197. pulumiverse_scaleway/hosting/__init__.py +12 -0
  198. pulumiverse_scaleway/hosting/_inputs.py +295 -0
  199. pulumiverse_scaleway/hosting/get_hosting.py +354 -0
  200. pulumiverse_scaleway/hosting/get_offer.py +229 -0
  201. pulumiverse_scaleway/hosting/hosting.py +870 -0
  202. pulumiverse_scaleway/hosting/outputs.py +626 -0
  203. pulumiverse_scaleway/iam/__init__.py +21 -0
  204. pulumiverse_scaleway/iam/_inputs.py +138 -0
  205. pulumiverse_scaleway/iam/api_key.py +622 -0
  206. pulumiverse_scaleway/iam/application.py +419 -0
  207. pulumiverse_scaleway/iam/get_api_key.py +210 -0
  208. pulumiverse_scaleway/iam/get_application.py +210 -0
  209. pulumiverse_scaleway/iam/get_group.py +236 -0
  210. pulumiverse_scaleway/iam/get_ssh_key.py +212 -0
  211. pulumiverse_scaleway/iam/get_user.py +177 -0
  212. pulumiverse_scaleway/iam/group.py +568 -0
  213. pulumiverse_scaleway/iam/group_membership.py +325 -0
  214. pulumiverse_scaleway/iam/outputs.py +111 -0
  215. pulumiverse_scaleway/iam/policy.py +775 -0
  216. pulumiverse_scaleway/iam/ssh_key.py +457 -0
  217. pulumiverse_scaleway/iam/user.py +515 -0
  218. pulumiverse_scaleway/iam_api_key.py +16 -10
  219. pulumiverse_scaleway/iam_application.py +8 -2
  220. pulumiverse_scaleway/iam_group.py +12 -6
  221. pulumiverse_scaleway/iam_group_membership.py +12 -6
  222. pulumiverse_scaleway/iam_policy.py +18 -12
  223. pulumiverse_scaleway/iam_ssh_key.py +8 -2
  224. pulumiverse_scaleway/iam_user.py +8 -2
  225. pulumiverse_scaleway/inference/__init__.py +10 -0
  226. pulumiverse_scaleway/inference/_inputs.py +209 -0
  227. pulumiverse_scaleway/inference/deployment.py +824 -0
  228. pulumiverse_scaleway/inference/outputs.py +169 -0
  229. pulumiverse_scaleway/inference_deployment.py +8 -2
  230. pulumiverse_scaleway/instance/__init__.py +29 -0
  231. pulumiverse_scaleway/instance/_inputs.py +1237 -0
  232. pulumiverse_scaleway/instance/get_image.py +305 -0
  233. pulumiverse_scaleway/instance/get_ip.py +204 -0
  234. pulumiverse_scaleway/instance/get_placement_group.py +212 -0
  235. pulumiverse_scaleway/instance/get_private_nic.py +226 -0
  236. pulumiverse_scaleway/instance/get_security_group.py +268 -0
  237. pulumiverse_scaleway/instance/get_server.py +488 -0
  238. pulumiverse_scaleway/instance/get_servers.py +187 -0
  239. pulumiverse_scaleway/instance/get_snapshot.py +248 -0
  240. pulumiverse_scaleway/instance/get_volume.py +226 -0
  241. pulumiverse_scaleway/instance/image.py +752 -0
  242. pulumiverse_scaleway/instance/ip.py +471 -0
  243. pulumiverse_scaleway/instance/ip_reverse_dns.py +310 -0
  244. pulumiverse_scaleway/instance/outputs.py +1533 -0
  245. pulumiverse_scaleway/instance/placement_group.py +481 -0
  246. pulumiverse_scaleway/instance/private_nic.py +557 -0
  247. pulumiverse_scaleway/instance/security_group.py +722 -0
  248. pulumiverse_scaleway/instance/security_group_rules.py +441 -0
  249. pulumiverse_scaleway/instance/server.py +1938 -0
  250. pulumiverse_scaleway/instance/snapshot.py +671 -0
  251. pulumiverse_scaleway/instance/user_data.py +437 -0
  252. pulumiverse_scaleway/instance/volume.py +584 -0
  253. pulumiverse_scaleway/instance_image.py +18 -12
  254. pulumiverse_scaleway/instance_ip.py +8 -2
  255. pulumiverse_scaleway/instance_ip_reverse_dns.py +12 -6
  256. pulumiverse_scaleway/instance_placement_group.py +8 -2
  257. pulumiverse_scaleway/instance_private_nic.py +24 -18
  258. pulumiverse_scaleway/instance_security_group.py +6 -0
  259. pulumiverse_scaleway/instance_security_group_rules.py +22 -16
  260. pulumiverse_scaleway/instance_server.py +74 -68
  261. pulumiverse_scaleway/instance_snapshot.py +22 -16
  262. pulumiverse_scaleway/instance_user_data.py +16 -10
  263. pulumiverse_scaleway/instance_volume.py +8 -2
  264. pulumiverse_scaleway/iot/__init__.py +15 -0
  265. pulumiverse_scaleway/iot/_inputs.py +539 -0
  266. pulumiverse_scaleway/iot/device.py +752 -0
  267. pulumiverse_scaleway/iot/get_device.py +257 -0
  268. pulumiverse_scaleway/iot/get_hub.py +322 -0
  269. pulumiverse_scaleway/iot/hub.py +898 -0
  270. pulumiverse_scaleway/iot/network.py +474 -0
  271. pulumiverse_scaleway/iot/outputs.py +465 -0
  272. pulumiverse_scaleway/iot/route.py +662 -0
  273. pulumiverse_scaleway/iot_device.py +14 -8
  274. pulumiverse_scaleway/iot_hub.py +8 -2
  275. pulumiverse_scaleway/iot_network.py +12 -6
  276. pulumiverse_scaleway/iot_route.py +32 -26
  277. pulumiverse_scaleway/ipam/__init__.py +13 -0
  278. pulumiverse_scaleway/ipam/_inputs.py +442 -0
  279. pulumiverse_scaleway/ipam/get_ip.py +419 -0
  280. pulumiverse_scaleway/ipam/get_ips.py +358 -0
  281. pulumiverse_scaleway/ipam/ip.py +759 -0
  282. pulumiverse_scaleway/ipam/ip_reverse_dns.py +320 -0
  283. pulumiverse_scaleway/ipam/outputs.py +481 -0
  284. pulumiverse_scaleway/ipam_ip.py +30 -24
  285. pulumiverse_scaleway/ipam_ip_reverse_dns.py +6 -0
  286. pulumiverse_scaleway/job/__init__.py +10 -0
  287. pulumiverse_scaleway/job/_inputs.py +73 -0
  288. pulumiverse_scaleway/job/definition.py +694 -0
  289. pulumiverse_scaleway/job/outputs.py +49 -0
  290. pulumiverse_scaleway/job_definition.py +8 -2
  291. pulumiverse_scaleway/kubernetes/__init__.py +14 -0
  292. pulumiverse_scaleway/kubernetes/_inputs.py +717 -0
  293. pulumiverse_scaleway/kubernetes/cluster.py +1540 -0
  294. pulumiverse_scaleway/kubernetes/get_cluster.py +417 -0
  295. pulumiverse_scaleway/kubernetes/get_pool.py +436 -0
  296. pulumiverse_scaleway/kubernetes/get_version.py +196 -0
  297. pulumiverse_scaleway/kubernetes/outputs.py +944 -0
  298. pulumiverse_scaleway/kubernetes/pool.py +1313 -0
  299. pulumiverse_scaleway/kubernetes_cluster.py +36 -30
  300. pulumiverse_scaleway/kubernetes_node_pool.py +6 -0
  301. pulumiverse_scaleway/loadbalancer.py +35 -29
  302. pulumiverse_scaleway/loadbalancer_acl.py +8 -2
  303. pulumiverse_scaleway/loadbalancer_backend.py +10 -4
  304. pulumiverse_scaleway/loadbalancer_certificate.py +6 -0
  305. pulumiverse_scaleway/loadbalancer_frontend.py +10 -4
  306. pulumiverse_scaleway/loadbalancer_ip.py +10 -4
  307. pulumiverse_scaleway/loadbalancer_route.py +26 -20
  308. pulumiverse_scaleway/loadbalancers/__init__.py +28 -0
  309. pulumiverse_scaleway/loadbalancers/_inputs.py +1103 -0
  310. pulumiverse_scaleway/loadbalancers/acl.py +522 -0
  311. pulumiverse_scaleway/loadbalancers/backend.py +1590 -0
  312. pulumiverse_scaleway/loadbalancers/certificate.py +462 -0
  313. pulumiverse_scaleway/loadbalancers/frontend.py +831 -0
  314. pulumiverse_scaleway/loadbalancers/get_acls.py +198 -0
  315. pulumiverse_scaleway/loadbalancers/get_backend.py +486 -0
  316. pulumiverse_scaleway/loadbalancers/get_backends.py +196 -0
  317. pulumiverse_scaleway/loadbalancers/get_certificate.py +230 -0
  318. pulumiverse_scaleway/loadbalancers/get_frontend.py +274 -0
  319. pulumiverse_scaleway/loadbalancers/get_frontends.py +196 -0
  320. pulumiverse_scaleway/loadbalancers/get_ip.py +228 -0
  321. pulumiverse_scaleway/loadbalancers/get_ips.py +198 -0
  322. pulumiverse_scaleway/loadbalancers/get_load_balancer.py +339 -0
  323. pulumiverse_scaleway/loadbalancers/get_load_balancers.py +187 -0
  324. pulumiverse_scaleway/loadbalancers/get_route.py +217 -0
  325. pulumiverse_scaleway/loadbalancers/get_routes.py +179 -0
  326. pulumiverse_scaleway/loadbalancers/ip.py +516 -0
  327. pulumiverse_scaleway/loadbalancers/load_balancer.py +1063 -0
  328. pulumiverse_scaleway/loadbalancers/outputs.py +2491 -0
  329. pulumiverse_scaleway/loadbalancers/route.py +525 -0
  330. pulumiverse_scaleway/mnq/__init__.py +20 -0
  331. pulumiverse_scaleway/mnq/_inputs.py +169 -0
  332. pulumiverse_scaleway/mnq/get_sns.py +150 -0
  333. pulumiverse_scaleway/mnq/get_sqs.py +150 -0
  334. pulumiverse_scaleway/mnq/nats_account.py +336 -0
  335. pulumiverse_scaleway/mnq/nats_credentials.py +332 -0
  336. pulumiverse_scaleway/mnq/outputs.py +149 -0
  337. pulumiverse_scaleway/mnq/sns.py +308 -0
  338. pulumiverse_scaleway/mnq/sns_credentials.py +415 -0
  339. pulumiverse_scaleway/mnq/sns_topic.py +661 -0
  340. pulumiverse_scaleway/mnq/sns_topic_subscription.py +701 -0
  341. pulumiverse_scaleway/mnq/sqs.py +306 -0
  342. pulumiverse_scaleway/mnq/sqs_credentials.py +415 -0
  343. pulumiverse_scaleway/mnq/sqs_queue.py +802 -0
  344. pulumiverse_scaleway/mnq_nats_account.py +8 -2
  345. pulumiverse_scaleway/mnq_nats_credentials.py +10 -4
  346. pulumiverse_scaleway/mnq_sns.py +12 -6
  347. pulumiverse_scaleway/mnq_sns_credentials.py +10 -4
  348. pulumiverse_scaleway/mnq_sns_topic.py +16 -10
  349. pulumiverse_scaleway/mnq_sns_topic_subscription.py +22 -16
  350. pulumiverse_scaleway/mnq_sqs.py +12 -6
  351. pulumiverse_scaleway/mnq_sqs_credentials.py +10 -4
  352. pulumiverse_scaleway/mnq_sqs_queue.py +16 -10
  353. pulumiverse_scaleway/mongo_db_instance.py +14 -8
  354. pulumiverse_scaleway/mongo_db_snapshot.py +8 -2
  355. pulumiverse_scaleway/mongodb/__init__.py +12 -0
  356. pulumiverse_scaleway/mongodb/_inputs.py +208 -0
  357. pulumiverse_scaleway/mongodb/get_instance.py +335 -0
  358. pulumiverse_scaleway/mongodb/instance.py +1000 -0
  359. pulumiverse_scaleway/mongodb/outputs.py +270 -0
  360. pulumiverse_scaleway/mongodb/snapshot.py +523 -0
  361. pulumiverse_scaleway/network/__init__.py +29 -0
  362. pulumiverse_scaleway/network/_inputs.py +383 -0
  363. pulumiverse_scaleway/network/gateway_network.py +868 -0
  364. pulumiverse_scaleway/network/get_gateway_network.py +287 -0
  365. pulumiverse_scaleway/network/get_private_network.py +282 -0
  366. pulumiverse_scaleway/network/get_public_gateway.py +304 -0
  367. pulumiverse_scaleway/network/get_public_gateway_dhcp.py +305 -0
  368. pulumiverse_scaleway/network/get_public_gateway_dhcp_reservation.py +382 -0
  369. pulumiverse_scaleway/network/get_public_gateway_ip.py +199 -0
  370. pulumiverse_scaleway/network/get_public_gateway_pat_rule.py +313 -0
  371. pulumiverse_scaleway/network/get_routes.py +208 -0
  372. pulumiverse_scaleway/network/get_vpc.py +246 -0
  373. pulumiverse_scaleway/network/get_vpcs.py +174 -0
  374. pulumiverse_scaleway/network/outputs.py +747 -0
  375. pulumiverse_scaleway/network/private_network.py +736 -0
  376. pulumiverse_scaleway/network/public_gateway.py +791 -0
  377. pulumiverse_scaleway/network/public_gateway_dhcp.py +949 -0
  378. pulumiverse_scaleway/network/public_gateway_dhcp_reservation.py +516 -0
  379. pulumiverse_scaleway/network/public_gateway_ip.py +459 -0
  380. pulumiverse_scaleway/network/public_gateway_ip_reverse_dns.py +308 -0
  381. pulumiverse_scaleway/network/public_gateway_pat_rule.py +593 -0
  382. pulumiverse_scaleway/network/route.py +579 -0
  383. pulumiverse_scaleway/network/vpc.py +538 -0
  384. pulumiverse_scaleway/object/__init__.py +17 -0
  385. pulumiverse_scaleway/object/_inputs.py +831 -0
  386. pulumiverse_scaleway/object/bucket.py +876 -0
  387. pulumiverse_scaleway/object/bucket_acl.py +598 -0
  388. pulumiverse_scaleway/object/bucket_lock_configuration.py +397 -0
  389. pulumiverse_scaleway/object/bucket_policy.py +675 -0
  390. pulumiverse_scaleway/object/bucket_website_configuration.py +536 -0
  391. pulumiverse_scaleway/object/get_bucket.py +290 -0
  392. pulumiverse_scaleway/object/get_bucket_policy.py +163 -0
  393. pulumiverse_scaleway/object/item.py +778 -0
  394. pulumiverse_scaleway/object/outputs.py +802 -0
  395. pulumiverse_scaleway/object_bucket.py +28 -22
  396. pulumiverse_scaleway/object_bucket_acl.py +14 -8
  397. pulumiverse_scaleway/object_bucket_lock_configuration.py +12 -6
  398. pulumiverse_scaleway/object_bucket_policy.py +46 -40
  399. pulumiverse_scaleway/object_bucket_website_configuration.py +18 -12
  400. pulumiverse_scaleway/object_item.py +8 -2
  401. pulumiverse_scaleway/observability/__init__.py +17 -0
  402. pulumiverse_scaleway/observability/_inputs.py +417 -0
  403. pulumiverse_scaleway/observability/alert_manager.py +403 -0
  404. pulumiverse_scaleway/observability/cockpit.py +325 -0
  405. pulumiverse_scaleway/observability/get_instance.py +205 -0
  406. pulumiverse_scaleway/observability/get_plan.py +125 -0
  407. pulumiverse_scaleway/observability/get_source.py +262 -0
  408. pulumiverse_scaleway/observability/grafana_user.py +364 -0
  409. pulumiverse_scaleway/observability/outputs.py +425 -0
  410. pulumiverse_scaleway/observability/source.py +569 -0
  411. pulumiverse_scaleway/observability/token.py +481 -0
  412. pulumiverse_scaleway/pulumi-plugin.json +1 -1
  413. pulumiverse_scaleway/rdb_snapshot.py +16 -10
  414. pulumiverse_scaleway/redis/__init__.py +11 -0
  415. pulumiverse_scaleway/redis/_inputs.py +330 -0
  416. pulumiverse_scaleway/redis/cluster.py +1203 -0
  417. pulumiverse_scaleway/redis/get_cluster.py +347 -0
  418. pulumiverse_scaleway/redis/outputs.py +356 -0
  419. pulumiverse_scaleway/redis_cluster.py +14 -8
  420. pulumiverse_scaleway/registry/__init__.py +11 -0
  421. pulumiverse_scaleway/registry/get_image.py +239 -0
  422. pulumiverse_scaleway/registry/get_image_tag.py +229 -0
  423. pulumiverse_scaleway/registry/get_namespace.py +199 -0
  424. pulumiverse_scaleway/registry/namespace.py +460 -0
  425. pulumiverse_scaleway/registry_namespace.py +8 -2
  426. pulumiverse_scaleway/sdb_database.py +10 -4
  427. pulumiverse_scaleway/secret.py +6 -0
  428. pulumiverse_scaleway/secret_version.py +12 -6
  429. pulumiverse_scaleway/secrets/__init__.py +13 -0
  430. pulumiverse_scaleway/secrets/_inputs.py +94 -0
  431. pulumiverse_scaleway/secrets/get_secret.py +338 -0
  432. pulumiverse_scaleway/secrets/get_version.py +340 -0
  433. pulumiverse_scaleway/secrets/outputs.py +120 -0
  434. pulumiverse_scaleway/secrets/secret.py +665 -0
  435. pulumiverse_scaleway/secrets/version.py +489 -0
  436. pulumiverse_scaleway/tem/__init__.py +13 -0
  437. pulumiverse_scaleway/tem/_inputs.py +135 -0
  438. pulumiverse_scaleway/tem/domain.py +1032 -0
  439. pulumiverse_scaleway/tem/domain_validation.py +305 -0
  440. pulumiverse_scaleway/tem/get_domain.py +378 -0
  441. pulumiverse_scaleway/tem/outputs.py +171 -0
  442. pulumiverse_scaleway/tem/webhook.py +642 -0
  443. pulumiverse_scaleway/tem_domain.py +20 -14
  444. pulumiverse_scaleway/tem_domain_validation.py +10 -4
  445. pulumiverse_scaleway/tem_webhook.py +28 -22
  446. pulumiverse_scaleway/vpc.py +10 -4
  447. pulumiverse_scaleway/vpc_gateway_network.py +40 -34
  448. pulumiverse_scaleway/vpc_private_network.py +10 -4
  449. pulumiverse_scaleway/vpc_public_gateway.py +8 -2
  450. pulumiverse_scaleway/vpc_public_gateway_dhcp.py +15 -9
  451. pulumiverse_scaleway/vpc_public_gateway_dhcp_reservation.py +32 -26
  452. pulumiverse_scaleway/vpc_public_gateway_ip.py +10 -4
  453. pulumiverse_scaleway/vpc_public_gateway_ip_reverse_dns.py +12 -6
  454. pulumiverse_scaleway/vpc_public_gateway_pat_rule.py +26 -20
  455. pulumiverse_scaleway/vpc_route.py +16 -10
  456. pulumiverse_scaleway/webhosting.py +10 -4
  457. {pulumiverse_scaleway-1.24.0a1741679978.dist-info → pulumiverse_scaleway-1.25.0.dist-info}/METADATA +2 -2
  458. pulumiverse_scaleway-1.25.0.dist-info/RECORD +470 -0
  459. {pulumiverse_scaleway-1.24.0a1741679978.dist-info → pulumiverse_scaleway-1.25.0.dist-info}/WHEEL +1 -1
  460. pulumiverse_scaleway-1.24.0a1741679978.dist-info/RECORD +0 -206
  461. {pulumiverse_scaleway-1.24.0a1741679978.dist-info → pulumiverse_scaleway-1.25.0.dist-info}/top_level.txt +0 -0
@@ -0,0 +1,1635 @@
1
+ # coding=utf-8
2
+ # *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. ***
3
+ # *** Do not edit by hand unless you're certain you know what you are doing! ***
4
+
5
+ import copy
6
+ import warnings
7
+ import sys
8
+ import pulumi
9
+ import pulumi.runtime
10
+ from typing import Any, Mapping, Optional, Sequence, Union, overload
11
+ if sys.version_info >= (3, 11):
12
+ from typing import NotRequired, TypedDict, TypeAlias
13
+ else:
14
+ from typing_extensions import NotRequired, TypedDict, TypeAlias
15
+ from .. import _utilities
16
+ from . import outputs
17
+ from ._inputs import *
18
+
19
+ __all__ = ['ContainerArgs', 'Container']
20
+
21
+ @pulumi.input_type
22
+ class ContainerArgs:
23
+ def __init__(__self__, *,
24
+ namespace_id: pulumi.Input[str],
25
+ cpu_limit: Optional[pulumi.Input[int]] = None,
26
+ deploy: Optional[pulumi.Input[bool]] = None,
27
+ description: Optional[pulumi.Input[str]] = None,
28
+ environment_variables: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
29
+ health_checks: Optional[pulumi.Input[Sequence[pulumi.Input['ContainerHealthCheckArgs']]]] = None,
30
+ http_option: Optional[pulumi.Input[str]] = None,
31
+ local_storage_limit: Optional[pulumi.Input[int]] = None,
32
+ max_concurrency: Optional[pulumi.Input[int]] = None,
33
+ max_scale: Optional[pulumi.Input[int]] = None,
34
+ memory_limit: Optional[pulumi.Input[int]] = None,
35
+ min_scale: Optional[pulumi.Input[int]] = None,
36
+ name: Optional[pulumi.Input[str]] = None,
37
+ port: Optional[pulumi.Input[int]] = None,
38
+ privacy: Optional[pulumi.Input[str]] = None,
39
+ protocol: Optional[pulumi.Input[str]] = None,
40
+ region: Optional[pulumi.Input[str]] = None,
41
+ registry_image: Optional[pulumi.Input[str]] = None,
42
+ registry_sha256: Optional[pulumi.Input[str]] = None,
43
+ sandbox: Optional[pulumi.Input[str]] = None,
44
+ scaling_options: Optional[pulumi.Input[Sequence[pulumi.Input['ContainerScalingOptionArgs']]]] = None,
45
+ secret_environment_variables: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
46
+ status: Optional[pulumi.Input[str]] = None,
47
+ timeout: Optional[pulumi.Input[int]] = None):
48
+ """
49
+ The set of arguments for constructing a Container resource.
50
+ :param pulumi.Input[str] namespace_id: The Containers namespace ID of the container.
51
+
52
+ > **Important** Updating the `name` argument will recreate the container.
53
+ :param pulumi.Input[int] cpu_limit: The amount of vCPU computing resources to allocate to each container.
54
+ :param pulumi.Input[bool] deploy: Boolean indicating whether the container is in a production environment.
55
+ :param pulumi.Input[str] description: The description of the container.
56
+ :param pulumi.Input[Mapping[str, pulumi.Input[str]]] environment_variables: The [environment variables](https://www.scaleway.com/en/docs/serverless-containers/concepts/#environment-variables) of the container.
57
+ :param pulumi.Input[Sequence[pulumi.Input['ContainerHealthCheckArgs']]] health_checks: Health check configuration block of the container.
58
+ :param pulumi.Input[str] http_option: Allows both HTTP and HTTPS (`enabled`) or redirect HTTP to HTTPS (`redirected`). Defaults to `enabled`.
59
+ :param pulumi.Input[int] local_storage_limit: Local storage limit of the container (in MB)
60
+
61
+ Note that if you want to use your own configuration, you must consult our configuration [restrictions](https://www.scaleway.com/en/docs/serverless-containers/reference-content/containers-limitations/#configuration-restrictions) section.
62
+ :param pulumi.Input[int] max_concurrency: The maximum number of simultaneous requests your container can handle at the same time. Use `scaling_option.concurrent_requests_threshold` instead.
63
+ :param pulumi.Input[int] max_scale: The maximum number of instances this container can scale to.
64
+ :param pulumi.Input[int] memory_limit: The memory resources in MB to allocate to each container.
65
+ :param pulumi.Input[int] min_scale: The minimum number of container instances running continuously.
66
+ :param pulumi.Input[str] name: The unique name of the container name.
67
+ :param pulumi.Input[int] port: The port to expose the container.
68
+ :param pulumi.Input[str] privacy: The privacy type defines the way to authenticate to your container. Please check our dedicated [section](https://www.scaleway.com/en/developers/api/serverless-containers/#protocol-9dd4c8).
69
+ :param pulumi.Input[str] protocol: The communication [protocol](https://www.scaleway.com/en/developers/api/serverless-containers/#path-containers-update-an-existing-container) `http1` or `h2c`. Defaults to `http1`.
70
+ :param pulumi.Input[str] region: (Defaults to provider `region`) The region in which the container was created.
71
+ :param pulumi.Input[str] registry_image: The registry image address (e.g., `rg.fr-par.scw.cloud/$NAMESPACE/$IMAGE`)
72
+ :param pulumi.Input[str] registry_sha256: The sha256 of your source registry image, changing it will re-apply the deployment. Can be any string.
73
+ :param pulumi.Input[str] sandbox: Execution environment of the container.
74
+ :param pulumi.Input[Sequence[pulumi.Input['ContainerScalingOptionArgs']]] scaling_options: Configuration block used to decide when to scale up or down. Possible values:
75
+ :param pulumi.Input[Mapping[str, pulumi.Input[str]]] secret_environment_variables: The [secret environment variables](https://www.scaleway.com/en/docs/serverless-containers/concepts/#secrets) of the container.
76
+ :param pulumi.Input[str] status: The container status.
77
+ :param pulumi.Input[int] timeout: The maximum amount of time in seconds your container can spend processing a request before being stopped. Default to `300` seconds.
78
+ """
79
+ pulumi.set(__self__, "namespace_id", namespace_id)
80
+ if cpu_limit is not None:
81
+ pulumi.set(__self__, "cpu_limit", cpu_limit)
82
+ if deploy is not None:
83
+ pulumi.set(__self__, "deploy", deploy)
84
+ if description is not None:
85
+ pulumi.set(__self__, "description", description)
86
+ if environment_variables is not None:
87
+ pulumi.set(__self__, "environment_variables", environment_variables)
88
+ if health_checks is not None:
89
+ pulumi.set(__self__, "health_checks", health_checks)
90
+ if http_option is not None:
91
+ pulumi.set(__self__, "http_option", http_option)
92
+ if local_storage_limit is not None:
93
+ pulumi.set(__self__, "local_storage_limit", local_storage_limit)
94
+ if max_concurrency is not None:
95
+ warnings.warn("""Use scaling_option.concurrent_requests_threshold instead. This attribute will be removed.""", DeprecationWarning)
96
+ pulumi.log.warn("""max_concurrency is deprecated: Use scaling_option.concurrent_requests_threshold instead. This attribute will be removed.""")
97
+ if max_concurrency is not None:
98
+ pulumi.set(__self__, "max_concurrency", max_concurrency)
99
+ if max_scale is not None:
100
+ pulumi.set(__self__, "max_scale", max_scale)
101
+ if memory_limit is not None:
102
+ pulumi.set(__self__, "memory_limit", memory_limit)
103
+ if min_scale is not None:
104
+ pulumi.set(__self__, "min_scale", min_scale)
105
+ if name is not None:
106
+ pulumi.set(__self__, "name", name)
107
+ if port is not None:
108
+ pulumi.set(__self__, "port", port)
109
+ if privacy is not None:
110
+ pulumi.set(__self__, "privacy", privacy)
111
+ if protocol is not None:
112
+ pulumi.set(__self__, "protocol", protocol)
113
+ if region is not None:
114
+ pulumi.set(__self__, "region", region)
115
+ if registry_image is not None:
116
+ pulumi.set(__self__, "registry_image", registry_image)
117
+ if registry_sha256 is not None:
118
+ pulumi.set(__self__, "registry_sha256", registry_sha256)
119
+ if sandbox is not None:
120
+ pulumi.set(__self__, "sandbox", sandbox)
121
+ if scaling_options is not None:
122
+ pulumi.set(__self__, "scaling_options", scaling_options)
123
+ if secret_environment_variables is not None:
124
+ pulumi.set(__self__, "secret_environment_variables", secret_environment_variables)
125
+ if status is not None:
126
+ pulumi.set(__self__, "status", status)
127
+ if timeout is not None:
128
+ pulumi.set(__self__, "timeout", timeout)
129
+
130
+ @property
131
+ @pulumi.getter(name="namespaceId")
132
+ def namespace_id(self) -> pulumi.Input[str]:
133
+ """
134
+ The Containers namespace ID of the container.
135
+
136
+ > **Important** Updating the `name` argument will recreate the container.
137
+ """
138
+ return pulumi.get(self, "namespace_id")
139
+
140
+ @namespace_id.setter
141
+ def namespace_id(self, value: pulumi.Input[str]):
142
+ pulumi.set(self, "namespace_id", value)
143
+
144
+ @property
145
+ @pulumi.getter(name="cpuLimit")
146
+ def cpu_limit(self) -> Optional[pulumi.Input[int]]:
147
+ """
148
+ The amount of vCPU computing resources to allocate to each container.
149
+ """
150
+ return pulumi.get(self, "cpu_limit")
151
+
152
+ @cpu_limit.setter
153
+ def cpu_limit(self, value: Optional[pulumi.Input[int]]):
154
+ pulumi.set(self, "cpu_limit", value)
155
+
156
+ @property
157
+ @pulumi.getter
158
+ def deploy(self) -> Optional[pulumi.Input[bool]]:
159
+ """
160
+ Boolean indicating whether the container is in a production environment.
161
+ """
162
+ return pulumi.get(self, "deploy")
163
+
164
+ @deploy.setter
165
+ def deploy(self, value: Optional[pulumi.Input[bool]]):
166
+ pulumi.set(self, "deploy", value)
167
+
168
+ @property
169
+ @pulumi.getter
170
+ def description(self) -> Optional[pulumi.Input[str]]:
171
+ """
172
+ The description of the container.
173
+ """
174
+ return pulumi.get(self, "description")
175
+
176
+ @description.setter
177
+ def description(self, value: Optional[pulumi.Input[str]]):
178
+ pulumi.set(self, "description", value)
179
+
180
+ @property
181
+ @pulumi.getter(name="environmentVariables")
182
+ def environment_variables(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]:
183
+ """
184
+ The [environment variables](https://www.scaleway.com/en/docs/serverless-containers/concepts/#environment-variables) of the container.
185
+ """
186
+ return pulumi.get(self, "environment_variables")
187
+
188
+ @environment_variables.setter
189
+ def environment_variables(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]):
190
+ pulumi.set(self, "environment_variables", value)
191
+
192
+ @property
193
+ @pulumi.getter(name="healthChecks")
194
+ def health_checks(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['ContainerHealthCheckArgs']]]]:
195
+ """
196
+ Health check configuration block of the container.
197
+ """
198
+ return pulumi.get(self, "health_checks")
199
+
200
+ @health_checks.setter
201
+ def health_checks(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['ContainerHealthCheckArgs']]]]):
202
+ pulumi.set(self, "health_checks", value)
203
+
204
+ @property
205
+ @pulumi.getter(name="httpOption")
206
+ def http_option(self) -> Optional[pulumi.Input[str]]:
207
+ """
208
+ Allows both HTTP and HTTPS (`enabled`) or redirect HTTP to HTTPS (`redirected`). Defaults to `enabled`.
209
+ """
210
+ return pulumi.get(self, "http_option")
211
+
212
+ @http_option.setter
213
+ def http_option(self, value: Optional[pulumi.Input[str]]):
214
+ pulumi.set(self, "http_option", value)
215
+
216
+ @property
217
+ @pulumi.getter(name="localStorageLimit")
218
+ def local_storage_limit(self) -> Optional[pulumi.Input[int]]:
219
+ """
220
+ Local storage limit of the container (in MB)
221
+
222
+ Note that if you want to use your own configuration, you must consult our configuration [restrictions](https://www.scaleway.com/en/docs/serverless-containers/reference-content/containers-limitations/#configuration-restrictions) section.
223
+ """
224
+ return pulumi.get(self, "local_storage_limit")
225
+
226
+ @local_storage_limit.setter
227
+ def local_storage_limit(self, value: Optional[pulumi.Input[int]]):
228
+ pulumi.set(self, "local_storage_limit", value)
229
+
230
+ @property
231
+ @pulumi.getter(name="maxConcurrency")
232
+ @_utilities.deprecated("""Use scaling_option.concurrent_requests_threshold instead. This attribute will be removed.""")
233
+ def max_concurrency(self) -> Optional[pulumi.Input[int]]:
234
+ """
235
+ The maximum number of simultaneous requests your container can handle at the same time. Use `scaling_option.concurrent_requests_threshold` instead.
236
+ """
237
+ return pulumi.get(self, "max_concurrency")
238
+
239
+ @max_concurrency.setter
240
+ def max_concurrency(self, value: Optional[pulumi.Input[int]]):
241
+ pulumi.set(self, "max_concurrency", value)
242
+
243
+ @property
244
+ @pulumi.getter(name="maxScale")
245
+ def max_scale(self) -> Optional[pulumi.Input[int]]:
246
+ """
247
+ The maximum number of instances this container can scale to.
248
+ """
249
+ return pulumi.get(self, "max_scale")
250
+
251
+ @max_scale.setter
252
+ def max_scale(self, value: Optional[pulumi.Input[int]]):
253
+ pulumi.set(self, "max_scale", value)
254
+
255
+ @property
256
+ @pulumi.getter(name="memoryLimit")
257
+ def memory_limit(self) -> Optional[pulumi.Input[int]]:
258
+ """
259
+ The memory resources in MB to allocate to each container.
260
+ """
261
+ return pulumi.get(self, "memory_limit")
262
+
263
+ @memory_limit.setter
264
+ def memory_limit(self, value: Optional[pulumi.Input[int]]):
265
+ pulumi.set(self, "memory_limit", value)
266
+
267
+ @property
268
+ @pulumi.getter(name="minScale")
269
+ def min_scale(self) -> Optional[pulumi.Input[int]]:
270
+ """
271
+ The minimum number of container instances running continuously.
272
+ """
273
+ return pulumi.get(self, "min_scale")
274
+
275
+ @min_scale.setter
276
+ def min_scale(self, value: Optional[pulumi.Input[int]]):
277
+ pulumi.set(self, "min_scale", value)
278
+
279
+ @property
280
+ @pulumi.getter
281
+ def name(self) -> Optional[pulumi.Input[str]]:
282
+ """
283
+ The unique name of the container name.
284
+ """
285
+ return pulumi.get(self, "name")
286
+
287
+ @name.setter
288
+ def name(self, value: Optional[pulumi.Input[str]]):
289
+ pulumi.set(self, "name", value)
290
+
291
+ @property
292
+ @pulumi.getter
293
+ def port(self) -> Optional[pulumi.Input[int]]:
294
+ """
295
+ The port to expose the container.
296
+ """
297
+ return pulumi.get(self, "port")
298
+
299
+ @port.setter
300
+ def port(self, value: Optional[pulumi.Input[int]]):
301
+ pulumi.set(self, "port", value)
302
+
303
+ @property
304
+ @pulumi.getter
305
+ def privacy(self) -> Optional[pulumi.Input[str]]:
306
+ """
307
+ The privacy type defines the way to authenticate to your container. Please check our dedicated [section](https://www.scaleway.com/en/developers/api/serverless-containers/#protocol-9dd4c8).
308
+ """
309
+ return pulumi.get(self, "privacy")
310
+
311
+ @privacy.setter
312
+ def privacy(self, value: Optional[pulumi.Input[str]]):
313
+ pulumi.set(self, "privacy", value)
314
+
315
+ @property
316
+ @pulumi.getter
317
+ def protocol(self) -> Optional[pulumi.Input[str]]:
318
+ """
319
+ The communication [protocol](https://www.scaleway.com/en/developers/api/serverless-containers/#path-containers-update-an-existing-container) `http1` or `h2c`. Defaults to `http1`.
320
+ """
321
+ return pulumi.get(self, "protocol")
322
+
323
+ @protocol.setter
324
+ def protocol(self, value: Optional[pulumi.Input[str]]):
325
+ pulumi.set(self, "protocol", value)
326
+
327
+ @property
328
+ @pulumi.getter
329
+ def region(self) -> Optional[pulumi.Input[str]]:
330
+ """
331
+ (Defaults to provider `region`) The region in which the container was created.
332
+ """
333
+ return pulumi.get(self, "region")
334
+
335
+ @region.setter
336
+ def region(self, value: Optional[pulumi.Input[str]]):
337
+ pulumi.set(self, "region", value)
338
+
339
+ @property
340
+ @pulumi.getter(name="registryImage")
341
+ def registry_image(self) -> Optional[pulumi.Input[str]]:
342
+ """
343
+ The registry image address (e.g., `rg.fr-par.scw.cloud/$NAMESPACE/$IMAGE`)
344
+ """
345
+ return pulumi.get(self, "registry_image")
346
+
347
+ @registry_image.setter
348
+ def registry_image(self, value: Optional[pulumi.Input[str]]):
349
+ pulumi.set(self, "registry_image", value)
350
+
351
+ @property
352
+ @pulumi.getter(name="registrySha256")
353
+ def registry_sha256(self) -> Optional[pulumi.Input[str]]:
354
+ """
355
+ The sha256 of your source registry image, changing it will re-apply the deployment. Can be any string.
356
+ """
357
+ return pulumi.get(self, "registry_sha256")
358
+
359
+ @registry_sha256.setter
360
+ def registry_sha256(self, value: Optional[pulumi.Input[str]]):
361
+ pulumi.set(self, "registry_sha256", value)
362
+
363
+ @property
364
+ @pulumi.getter
365
+ def sandbox(self) -> Optional[pulumi.Input[str]]:
366
+ """
367
+ Execution environment of the container.
368
+ """
369
+ return pulumi.get(self, "sandbox")
370
+
371
+ @sandbox.setter
372
+ def sandbox(self, value: Optional[pulumi.Input[str]]):
373
+ pulumi.set(self, "sandbox", value)
374
+
375
+ @property
376
+ @pulumi.getter(name="scalingOptions")
377
+ def scaling_options(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['ContainerScalingOptionArgs']]]]:
378
+ """
379
+ Configuration block used to decide when to scale up or down. Possible values:
380
+ """
381
+ return pulumi.get(self, "scaling_options")
382
+
383
+ @scaling_options.setter
384
+ def scaling_options(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['ContainerScalingOptionArgs']]]]):
385
+ pulumi.set(self, "scaling_options", value)
386
+
387
+ @property
388
+ @pulumi.getter(name="secretEnvironmentVariables")
389
+ def secret_environment_variables(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]:
390
+ """
391
+ The [secret environment variables](https://www.scaleway.com/en/docs/serverless-containers/concepts/#secrets) of the container.
392
+ """
393
+ return pulumi.get(self, "secret_environment_variables")
394
+
395
+ @secret_environment_variables.setter
396
+ def secret_environment_variables(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]):
397
+ pulumi.set(self, "secret_environment_variables", value)
398
+
399
+ @property
400
+ @pulumi.getter
401
+ def status(self) -> Optional[pulumi.Input[str]]:
402
+ """
403
+ The container status.
404
+ """
405
+ return pulumi.get(self, "status")
406
+
407
+ @status.setter
408
+ def status(self, value: Optional[pulumi.Input[str]]):
409
+ pulumi.set(self, "status", value)
410
+
411
+ @property
412
+ @pulumi.getter
413
+ def timeout(self) -> Optional[pulumi.Input[int]]:
414
+ """
415
+ The maximum amount of time in seconds your container can spend processing a request before being stopped. Default to `300` seconds.
416
+ """
417
+ return pulumi.get(self, "timeout")
418
+
419
+ @timeout.setter
420
+ def timeout(self, value: Optional[pulumi.Input[int]]):
421
+ pulumi.set(self, "timeout", value)
422
+
423
+
424
+ @pulumi.input_type
425
+ class _ContainerState:
426
+ def __init__(__self__, *,
427
+ cpu_limit: Optional[pulumi.Input[int]] = None,
428
+ cron_status: Optional[pulumi.Input[str]] = None,
429
+ deploy: Optional[pulumi.Input[bool]] = None,
430
+ description: Optional[pulumi.Input[str]] = None,
431
+ domain_name: Optional[pulumi.Input[str]] = None,
432
+ environment_variables: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
433
+ error_message: Optional[pulumi.Input[str]] = None,
434
+ health_checks: Optional[pulumi.Input[Sequence[pulumi.Input['ContainerHealthCheckArgs']]]] = None,
435
+ http_option: Optional[pulumi.Input[str]] = None,
436
+ local_storage_limit: Optional[pulumi.Input[int]] = None,
437
+ max_concurrency: Optional[pulumi.Input[int]] = None,
438
+ max_scale: Optional[pulumi.Input[int]] = None,
439
+ memory_limit: Optional[pulumi.Input[int]] = None,
440
+ min_scale: Optional[pulumi.Input[int]] = None,
441
+ name: Optional[pulumi.Input[str]] = None,
442
+ namespace_id: Optional[pulumi.Input[str]] = None,
443
+ port: Optional[pulumi.Input[int]] = None,
444
+ privacy: Optional[pulumi.Input[str]] = None,
445
+ protocol: Optional[pulumi.Input[str]] = None,
446
+ region: Optional[pulumi.Input[str]] = None,
447
+ registry_image: Optional[pulumi.Input[str]] = None,
448
+ registry_sha256: Optional[pulumi.Input[str]] = None,
449
+ sandbox: Optional[pulumi.Input[str]] = None,
450
+ scaling_options: Optional[pulumi.Input[Sequence[pulumi.Input['ContainerScalingOptionArgs']]]] = None,
451
+ secret_environment_variables: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
452
+ status: Optional[pulumi.Input[str]] = None,
453
+ timeout: Optional[pulumi.Input[int]] = None):
454
+ """
455
+ Input properties used for looking up and filtering Container resources.
456
+ :param pulumi.Input[int] cpu_limit: The amount of vCPU computing resources to allocate to each container.
457
+ :param pulumi.Input[str] cron_status: The cron status of the container.
458
+ :param pulumi.Input[bool] deploy: Boolean indicating whether the container is in a production environment.
459
+ :param pulumi.Input[str] description: The description of the container.
460
+ :param pulumi.Input[str] domain_name: The native domain name of the container
461
+ :param pulumi.Input[Mapping[str, pulumi.Input[str]]] environment_variables: The [environment variables](https://www.scaleway.com/en/docs/serverless-containers/concepts/#environment-variables) of the container.
462
+ :param pulumi.Input[str] error_message: The error message of the container.
463
+ :param pulumi.Input[Sequence[pulumi.Input['ContainerHealthCheckArgs']]] health_checks: Health check configuration block of the container.
464
+ :param pulumi.Input[str] http_option: Allows both HTTP and HTTPS (`enabled`) or redirect HTTP to HTTPS (`redirected`). Defaults to `enabled`.
465
+ :param pulumi.Input[int] local_storage_limit: Local storage limit of the container (in MB)
466
+
467
+ Note that if you want to use your own configuration, you must consult our configuration [restrictions](https://www.scaleway.com/en/docs/serverless-containers/reference-content/containers-limitations/#configuration-restrictions) section.
468
+ :param pulumi.Input[int] max_concurrency: The maximum number of simultaneous requests your container can handle at the same time. Use `scaling_option.concurrent_requests_threshold` instead.
469
+ :param pulumi.Input[int] max_scale: The maximum number of instances this container can scale to.
470
+ :param pulumi.Input[int] memory_limit: The memory resources in MB to allocate to each container.
471
+ :param pulumi.Input[int] min_scale: The minimum number of container instances running continuously.
472
+ :param pulumi.Input[str] name: The unique name of the container name.
473
+ :param pulumi.Input[str] namespace_id: The Containers namespace ID of the container.
474
+
475
+ > **Important** Updating the `name` argument will recreate the container.
476
+ :param pulumi.Input[int] port: The port to expose the container.
477
+ :param pulumi.Input[str] privacy: The privacy type defines the way to authenticate to your container. Please check our dedicated [section](https://www.scaleway.com/en/developers/api/serverless-containers/#protocol-9dd4c8).
478
+ :param pulumi.Input[str] protocol: The communication [protocol](https://www.scaleway.com/en/developers/api/serverless-containers/#path-containers-update-an-existing-container) `http1` or `h2c`. Defaults to `http1`.
479
+ :param pulumi.Input[str] region: (Defaults to provider `region`) The region in which the container was created.
480
+ :param pulumi.Input[str] registry_image: The registry image address (e.g., `rg.fr-par.scw.cloud/$NAMESPACE/$IMAGE`)
481
+ :param pulumi.Input[str] registry_sha256: The sha256 of your source registry image, changing it will re-apply the deployment. Can be any string.
482
+ :param pulumi.Input[str] sandbox: Execution environment of the container.
483
+ :param pulumi.Input[Sequence[pulumi.Input['ContainerScalingOptionArgs']]] scaling_options: Configuration block used to decide when to scale up or down. Possible values:
484
+ :param pulumi.Input[Mapping[str, pulumi.Input[str]]] secret_environment_variables: The [secret environment variables](https://www.scaleway.com/en/docs/serverless-containers/concepts/#secrets) of the container.
485
+ :param pulumi.Input[str] status: The container status.
486
+ :param pulumi.Input[int] timeout: The maximum amount of time in seconds your container can spend processing a request before being stopped. Default to `300` seconds.
487
+ """
488
+ if cpu_limit is not None:
489
+ pulumi.set(__self__, "cpu_limit", cpu_limit)
490
+ if cron_status is not None:
491
+ pulumi.set(__self__, "cron_status", cron_status)
492
+ if deploy is not None:
493
+ pulumi.set(__self__, "deploy", deploy)
494
+ if description is not None:
495
+ pulumi.set(__self__, "description", description)
496
+ if domain_name is not None:
497
+ pulumi.set(__self__, "domain_name", domain_name)
498
+ if environment_variables is not None:
499
+ pulumi.set(__self__, "environment_variables", environment_variables)
500
+ if error_message is not None:
501
+ pulumi.set(__self__, "error_message", error_message)
502
+ if health_checks is not None:
503
+ pulumi.set(__self__, "health_checks", health_checks)
504
+ if http_option is not None:
505
+ pulumi.set(__self__, "http_option", http_option)
506
+ if local_storage_limit is not None:
507
+ pulumi.set(__self__, "local_storage_limit", local_storage_limit)
508
+ if max_concurrency is not None:
509
+ warnings.warn("""Use scaling_option.concurrent_requests_threshold instead. This attribute will be removed.""", DeprecationWarning)
510
+ pulumi.log.warn("""max_concurrency is deprecated: Use scaling_option.concurrent_requests_threshold instead. This attribute will be removed.""")
511
+ if max_concurrency is not None:
512
+ pulumi.set(__self__, "max_concurrency", max_concurrency)
513
+ if max_scale is not None:
514
+ pulumi.set(__self__, "max_scale", max_scale)
515
+ if memory_limit is not None:
516
+ pulumi.set(__self__, "memory_limit", memory_limit)
517
+ if min_scale is not None:
518
+ pulumi.set(__self__, "min_scale", min_scale)
519
+ if name is not None:
520
+ pulumi.set(__self__, "name", name)
521
+ if namespace_id is not None:
522
+ pulumi.set(__self__, "namespace_id", namespace_id)
523
+ if port is not None:
524
+ pulumi.set(__self__, "port", port)
525
+ if privacy is not None:
526
+ pulumi.set(__self__, "privacy", privacy)
527
+ if protocol is not None:
528
+ pulumi.set(__self__, "protocol", protocol)
529
+ if region is not None:
530
+ pulumi.set(__self__, "region", region)
531
+ if registry_image is not None:
532
+ pulumi.set(__self__, "registry_image", registry_image)
533
+ if registry_sha256 is not None:
534
+ pulumi.set(__self__, "registry_sha256", registry_sha256)
535
+ if sandbox is not None:
536
+ pulumi.set(__self__, "sandbox", sandbox)
537
+ if scaling_options is not None:
538
+ pulumi.set(__self__, "scaling_options", scaling_options)
539
+ if secret_environment_variables is not None:
540
+ pulumi.set(__self__, "secret_environment_variables", secret_environment_variables)
541
+ if status is not None:
542
+ pulumi.set(__self__, "status", status)
543
+ if timeout is not None:
544
+ pulumi.set(__self__, "timeout", timeout)
545
+
546
+ @property
547
+ @pulumi.getter(name="cpuLimit")
548
+ def cpu_limit(self) -> Optional[pulumi.Input[int]]:
549
+ """
550
+ The amount of vCPU computing resources to allocate to each container.
551
+ """
552
+ return pulumi.get(self, "cpu_limit")
553
+
554
+ @cpu_limit.setter
555
+ def cpu_limit(self, value: Optional[pulumi.Input[int]]):
556
+ pulumi.set(self, "cpu_limit", value)
557
+
558
+ @property
559
+ @pulumi.getter(name="cronStatus")
560
+ def cron_status(self) -> Optional[pulumi.Input[str]]:
561
+ """
562
+ The cron status of the container.
563
+ """
564
+ return pulumi.get(self, "cron_status")
565
+
566
+ @cron_status.setter
567
+ def cron_status(self, value: Optional[pulumi.Input[str]]):
568
+ pulumi.set(self, "cron_status", value)
569
+
570
+ @property
571
+ @pulumi.getter
572
+ def deploy(self) -> Optional[pulumi.Input[bool]]:
573
+ """
574
+ Boolean indicating whether the container is in a production environment.
575
+ """
576
+ return pulumi.get(self, "deploy")
577
+
578
+ @deploy.setter
579
+ def deploy(self, value: Optional[pulumi.Input[bool]]):
580
+ pulumi.set(self, "deploy", value)
581
+
582
+ @property
583
+ @pulumi.getter
584
+ def description(self) -> Optional[pulumi.Input[str]]:
585
+ """
586
+ The description of the container.
587
+ """
588
+ return pulumi.get(self, "description")
589
+
590
+ @description.setter
591
+ def description(self, value: Optional[pulumi.Input[str]]):
592
+ pulumi.set(self, "description", value)
593
+
594
+ @property
595
+ @pulumi.getter(name="domainName")
596
+ def domain_name(self) -> Optional[pulumi.Input[str]]:
597
+ """
598
+ The native domain name of the container
599
+ """
600
+ return pulumi.get(self, "domain_name")
601
+
602
+ @domain_name.setter
603
+ def domain_name(self, value: Optional[pulumi.Input[str]]):
604
+ pulumi.set(self, "domain_name", value)
605
+
606
+ @property
607
+ @pulumi.getter(name="environmentVariables")
608
+ def environment_variables(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]:
609
+ """
610
+ The [environment variables](https://www.scaleway.com/en/docs/serverless-containers/concepts/#environment-variables) of the container.
611
+ """
612
+ return pulumi.get(self, "environment_variables")
613
+
614
+ @environment_variables.setter
615
+ def environment_variables(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]):
616
+ pulumi.set(self, "environment_variables", value)
617
+
618
+ @property
619
+ @pulumi.getter(name="errorMessage")
620
+ def error_message(self) -> Optional[pulumi.Input[str]]:
621
+ """
622
+ The error message of the container.
623
+ """
624
+ return pulumi.get(self, "error_message")
625
+
626
+ @error_message.setter
627
+ def error_message(self, value: Optional[pulumi.Input[str]]):
628
+ pulumi.set(self, "error_message", value)
629
+
630
+ @property
631
+ @pulumi.getter(name="healthChecks")
632
+ def health_checks(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['ContainerHealthCheckArgs']]]]:
633
+ """
634
+ Health check configuration block of the container.
635
+ """
636
+ return pulumi.get(self, "health_checks")
637
+
638
+ @health_checks.setter
639
+ def health_checks(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['ContainerHealthCheckArgs']]]]):
640
+ pulumi.set(self, "health_checks", value)
641
+
642
+ @property
643
+ @pulumi.getter(name="httpOption")
644
+ def http_option(self) -> Optional[pulumi.Input[str]]:
645
+ """
646
+ Allows both HTTP and HTTPS (`enabled`) or redirect HTTP to HTTPS (`redirected`). Defaults to `enabled`.
647
+ """
648
+ return pulumi.get(self, "http_option")
649
+
650
+ @http_option.setter
651
+ def http_option(self, value: Optional[pulumi.Input[str]]):
652
+ pulumi.set(self, "http_option", value)
653
+
654
+ @property
655
+ @pulumi.getter(name="localStorageLimit")
656
+ def local_storage_limit(self) -> Optional[pulumi.Input[int]]:
657
+ """
658
+ Local storage limit of the container (in MB)
659
+
660
+ Note that if you want to use your own configuration, you must consult our configuration [restrictions](https://www.scaleway.com/en/docs/serverless-containers/reference-content/containers-limitations/#configuration-restrictions) section.
661
+ """
662
+ return pulumi.get(self, "local_storage_limit")
663
+
664
+ @local_storage_limit.setter
665
+ def local_storage_limit(self, value: Optional[pulumi.Input[int]]):
666
+ pulumi.set(self, "local_storage_limit", value)
667
+
668
+ @property
669
+ @pulumi.getter(name="maxConcurrency")
670
+ @_utilities.deprecated("""Use scaling_option.concurrent_requests_threshold instead. This attribute will be removed.""")
671
+ def max_concurrency(self) -> Optional[pulumi.Input[int]]:
672
+ """
673
+ The maximum number of simultaneous requests your container can handle at the same time. Use `scaling_option.concurrent_requests_threshold` instead.
674
+ """
675
+ return pulumi.get(self, "max_concurrency")
676
+
677
+ @max_concurrency.setter
678
+ def max_concurrency(self, value: Optional[pulumi.Input[int]]):
679
+ pulumi.set(self, "max_concurrency", value)
680
+
681
+ @property
682
+ @pulumi.getter(name="maxScale")
683
+ def max_scale(self) -> Optional[pulumi.Input[int]]:
684
+ """
685
+ The maximum number of instances this container can scale to.
686
+ """
687
+ return pulumi.get(self, "max_scale")
688
+
689
+ @max_scale.setter
690
+ def max_scale(self, value: Optional[pulumi.Input[int]]):
691
+ pulumi.set(self, "max_scale", value)
692
+
693
+ @property
694
+ @pulumi.getter(name="memoryLimit")
695
+ def memory_limit(self) -> Optional[pulumi.Input[int]]:
696
+ """
697
+ The memory resources in MB to allocate to each container.
698
+ """
699
+ return pulumi.get(self, "memory_limit")
700
+
701
+ @memory_limit.setter
702
+ def memory_limit(self, value: Optional[pulumi.Input[int]]):
703
+ pulumi.set(self, "memory_limit", value)
704
+
705
+ @property
706
+ @pulumi.getter(name="minScale")
707
+ def min_scale(self) -> Optional[pulumi.Input[int]]:
708
+ """
709
+ The minimum number of container instances running continuously.
710
+ """
711
+ return pulumi.get(self, "min_scale")
712
+
713
+ @min_scale.setter
714
+ def min_scale(self, value: Optional[pulumi.Input[int]]):
715
+ pulumi.set(self, "min_scale", value)
716
+
717
+ @property
718
+ @pulumi.getter
719
+ def name(self) -> Optional[pulumi.Input[str]]:
720
+ """
721
+ The unique name of the container name.
722
+ """
723
+ return pulumi.get(self, "name")
724
+
725
+ @name.setter
726
+ def name(self, value: Optional[pulumi.Input[str]]):
727
+ pulumi.set(self, "name", value)
728
+
729
+ @property
730
+ @pulumi.getter(name="namespaceId")
731
+ def namespace_id(self) -> Optional[pulumi.Input[str]]:
732
+ """
733
+ The Containers namespace ID of the container.
734
+
735
+ > **Important** Updating the `name` argument will recreate the container.
736
+ """
737
+ return pulumi.get(self, "namespace_id")
738
+
739
+ @namespace_id.setter
740
+ def namespace_id(self, value: Optional[pulumi.Input[str]]):
741
+ pulumi.set(self, "namespace_id", value)
742
+
743
+ @property
744
+ @pulumi.getter
745
+ def port(self) -> Optional[pulumi.Input[int]]:
746
+ """
747
+ The port to expose the container.
748
+ """
749
+ return pulumi.get(self, "port")
750
+
751
+ @port.setter
752
+ def port(self, value: Optional[pulumi.Input[int]]):
753
+ pulumi.set(self, "port", value)
754
+
755
+ @property
756
+ @pulumi.getter
757
+ def privacy(self) -> Optional[pulumi.Input[str]]:
758
+ """
759
+ The privacy type defines the way to authenticate to your container. Please check our dedicated [section](https://www.scaleway.com/en/developers/api/serverless-containers/#protocol-9dd4c8).
760
+ """
761
+ return pulumi.get(self, "privacy")
762
+
763
+ @privacy.setter
764
+ def privacy(self, value: Optional[pulumi.Input[str]]):
765
+ pulumi.set(self, "privacy", value)
766
+
767
+ @property
768
+ @pulumi.getter
769
+ def protocol(self) -> Optional[pulumi.Input[str]]:
770
+ """
771
+ The communication [protocol](https://www.scaleway.com/en/developers/api/serverless-containers/#path-containers-update-an-existing-container) `http1` or `h2c`. Defaults to `http1`.
772
+ """
773
+ return pulumi.get(self, "protocol")
774
+
775
+ @protocol.setter
776
+ def protocol(self, value: Optional[pulumi.Input[str]]):
777
+ pulumi.set(self, "protocol", value)
778
+
779
+ @property
780
+ @pulumi.getter
781
+ def region(self) -> Optional[pulumi.Input[str]]:
782
+ """
783
+ (Defaults to provider `region`) The region in which the container was created.
784
+ """
785
+ return pulumi.get(self, "region")
786
+
787
+ @region.setter
788
+ def region(self, value: Optional[pulumi.Input[str]]):
789
+ pulumi.set(self, "region", value)
790
+
791
+ @property
792
+ @pulumi.getter(name="registryImage")
793
+ def registry_image(self) -> Optional[pulumi.Input[str]]:
794
+ """
795
+ The registry image address (e.g., `rg.fr-par.scw.cloud/$NAMESPACE/$IMAGE`)
796
+ """
797
+ return pulumi.get(self, "registry_image")
798
+
799
+ @registry_image.setter
800
+ def registry_image(self, value: Optional[pulumi.Input[str]]):
801
+ pulumi.set(self, "registry_image", value)
802
+
803
+ @property
804
+ @pulumi.getter(name="registrySha256")
805
+ def registry_sha256(self) -> Optional[pulumi.Input[str]]:
806
+ """
807
+ The sha256 of your source registry image, changing it will re-apply the deployment. Can be any string.
808
+ """
809
+ return pulumi.get(self, "registry_sha256")
810
+
811
+ @registry_sha256.setter
812
+ def registry_sha256(self, value: Optional[pulumi.Input[str]]):
813
+ pulumi.set(self, "registry_sha256", value)
814
+
815
+ @property
816
+ @pulumi.getter
817
+ def sandbox(self) -> Optional[pulumi.Input[str]]:
818
+ """
819
+ Execution environment of the container.
820
+ """
821
+ return pulumi.get(self, "sandbox")
822
+
823
+ @sandbox.setter
824
+ def sandbox(self, value: Optional[pulumi.Input[str]]):
825
+ pulumi.set(self, "sandbox", value)
826
+
827
+ @property
828
+ @pulumi.getter(name="scalingOptions")
829
+ def scaling_options(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['ContainerScalingOptionArgs']]]]:
830
+ """
831
+ Configuration block used to decide when to scale up or down. Possible values:
832
+ """
833
+ return pulumi.get(self, "scaling_options")
834
+
835
+ @scaling_options.setter
836
+ def scaling_options(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['ContainerScalingOptionArgs']]]]):
837
+ pulumi.set(self, "scaling_options", value)
838
+
839
+ @property
840
+ @pulumi.getter(name="secretEnvironmentVariables")
841
+ def secret_environment_variables(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]:
842
+ """
843
+ The [secret environment variables](https://www.scaleway.com/en/docs/serverless-containers/concepts/#secrets) of the container.
844
+ """
845
+ return pulumi.get(self, "secret_environment_variables")
846
+
847
+ @secret_environment_variables.setter
848
+ def secret_environment_variables(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]):
849
+ pulumi.set(self, "secret_environment_variables", value)
850
+
851
+ @property
852
+ @pulumi.getter
853
+ def status(self) -> Optional[pulumi.Input[str]]:
854
+ """
855
+ The container status.
856
+ """
857
+ return pulumi.get(self, "status")
858
+
859
+ @status.setter
860
+ def status(self, value: Optional[pulumi.Input[str]]):
861
+ pulumi.set(self, "status", value)
862
+
863
+ @property
864
+ @pulumi.getter
865
+ def timeout(self) -> Optional[pulumi.Input[int]]:
866
+ """
867
+ The maximum amount of time in seconds your container can spend processing a request before being stopped. Default to `300` seconds.
868
+ """
869
+ return pulumi.get(self, "timeout")
870
+
871
+ @timeout.setter
872
+ def timeout(self, value: Optional[pulumi.Input[int]]):
873
+ pulumi.set(self, "timeout", value)
874
+
875
+
876
+ class Container(pulumi.CustomResource):
877
+ @overload
878
+ def __init__(__self__,
879
+ resource_name: str,
880
+ opts: Optional[pulumi.ResourceOptions] = None,
881
+ cpu_limit: Optional[pulumi.Input[int]] = None,
882
+ deploy: Optional[pulumi.Input[bool]] = None,
883
+ description: Optional[pulumi.Input[str]] = None,
884
+ environment_variables: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
885
+ health_checks: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ContainerHealthCheckArgs', 'ContainerHealthCheckArgsDict']]]]] = None,
886
+ http_option: Optional[pulumi.Input[str]] = None,
887
+ local_storage_limit: Optional[pulumi.Input[int]] = None,
888
+ max_concurrency: Optional[pulumi.Input[int]] = None,
889
+ max_scale: Optional[pulumi.Input[int]] = None,
890
+ memory_limit: Optional[pulumi.Input[int]] = None,
891
+ min_scale: Optional[pulumi.Input[int]] = None,
892
+ name: Optional[pulumi.Input[str]] = None,
893
+ namespace_id: Optional[pulumi.Input[str]] = None,
894
+ port: Optional[pulumi.Input[int]] = None,
895
+ privacy: Optional[pulumi.Input[str]] = None,
896
+ protocol: Optional[pulumi.Input[str]] = None,
897
+ region: Optional[pulumi.Input[str]] = None,
898
+ registry_image: Optional[pulumi.Input[str]] = None,
899
+ registry_sha256: Optional[pulumi.Input[str]] = None,
900
+ sandbox: Optional[pulumi.Input[str]] = None,
901
+ scaling_options: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ContainerScalingOptionArgs', 'ContainerScalingOptionArgsDict']]]]] = None,
902
+ secret_environment_variables: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
903
+ status: Optional[pulumi.Input[str]] = None,
904
+ timeout: Optional[pulumi.Input[int]] = None,
905
+ __props__=None):
906
+ """
907
+ The `containers.Container` resource allows you to create and manage [Serverless Containers](https://www.scaleway.com/en/docs/serverless/containers/).
908
+
909
+ Refer to the Serverless Containers [product documentation](https://www.scaleway.com/en/docs/serverless/containers/) and [API documentation](https://www.scaleway.com/en/developers/api/serverless-containers/) for more information.
910
+
911
+ For more information on the limitations of Serverless Containers, refer to the [dedicated documentation](https://www.scaleway.com/en/docs/serverless-containers/reference-content/containers-limitations/).
912
+
913
+ ## Example Usage
914
+
915
+ ```python
916
+ import pulumi
917
+ import pulumiverse_scaleway as scaleway
918
+
919
+ main = scaleway.containers.Namespace("main",
920
+ name="my-ns-test",
921
+ description="test container")
922
+ main_container = scaleway.containers.Container("main",
923
+ name="my-container-02",
924
+ description="environment variables test",
925
+ namespace_id=main.id,
926
+ registry_image=main.registry_endpoint.apply(lambda registry_endpoint: f"{registry_endpoint}/alpine:test"),
927
+ port=9997,
928
+ cpu_limit=140,
929
+ memory_limit=256,
930
+ min_scale=3,
931
+ max_scale=5,
932
+ timeout=600,
933
+ max_concurrency=80,
934
+ privacy="private",
935
+ protocol="http1",
936
+ deploy=True,
937
+ environment_variables={
938
+ "foo": "var",
939
+ },
940
+ secret_environment_variables={
941
+ "key": "secret",
942
+ })
943
+ ```
944
+
945
+ ## Protocols
946
+
947
+ The following protocols are supported:
948
+
949
+ * `h2c`: HTTP/2 over TCP.
950
+ * `http1`: Hypertext Transfer Protocol.
951
+
952
+ > **Important:** Refer to the official [Apache documentation](https://httpd.apache.org/docs/2.4/howto/http2.html) for more information.
953
+
954
+ ## Privacy
955
+
956
+ By default, creating a container will make it `public`, meaning that anybody knowing the endpoint can execute it.
957
+
958
+ A container can be made `private` with the privacy parameter.
959
+
960
+ Refer to the [technical information](https://www.scaleway.com/en/developers/api/serverless-containers/#protocol-9dd4c8) for more information on container authentication.
961
+
962
+ ## Memory and vCPUs configuration
963
+
964
+ The vCPU represents a portion of the underlying, physical CPU that is assigned to a particular virtual machine (VM).
965
+
966
+ You can determine the computing resources to allocate to each container.
967
+
968
+ The `memory_limit` (in MB) must correspond with the right amount of vCPU. Refer to the table below to determine the right memory/vCPU combination.
969
+
970
+ | Memory (in MB) | vCPU |
971
+ |----------------|------|
972
+ | 128 | 70m |
973
+ | 256 | 140m |
974
+ | 512 | 280m |
975
+ | 1024 | 560m |
976
+ | 2048 | 1120 |
977
+ | 3072 | 1680 |
978
+ | 4096 | 2240 |
979
+
980
+ ~>**Important:** Make sure to select the right resources, as you will be billed based on compute usage over time and the number of Containers executions.
981
+ Refer to the [Serverless Containers pricing](https://www.scaleway.com/en/docs/faq/serverless-containers/#prices) for more information.
982
+
983
+ ## Health check configuration
984
+
985
+ Custom health checks can be configured on the container.
986
+
987
+ It's possible to specify the HTTP path that the probe will listen to and the number of failures before considering the container as unhealthy.
988
+ During a deployment, if a newly created container fails to pass the health check, the deployment is aborted.
989
+ As a result, lowering this value can help to reduce the time it takes to detect a failed deployment.
990
+ The period between health checks is also configurable.
991
+
992
+ Example:
993
+
994
+ ```python
995
+ import pulumi
996
+ import pulumiverse_scaleway as scaleway
997
+
998
+ main = scaleway.containers.Container("main",
999
+ name="my-container-02",
1000
+ namespace_id=main_scaleway_container_namespace["id"],
1001
+ health_checks=[{
1002
+ "https": [{
1003
+ "path": "/ping",
1004
+ }],
1005
+ "failure_threshold": 40,
1006
+ "interval": "3s",
1007
+ }])
1008
+ ```
1009
+
1010
+ ~>**Important:** Another probe type can be set to TCP with the API, but currently the SDK has not been updated with this parameter.
1011
+ This is why the only probe that can be used here is the HTTP probe.
1012
+ Refer to the [Serverless Containers pricing](https://www.scaleway.com/en/docs/faq/serverless-containers/#prices) for more information.
1013
+
1014
+ ## Scaling option configuration
1015
+
1016
+ Scaling option block configuration allows you to choose which parameter will scale up/down containers.
1017
+ Options are number of concurrent requests, CPU or memory usage.
1018
+ It replaces current `max_concurrency` that has been deprecated.
1019
+
1020
+ Example:
1021
+
1022
+ ```python
1023
+ import pulumi
1024
+ import pulumiverse_scaleway as scaleway
1025
+
1026
+ main = scaleway.containers.Container("main",
1027
+ name="my-container-02",
1028
+ namespace_id=main_scaleway_container_namespace["id"],
1029
+ scaling_options=[{
1030
+ "concurrent_requests_threshold": 15,
1031
+ }])
1032
+ ```
1033
+
1034
+ ~>**Important**: A maximum of one of these parameters may be set. Also, when `cpu_usage_threshold` or `memory_usage_threshold` are used, `min_scale` can't be set to 0.
1035
+ Refer to the [API Reference](https://www.scaleway.com/en/developers/api/serverless-containers/#path-containers-create-a-new-container) for more information.
1036
+
1037
+ ## Import
1038
+
1039
+ Containers can be imported using, `{region}/{id}`, as shown below:
1040
+
1041
+ bash
1042
+
1043
+ ```sh
1044
+ $ pulumi import scaleway:containers/container:Container main fr-par/11111111-1111-1111-1111-111111111111
1045
+ ```
1046
+
1047
+ :param str resource_name: The name of the resource.
1048
+ :param pulumi.ResourceOptions opts: Options for the resource.
1049
+ :param pulumi.Input[int] cpu_limit: The amount of vCPU computing resources to allocate to each container.
1050
+ :param pulumi.Input[bool] deploy: Boolean indicating whether the container is in a production environment.
1051
+ :param pulumi.Input[str] description: The description of the container.
1052
+ :param pulumi.Input[Mapping[str, pulumi.Input[str]]] environment_variables: The [environment variables](https://www.scaleway.com/en/docs/serverless-containers/concepts/#environment-variables) of the container.
1053
+ :param pulumi.Input[Sequence[pulumi.Input[Union['ContainerHealthCheckArgs', 'ContainerHealthCheckArgsDict']]]] health_checks: Health check configuration block of the container.
1054
+ :param pulumi.Input[str] http_option: Allows both HTTP and HTTPS (`enabled`) or redirect HTTP to HTTPS (`redirected`). Defaults to `enabled`.
1055
+ :param pulumi.Input[int] local_storage_limit: Local storage limit of the container (in MB)
1056
+
1057
+ Note that if you want to use your own configuration, you must consult our configuration [restrictions](https://www.scaleway.com/en/docs/serverless-containers/reference-content/containers-limitations/#configuration-restrictions) section.
1058
+ :param pulumi.Input[int] max_concurrency: The maximum number of simultaneous requests your container can handle at the same time. Use `scaling_option.concurrent_requests_threshold` instead.
1059
+ :param pulumi.Input[int] max_scale: The maximum number of instances this container can scale to.
1060
+ :param pulumi.Input[int] memory_limit: The memory resources in MB to allocate to each container.
1061
+ :param pulumi.Input[int] min_scale: The minimum number of container instances running continuously.
1062
+ :param pulumi.Input[str] name: The unique name of the container name.
1063
+ :param pulumi.Input[str] namespace_id: The Containers namespace ID of the container.
1064
+
1065
+ > **Important** Updating the `name` argument will recreate the container.
1066
+ :param pulumi.Input[int] port: The port to expose the container.
1067
+ :param pulumi.Input[str] privacy: The privacy type defines the way to authenticate to your container. Please check our dedicated [section](https://www.scaleway.com/en/developers/api/serverless-containers/#protocol-9dd4c8).
1068
+ :param pulumi.Input[str] protocol: The communication [protocol](https://www.scaleway.com/en/developers/api/serverless-containers/#path-containers-update-an-existing-container) `http1` or `h2c`. Defaults to `http1`.
1069
+ :param pulumi.Input[str] region: (Defaults to provider `region`) The region in which the container was created.
1070
+ :param pulumi.Input[str] registry_image: The registry image address (e.g., `rg.fr-par.scw.cloud/$NAMESPACE/$IMAGE`)
1071
+ :param pulumi.Input[str] registry_sha256: The sha256 of your source registry image, changing it will re-apply the deployment. Can be any string.
1072
+ :param pulumi.Input[str] sandbox: Execution environment of the container.
1073
+ :param pulumi.Input[Sequence[pulumi.Input[Union['ContainerScalingOptionArgs', 'ContainerScalingOptionArgsDict']]]] scaling_options: Configuration block used to decide when to scale up or down. Possible values:
1074
+ :param pulumi.Input[Mapping[str, pulumi.Input[str]]] secret_environment_variables: The [secret environment variables](https://www.scaleway.com/en/docs/serverless-containers/concepts/#secrets) of the container.
1075
+ :param pulumi.Input[str] status: The container status.
1076
+ :param pulumi.Input[int] timeout: The maximum amount of time in seconds your container can spend processing a request before being stopped. Default to `300` seconds.
1077
+ """
1078
+ ...
1079
+ @overload
1080
+ def __init__(__self__,
1081
+ resource_name: str,
1082
+ args: ContainerArgs,
1083
+ opts: Optional[pulumi.ResourceOptions] = None):
1084
+ """
1085
+ The `containers.Container` resource allows you to create and manage [Serverless Containers](https://www.scaleway.com/en/docs/serverless/containers/).
1086
+
1087
+ Refer to the Serverless Containers [product documentation](https://www.scaleway.com/en/docs/serverless/containers/) and [API documentation](https://www.scaleway.com/en/developers/api/serverless-containers/) for more information.
1088
+
1089
+ For more information on the limitations of Serverless Containers, refer to the [dedicated documentation](https://www.scaleway.com/en/docs/serverless-containers/reference-content/containers-limitations/).
1090
+
1091
+ ## Example Usage
1092
+
1093
+ ```python
1094
+ import pulumi
1095
+ import pulumiverse_scaleway as scaleway
1096
+
1097
+ main = scaleway.containers.Namespace("main",
1098
+ name="my-ns-test",
1099
+ description="test container")
1100
+ main_container = scaleway.containers.Container("main",
1101
+ name="my-container-02",
1102
+ description="environment variables test",
1103
+ namespace_id=main.id,
1104
+ registry_image=main.registry_endpoint.apply(lambda registry_endpoint: f"{registry_endpoint}/alpine:test"),
1105
+ port=9997,
1106
+ cpu_limit=140,
1107
+ memory_limit=256,
1108
+ min_scale=3,
1109
+ max_scale=5,
1110
+ timeout=600,
1111
+ max_concurrency=80,
1112
+ privacy="private",
1113
+ protocol="http1",
1114
+ deploy=True,
1115
+ environment_variables={
1116
+ "foo": "var",
1117
+ },
1118
+ secret_environment_variables={
1119
+ "key": "secret",
1120
+ })
1121
+ ```
1122
+
1123
+ ## Protocols
1124
+
1125
+ The following protocols are supported:
1126
+
1127
+ * `h2c`: HTTP/2 over TCP.
1128
+ * `http1`: Hypertext Transfer Protocol.
1129
+
1130
+ > **Important:** Refer to the official [Apache documentation](https://httpd.apache.org/docs/2.4/howto/http2.html) for more information.
1131
+
1132
+ ## Privacy
1133
+
1134
+ By default, creating a container will make it `public`, meaning that anybody knowing the endpoint can execute it.
1135
+
1136
+ A container can be made `private` with the privacy parameter.
1137
+
1138
+ Refer to the [technical information](https://www.scaleway.com/en/developers/api/serverless-containers/#protocol-9dd4c8) for more information on container authentication.
1139
+
1140
+ ## Memory and vCPUs configuration
1141
+
1142
+ The vCPU represents a portion of the underlying, physical CPU that is assigned to a particular virtual machine (VM).
1143
+
1144
+ You can determine the computing resources to allocate to each container.
1145
+
1146
+ The `memory_limit` (in MB) must correspond with the right amount of vCPU. Refer to the table below to determine the right memory/vCPU combination.
1147
+
1148
+ | Memory (in MB) | vCPU |
1149
+ |----------------|------|
1150
+ | 128 | 70m |
1151
+ | 256 | 140m |
1152
+ | 512 | 280m |
1153
+ | 1024 | 560m |
1154
+ | 2048 | 1120 |
1155
+ | 3072 | 1680 |
1156
+ | 4096 | 2240 |
1157
+
1158
+ ~>**Important:** Make sure to select the right resources, as you will be billed based on compute usage over time and the number of Containers executions.
1159
+ Refer to the [Serverless Containers pricing](https://www.scaleway.com/en/docs/faq/serverless-containers/#prices) for more information.
1160
+
1161
+ ## Health check configuration
1162
+
1163
+ Custom health checks can be configured on the container.
1164
+
1165
+ It's possible to specify the HTTP path that the probe will listen to and the number of failures before considering the container as unhealthy.
1166
+ During a deployment, if a newly created container fails to pass the health check, the deployment is aborted.
1167
+ As a result, lowering this value can help to reduce the time it takes to detect a failed deployment.
1168
+ The period between health checks is also configurable.
1169
+
1170
+ Example:
1171
+
1172
+ ```python
1173
+ import pulumi
1174
+ import pulumiverse_scaleway as scaleway
1175
+
1176
+ main = scaleway.containers.Container("main",
1177
+ name="my-container-02",
1178
+ namespace_id=main_scaleway_container_namespace["id"],
1179
+ health_checks=[{
1180
+ "https": [{
1181
+ "path": "/ping",
1182
+ }],
1183
+ "failure_threshold": 40,
1184
+ "interval": "3s",
1185
+ }])
1186
+ ```
1187
+
1188
+ ~>**Important:** Another probe type can be set to TCP with the API, but currently the SDK has not been updated with this parameter.
1189
+ This is why the only probe that can be used here is the HTTP probe.
1190
+ Refer to the [Serverless Containers pricing](https://www.scaleway.com/en/docs/faq/serverless-containers/#prices) for more information.
1191
+
1192
+ ## Scaling option configuration
1193
+
1194
+ Scaling option block configuration allows you to choose which parameter will scale up/down containers.
1195
+ Options are number of concurrent requests, CPU or memory usage.
1196
+ It replaces current `max_concurrency` that has been deprecated.
1197
+
1198
+ Example:
1199
+
1200
+ ```python
1201
+ import pulumi
1202
+ import pulumiverse_scaleway as scaleway
1203
+
1204
+ main = scaleway.containers.Container("main",
1205
+ name="my-container-02",
1206
+ namespace_id=main_scaleway_container_namespace["id"],
1207
+ scaling_options=[{
1208
+ "concurrent_requests_threshold": 15,
1209
+ }])
1210
+ ```
1211
+
1212
+ ~>**Important**: A maximum of one of these parameters may be set. Also, when `cpu_usage_threshold` or `memory_usage_threshold` are used, `min_scale` can't be set to 0.
1213
+ Refer to the [API Reference](https://www.scaleway.com/en/developers/api/serverless-containers/#path-containers-create-a-new-container) for more information.
1214
+
1215
+ ## Import
1216
+
1217
+ Containers can be imported using, `{region}/{id}`, as shown below:
1218
+
1219
+ bash
1220
+
1221
+ ```sh
1222
+ $ pulumi import scaleway:containers/container:Container main fr-par/11111111-1111-1111-1111-111111111111
1223
+ ```
1224
+
1225
+ :param str resource_name: The name of the resource.
1226
+ :param ContainerArgs args: The arguments to use to populate this resource's properties.
1227
+ :param pulumi.ResourceOptions opts: Options for the resource.
1228
+ """
1229
+ ...
1230
+ def __init__(__self__, resource_name: str, *args, **kwargs):
1231
+ resource_args, opts = _utilities.get_resource_args_opts(ContainerArgs, pulumi.ResourceOptions, *args, **kwargs)
1232
+ if resource_args is not None:
1233
+ __self__._internal_init(resource_name, opts, **resource_args.__dict__)
1234
+ else:
1235
+ __self__._internal_init(resource_name, *args, **kwargs)
1236
+
1237
+ def _internal_init(__self__,
1238
+ resource_name: str,
1239
+ opts: Optional[pulumi.ResourceOptions] = None,
1240
+ cpu_limit: Optional[pulumi.Input[int]] = None,
1241
+ deploy: Optional[pulumi.Input[bool]] = None,
1242
+ description: Optional[pulumi.Input[str]] = None,
1243
+ environment_variables: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
1244
+ health_checks: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ContainerHealthCheckArgs', 'ContainerHealthCheckArgsDict']]]]] = None,
1245
+ http_option: Optional[pulumi.Input[str]] = None,
1246
+ local_storage_limit: Optional[pulumi.Input[int]] = None,
1247
+ max_concurrency: Optional[pulumi.Input[int]] = None,
1248
+ max_scale: Optional[pulumi.Input[int]] = None,
1249
+ memory_limit: Optional[pulumi.Input[int]] = None,
1250
+ min_scale: Optional[pulumi.Input[int]] = None,
1251
+ name: Optional[pulumi.Input[str]] = None,
1252
+ namespace_id: Optional[pulumi.Input[str]] = None,
1253
+ port: Optional[pulumi.Input[int]] = None,
1254
+ privacy: Optional[pulumi.Input[str]] = None,
1255
+ protocol: Optional[pulumi.Input[str]] = None,
1256
+ region: Optional[pulumi.Input[str]] = None,
1257
+ registry_image: Optional[pulumi.Input[str]] = None,
1258
+ registry_sha256: Optional[pulumi.Input[str]] = None,
1259
+ sandbox: Optional[pulumi.Input[str]] = None,
1260
+ scaling_options: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ContainerScalingOptionArgs', 'ContainerScalingOptionArgsDict']]]]] = None,
1261
+ secret_environment_variables: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
1262
+ status: Optional[pulumi.Input[str]] = None,
1263
+ timeout: Optional[pulumi.Input[int]] = None,
1264
+ __props__=None):
1265
+ opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts)
1266
+ if not isinstance(opts, pulumi.ResourceOptions):
1267
+ raise TypeError('Expected resource options to be a ResourceOptions instance')
1268
+ if opts.id is None:
1269
+ if __props__ is not None:
1270
+ raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource')
1271
+ __props__ = ContainerArgs.__new__(ContainerArgs)
1272
+
1273
+ __props__.__dict__["cpu_limit"] = cpu_limit
1274
+ __props__.__dict__["deploy"] = deploy
1275
+ __props__.__dict__["description"] = description
1276
+ __props__.__dict__["environment_variables"] = environment_variables
1277
+ __props__.__dict__["health_checks"] = health_checks
1278
+ __props__.__dict__["http_option"] = http_option
1279
+ __props__.__dict__["local_storage_limit"] = local_storage_limit
1280
+ __props__.__dict__["max_concurrency"] = max_concurrency
1281
+ __props__.__dict__["max_scale"] = max_scale
1282
+ __props__.__dict__["memory_limit"] = memory_limit
1283
+ __props__.__dict__["min_scale"] = min_scale
1284
+ __props__.__dict__["name"] = name
1285
+ if namespace_id is None and not opts.urn:
1286
+ raise TypeError("Missing required property 'namespace_id'")
1287
+ __props__.__dict__["namespace_id"] = namespace_id
1288
+ __props__.__dict__["port"] = port
1289
+ __props__.__dict__["privacy"] = privacy
1290
+ __props__.__dict__["protocol"] = protocol
1291
+ __props__.__dict__["region"] = region
1292
+ __props__.__dict__["registry_image"] = registry_image
1293
+ __props__.__dict__["registry_sha256"] = registry_sha256
1294
+ __props__.__dict__["sandbox"] = sandbox
1295
+ __props__.__dict__["scaling_options"] = scaling_options
1296
+ __props__.__dict__["secret_environment_variables"] = None if secret_environment_variables is None else pulumi.Output.secret(secret_environment_variables)
1297
+ __props__.__dict__["status"] = status
1298
+ __props__.__dict__["timeout"] = timeout
1299
+ __props__.__dict__["cron_status"] = None
1300
+ __props__.__dict__["domain_name"] = None
1301
+ __props__.__dict__["error_message"] = None
1302
+ alias_opts = pulumi.ResourceOptions(aliases=[pulumi.Alias(type_="scaleway:index/container:Container")])
1303
+ opts = pulumi.ResourceOptions.merge(opts, alias_opts)
1304
+ secret_opts = pulumi.ResourceOptions(additional_secret_outputs=["secretEnvironmentVariables"])
1305
+ opts = pulumi.ResourceOptions.merge(opts, secret_opts)
1306
+ super(Container, __self__).__init__(
1307
+ 'scaleway:containers/container:Container',
1308
+ resource_name,
1309
+ __props__,
1310
+ opts)
1311
+
1312
+ @staticmethod
1313
+ def get(resource_name: str,
1314
+ id: pulumi.Input[str],
1315
+ opts: Optional[pulumi.ResourceOptions] = None,
1316
+ cpu_limit: Optional[pulumi.Input[int]] = None,
1317
+ cron_status: Optional[pulumi.Input[str]] = None,
1318
+ deploy: Optional[pulumi.Input[bool]] = None,
1319
+ description: Optional[pulumi.Input[str]] = None,
1320
+ domain_name: Optional[pulumi.Input[str]] = None,
1321
+ environment_variables: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
1322
+ error_message: Optional[pulumi.Input[str]] = None,
1323
+ health_checks: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ContainerHealthCheckArgs', 'ContainerHealthCheckArgsDict']]]]] = None,
1324
+ http_option: Optional[pulumi.Input[str]] = None,
1325
+ local_storage_limit: Optional[pulumi.Input[int]] = None,
1326
+ max_concurrency: Optional[pulumi.Input[int]] = None,
1327
+ max_scale: Optional[pulumi.Input[int]] = None,
1328
+ memory_limit: Optional[pulumi.Input[int]] = None,
1329
+ min_scale: Optional[pulumi.Input[int]] = None,
1330
+ name: Optional[pulumi.Input[str]] = None,
1331
+ namespace_id: Optional[pulumi.Input[str]] = None,
1332
+ port: Optional[pulumi.Input[int]] = None,
1333
+ privacy: Optional[pulumi.Input[str]] = None,
1334
+ protocol: Optional[pulumi.Input[str]] = None,
1335
+ region: Optional[pulumi.Input[str]] = None,
1336
+ registry_image: Optional[pulumi.Input[str]] = None,
1337
+ registry_sha256: Optional[pulumi.Input[str]] = None,
1338
+ sandbox: Optional[pulumi.Input[str]] = None,
1339
+ scaling_options: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ContainerScalingOptionArgs', 'ContainerScalingOptionArgsDict']]]]] = None,
1340
+ secret_environment_variables: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
1341
+ status: Optional[pulumi.Input[str]] = None,
1342
+ timeout: Optional[pulumi.Input[int]] = None) -> 'Container':
1343
+ """
1344
+ Get an existing Container resource's state with the given name, id, and optional extra
1345
+ properties used to qualify the lookup.
1346
+
1347
+ :param str resource_name: The unique name of the resulting resource.
1348
+ :param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
1349
+ :param pulumi.ResourceOptions opts: Options for the resource.
1350
+ :param pulumi.Input[int] cpu_limit: The amount of vCPU computing resources to allocate to each container.
1351
+ :param pulumi.Input[str] cron_status: The cron status of the container.
1352
+ :param pulumi.Input[bool] deploy: Boolean indicating whether the container is in a production environment.
1353
+ :param pulumi.Input[str] description: The description of the container.
1354
+ :param pulumi.Input[str] domain_name: The native domain name of the container
1355
+ :param pulumi.Input[Mapping[str, pulumi.Input[str]]] environment_variables: The [environment variables](https://www.scaleway.com/en/docs/serverless-containers/concepts/#environment-variables) of the container.
1356
+ :param pulumi.Input[str] error_message: The error message of the container.
1357
+ :param pulumi.Input[Sequence[pulumi.Input[Union['ContainerHealthCheckArgs', 'ContainerHealthCheckArgsDict']]]] health_checks: Health check configuration block of the container.
1358
+ :param pulumi.Input[str] http_option: Allows both HTTP and HTTPS (`enabled`) or redirect HTTP to HTTPS (`redirected`). Defaults to `enabled`.
1359
+ :param pulumi.Input[int] local_storage_limit: Local storage limit of the container (in MB)
1360
+
1361
+ Note that if you want to use your own configuration, you must consult our configuration [restrictions](https://www.scaleway.com/en/docs/serverless-containers/reference-content/containers-limitations/#configuration-restrictions) section.
1362
+ :param pulumi.Input[int] max_concurrency: The maximum number of simultaneous requests your container can handle at the same time. Use `scaling_option.concurrent_requests_threshold` instead.
1363
+ :param pulumi.Input[int] max_scale: The maximum number of instances this container can scale to.
1364
+ :param pulumi.Input[int] memory_limit: The memory resources in MB to allocate to each container.
1365
+ :param pulumi.Input[int] min_scale: The minimum number of container instances running continuously.
1366
+ :param pulumi.Input[str] name: The unique name of the container name.
1367
+ :param pulumi.Input[str] namespace_id: The Containers namespace ID of the container.
1368
+
1369
+ > **Important** Updating the `name` argument will recreate the container.
1370
+ :param pulumi.Input[int] port: The port to expose the container.
1371
+ :param pulumi.Input[str] privacy: The privacy type defines the way to authenticate to your container. Please check our dedicated [section](https://www.scaleway.com/en/developers/api/serverless-containers/#protocol-9dd4c8).
1372
+ :param pulumi.Input[str] protocol: The communication [protocol](https://www.scaleway.com/en/developers/api/serverless-containers/#path-containers-update-an-existing-container) `http1` or `h2c`. Defaults to `http1`.
1373
+ :param pulumi.Input[str] region: (Defaults to provider `region`) The region in which the container was created.
1374
+ :param pulumi.Input[str] registry_image: The registry image address (e.g., `rg.fr-par.scw.cloud/$NAMESPACE/$IMAGE`)
1375
+ :param pulumi.Input[str] registry_sha256: The sha256 of your source registry image, changing it will re-apply the deployment. Can be any string.
1376
+ :param pulumi.Input[str] sandbox: Execution environment of the container.
1377
+ :param pulumi.Input[Sequence[pulumi.Input[Union['ContainerScalingOptionArgs', 'ContainerScalingOptionArgsDict']]]] scaling_options: Configuration block used to decide when to scale up or down. Possible values:
1378
+ :param pulumi.Input[Mapping[str, pulumi.Input[str]]] secret_environment_variables: The [secret environment variables](https://www.scaleway.com/en/docs/serverless-containers/concepts/#secrets) of the container.
1379
+ :param pulumi.Input[str] status: The container status.
1380
+ :param pulumi.Input[int] timeout: The maximum amount of time in seconds your container can spend processing a request before being stopped. Default to `300` seconds.
1381
+ """
1382
+ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
1383
+
1384
+ __props__ = _ContainerState.__new__(_ContainerState)
1385
+
1386
+ __props__.__dict__["cpu_limit"] = cpu_limit
1387
+ __props__.__dict__["cron_status"] = cron_status
1388
+ __props__.__dict__["deploy"] = deploy
1389
+ __props__.__dict__["description"] = description
1390
+ __props__.__dict__["domain_name"] = domain_name
1391
+ __props__.__dict__["environment_variables"] = environment_variables
1392
+ __props__.__dict__["error_message"] = error_message
1393
+ __props__.__dict__["health_checks"] = health_checks
1394
+ __props__.__dict__["http_option"] = http_option
1395
+ __props__.__dict__["local_storage_limit"] = local_storage_limit
1396
+ __props__.__dict__["max_concurrency"] = max_concurrency
1397
+ __props__.__dict__["max_scale"] = max_scale
1398
+ __props__.__dict__["memory_limit"] = memory_limit
1399
+ __props__.__dict__["min_scale"] = min_scale
1400
+ __props__.__dict__["name"] = name
1401
+ __props__.__dict__["namespace_id"] = namespace_id
1402
+ __props__.__dict__["port"] = port
1403
+ __props__.__dict__["privacy"] = privacy
1404
+ __props__.__dict__["protocol"] = protocol
1405
+ __props__.__dict__["region"] = region
1406
+ __props__.__dict__["registry_image"] = registry_image
1407
+ __props__.__dict__["registry_sha256"] = registry_sha256
1408
+ __props__.__dict__["sandbox"] = sandbox
1409
+ __props__.__dict__["scaling_options"] = scaling_options
1410
+ __props__.__dict__["secret_environment_variables"] = secret_environment_variables
1411
+ __props__.__dict__["status"] = status
1412
+ __props__.__dict__["timeout"] = timeout
1413
+ return Container(resource_name, opts=opts, __props__=__props__)
1414
+
1415
+ @property
1416
+ @pulumi.getter(name="cpuLimit")
1417
+ def cpu_limit(self) -> pulumi.Output[int]:
1418
+ """
1419
+ The amount of vCPU computing resources to allocate to each container.
1420
+ """
1421
+ return pulumi.get(self, "cpu_limit")
1422
+
1423
+ @property
1424
+ @pulumi.getter(name="cronStatus")
1425
+ def cron_status(self) -> pulumi.Output[str]:
1426
+ """
1427
+ The cron status of the container.
1428
+ """
1429
+ return pulumi.get(self, "cron_status")
1430
+
1431
+ @property
1432
+ @pulumi.getter
1433
+ def deploy(self) -> pulumi.Output[Optional[bool]]:
1434
+ """
1435
+ Boolean indicating whether the container is in a production environment.
1436
+ """
1437
+ return pulumi.get(self, "deploy")
1438
+
1439
+ @property
1440
+ @pulumi.getter
1441
+ def description(self) -> pulumi.Output[Optional[str]]:
1442
+ """
1443
+ The description of the container.
1444
+ """
1445
+ return pulumi.get(self, "description")
1446
+
1447
+ @property
1448
+ @pulumi.getter(name="domainName")
1449
+ def domain_name(self) -> pulumi.Output[str]:
1450
+ """
1451
+ The native domain name of the container
1452
+ """
1453
+ return pulumi.get(self, "domain_name")
1454
+
1455
+ @property
1456
+ @pulumi.getter(name="environmentVariables")
1457
+ def environment_variables(self) -> pulumi.Output[Mapping[str, str]]:
1458
+ """
1459
+ The [environment variables](https://www.scaleway.com/en/docs/serverless-containers/concepts/#environment-variables) of the container.
1460
+ """
1461
+ return pulumi.get(self, "environment_variables")
1462
+
1463
+ @property
1464
+ @pulumi.getter(name="errorMessage")
1465
+ def error_message(self) -> pulumi.Output[str]:
1466
+ """
1467
+ The error message of the container.
1468
+ """
1469
+ return pulumi.get(self, "error_message")
1470
+
1471
+ @property
1472
+ @pulumi.getter(name="healthChecks")
1473
+ def health_checks(self) -> pulumi.Output[Sequence['outputs.ContainerHealthCheck']]:
1474
+ """
1475
+ Health check configuration block of the container.
1476
+ """
1477
+ return pulumi.get(self, "health_checks")
1478
+
1479
+ @property
1480
+ @pulumi.getter(name="httpOption")
1481
+ def http_option(self) -> pulumi.Output[Optional[str]]:
1482
+ """
1483
+ Allows both HTTP and HTTPS (`enabled`) or redirect HTTP to HTTPS (`redirected`). Defaults to `enabled`.
1484
+ """
1485
+ return pulumi.get(self, "http_option")
1486
+
1487
+ @property
1488
+ @pulumi.getter(name="localStorageLimit")
1489
+ def local_storage_limit(self) -> pulumi.Output[int]:
1490
+ """
1491
+ Local storage limit of the container (in MB)
1492
+
1493
+ Note that if you want to use your own configuration, you must consult our configuration [restrictions](https://www.scaleway.com/en/docs/serverless-containers/reference-content/containers-limitations/#configuration-restrictions) section.
1494
+ """
1495
+ return pulumi.get(self, "local_storage_limit")
1496
+
1497
+ @property
1498
+ @pulumi.getter(name="maxConcurrency")
1499
+ @_utilities.deprecated("""Use scaling_option.concurrent_requests_threshold instead. This attribute will be removed.""")
1500
+ def max_concurrency(self) -> pulumi.Output[int]:
1501
+ """
1502
+ The maximum number of simultaneous requests your container can handle at the same time. Use `scaling_option.concurrent_requests_threshold` instead.
1503
+ """
1504
+ return pulumi.get(self, "max_concurrency")
1505
+
1506
+ @property
1507
+ @pulumi.getter(name="maxScale")
1508
+ def max_scale(self) -> pulumi.Output[int]:
1509
+ """
1510
+ The maximum number of instances this container can scale to.
1511
+ """
1512
+ return pulumi.get(self, "max_scale")
1513
+
1514
+ @property
1515
+ @pulumi.getter(name="memoryLimit")
1516
+ def memory_limit(self) -> pulumi.Output[int]:
1517
+ """
1518
+ The memory resources in MB to allocate to each container.
1519
+ """
1520
+ return pulumi.get(self, "memory_limit")
1521
+
1522
+ @property
1523
+ @pulumi.getter(name="minScale")
1524
+ def min_scale(self) -> pulumi.Output[int]:
1525
+ """
1526
+ The minimum number of container instances running continuously.
1527
+ """
1528
+ return pulumi.get(self, "min_scale")
1529
+
1530
+ @property
1531
+ @pulumi.getter
1532
+ def name(self) -> pulumi.Output[str]:
1533
+ """
1534
+ The unique name of the container name.
1535
+ """
1536
+ return pulumi.get(self, "name")
1537
+
1538
+ @property
1539
+ @pulumi.getter(name="namespaceId")
1540
+ def namespace_id(self) -> pulumi.Output[str]:
1541
+ """
1542
+ The Containers namespace ID of the container.
1543
+
1544
+ > **Important** Updating the `name` argument will recreate the container.
1545
+ """
1546
+ return pulumi.get(self, "namespace_id")
1547
+
1548
+ @property
1549
+ @pulumi.getter
1550
+ def port(self) -> pulumi.Output[int]:
1551
+ """
1552
+ The port to expose the container.
1553
+ """
1554
+ return pulumi.get(self, "port")
1555
+
1556
+ @property
1557
+ @pulumi.getter
1558
+ def privacy(self) -> pulumi.Output[Optional[str]]:
1559
+ """
1560
+ The privacy type defines the way to authenticate to your container. Please check our dedicated [section](https://www.scaleway.com/en/developers/api/serverless-containers/#protocol-9dd4c8).
1561
+ """
1562
+ return pulumi.get(self, "privacy")
1563
+
1564
+ @property
1565
+ @pulumi.getter
1566
+ def protocol(self) -> pulumi.Output[Optional[str]]:
1567
+ """
1568
+ The communication [protocol](https://www.scaleway.com/en/developers/api/serverless-containers/#path-containers-update-an-existing-container) `http1` or `h2c`. Defaults to `http1`.
1569
+ """
1570
+ return pulumi.get(self, "protocol")
1571
+
1572
+ @property
1573
+ @pulumi.getter
1574
+ def region(self) -> pulumi.Output[str]:
1575
+ """
1576
+ (Defaults to provider `region`) The region in which the container was created.
1577
+ """
1578
+ return pulumi.get(self, "region")
1579
+
1580
+ @property
1581
+ @pulumi.getter(name="registryImage")
1582
+ def registry_image(self) -> pulumi.Output[str]:
1583
+ """
1584
+ The registry image address (e.g., `rg.fr-par.scw.cloud/$NAMESPACE/$IMAGE`)
1585
+ """
1586
+ return pulumi.get(self, "registry_image")
1587
+
1588
+ @property
1589
+ @pulumi.getter(name="registrySha256")
1590
+ def registry_sha256(self) -> pulumi.Output[Optional[str]]:
1591
+ """
1592
+ The sha256 of your source registry image, changing it will re-apply the deployment. Can be any string.
1593
+ """
1594
+ return pulumi.get(self, "registry_sha256")
1595
+
1596
+ @property
1597
+ @pulumi.getter
1598
+ def sandbox(self) -> pulumi.Output[str]:
1599
+ """
1600
+ Execution environment of the container.
1601
+ """
1602
+ return pulumi.get(self, "sandbox")
1603
+
1604
+ @property
1605
+ @pulumi.getter(name="scalingOptions")
1606
+ def scaling_options(self) -> pulumi.Output[Sequence['outputs.ContainerScalingOption']]:
1607
+ """
1608
+ Configuration block used to decide when to scale up or down. Possible values:
1609
+ """
1610
+ return pulumi.get(self, "scaling_options")
1611
+
1612
+ @property
1613
+ @pulumi.getter(name="secretEnvironmentVariables")
1614
+ def secret_environment_variables(self) -> pulumi.Output[Optional[Mapping[str, str]]]:
1615
+ """
1616
+ The [secret environment variables](https://www.scaleway.com/en/docs/serverless-containers/concepts/#secrets) of the container.
1617
+ """
1618
+ return pulumi.get(self, "secret_environment_variables")
1619
+
1620
+ @property
1621
+ @pulumi.getter
1622
+ def status(self) -> pulumi.Output[str]:
1623
+ """
1624
+ The container status.
1625
+ """
1626
+ return pulumi.get(self, "status")
1627
+
1628
+ @property
1629
+ @pulumi.getter
1630
+ def timeout(self) -> pulumi.Output[int]:
1631
+ """
1632
+ The maximum amount of time in seconds your container can spend processing a request before being stopped. Default to `300` seconds.
1633
+ """
1634
+ return pulumi.get(self, "timeout")
1635
+