pulumiverse-scaleway 1.25.0a1742464679__py3-none-any.whl → 1.25.0a1742668904__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (461) hide show
  1. pulumiverse_scaleway/__init__.py +929 -0
  2. pulumiverse_scaleway/account/__init__.py +12 -0
  3. pulumiverse_scaleway/account/get_availability_zones.py +139 -0
  4. pulumiverse_scaleway/account/get_project.py +170 -0
  5. pulumiverse_scaleway/account/get_ssh_key.py +205 -0
  6. pulumiverse_scaleway/account/project.py +318 -0
  7. pulumiverse_scaleway/account/ssh_key.py +456 -0
  8. pulumiverse_scaleway/account_project.py +6 -0
  9. pulumiverse_scaleway/account_ssh_key.py +12 -6
  10. pulumiverse_scaleway/apple_silicon_server.py +8 -2
  11. pulumiverse_scaleway/applesilicon/__init__.py +10 -0
  12. pulumiverse_scaleway/applesilicon/_inputs.py +154 -0
  13. pulumiverse_scaleway/applesilicon/outputs.py +119 -0
  14. pulumiverse_scaleway/applesilicon/server.py +690 -0
  15. pulumiverse_scaleway/baremetal_server.py +64 -58
  16. pulumiverse_scaleway/billing/__init__.py +10 -0
  17. pulumiverse_scaleway/billing/get_consumptions.py +134 -0
  18. pulumiverse_scaleway/billing/get_invoices.py +154 -0
  19. pulumiverse_scaleway/billing/outputs.py +288 -0
  20. pulumiverse_scaleway/block/__init__.py +11 -0
  21. pulumiverse_scaleway/block/get_snapshot.py +174 -0
  22. pulumiverse_scaleway/block/get_volume.py +199 -0
  23. pulumiverse_scaleway/block/snapshot.py +403 -0
  24. pulumiverse_scaleway/block/volume.py +576 -0
  25. pulumiverse_scaleway/block_snapshot.py +12 -6
  26. pulumiverse_scaleway/block_volume.py +16 -10
  27. pulumiverse_scaleway/cockpit.py +10 -4
  28. pulumiverse_scaleway/cockpit_alert_manager.py +12 -6
  29. pulumiverse_scaleway/cockpit_grafana_user.py +12 -6
  30. pulumiverse_scaleway/cockpit_source.py +12 -6
  31. pulumiverse_scaleway/cockpit_token.py +16 -10
  32. pulumiverse_scaleway/container.py +16 -10
  33. pulumiverse_scaleway/container_cron.py +14 -8
  34. pulumiverse_scaleway/container_domain.py +24 -18
  35. pulumiverse_scaleway/container_namespace.py +10 -4
  36. pulumiverse_scaleway/container_token.py +32 -26
  37. pulumiverse_scaleway/container_trigger.py +12 -6
  38. pulumiverse_scaleway/containers/__init__.py +17 -0
  39. pulumiverse_scaleway/containers/_inputs.py +389 -0
  40. pulumiverse_scaleway/containers/container.py +1635 -0
  41. pulumiverse_scaleway/containers/cron.py +460 -0
  42. pulumiverse_scaleway/containers/domain.py +408 -0
  43. pulumiverse_scaleway/containers/get_container.py +562 -0
  44. pulumiverse_scaleway/containers/get_namespace.py +283 -0
  45. pulumiverse_scaleway/containers/namespace.py +638 -0
  46. pulumiverse_scaleway/containers/outputs.py +412 -0
  47. pulumiverse_scaleway/containers/token.py +454 -0
  48. pulumiverse_scaleway/containers/trigger.py +482 -0
  49. pulumiverse_scaleway/database.py +10 -4
  50. pulumiverse_scaleway/database_acl.py +10 -4
  51. pulumiverse_scaleway/database_backup.py +14 -8
  52. pulumiverse_scaleway/database_instance.py +24 -18
  53. pulumiverse_scaleway/database_privilege.py +16 -10
  54. pulumiverse_scaleway/database_read_replica.py +22 -16
  55. pulumiverse_scaleway/database_user.py +10 -4
  56. pulumiverse_scaleway/databases/__init__.py +23 -0
  57. pulumiverse_scaleway/databases/_inputs.py +822 -0
  58. pulumiverse_scaleway/databases/acl.py +334 -0
  59. pulumiverse_scaleway/databases/database.py +409 -0
  60. pulumiverse_scaleway/databases/database_backup.py +576 -0
  61. pulumiverse_scaleway/databases/get_acl.py +143 -0
  62. pulumiverse_scaleway/databases/get_database.py +187 -0
  63. pulumiverse_scaleway/databases/get_database_backup.py +253 -0
  64. pulumiverse_scaleway/databases/get_instance.py +415 -0
  65. pulumiverse_scaleway/databases/get_privilege.py +181 -0
  66. pulumiverse_scaleway/databases/instance.py +1696 -0
  67. pulumiverse_scaleway/databases/outputs.py +866 -0
  68. pulumiverse_scaleway/databases/privilege.py +424 -0
  69. pulumiverse_scaleway/databases/read_replica.py +530 -0
  70. pulumiverse_scaleway/databases/serverless_database.py +434 -0
  71. pulumiverse_scaleway/databases/snapshot.py +610 -0
  72. pulumiverse_scaleway/databases/user.py +448 -0
  73. pulumiverse_scaleway/domain/__init__.py +13 -0
  74. pulumiverse_scaleway/domain/_inputs.py +341 -0
  75. pulumiverse_scaleway/domain/get_record.py +340 -0
  76. pulumiverse_scaleway/domain/get_zone.py +201 -0
  77. pulumiverse_scaleway/domain/outputs.py +408 -0
  78. pulumiverse_scaleway/domain/record.py +1118 -0
  79. pulumiverse_scaleway/domain/zone.py +432 -0
  80. pulumiverse_scaleway/domain_record.py +36 -30
  81. pulumiverse_scaleway/domain_zone.py +6 -0
  82. pulumiverse_scaleway/elasticmetal/__init__.py +18 -0
  83. pulumiverse_scaleway/elasticmetal/_inputs.py +509 -0
  84. pulumiverse_scaleway/elasticmetal/get_ip.py +247 -0
  85. pulumiverse_scaleway/elasticmetal/get_ips.py +240 -0
  86. pulumiverse_scaleway/elasticmetal/get_offer.py +245 -0
  87. pulumiverse_scaleway/elasticmetal/get_option.py +168 -0
  88. pulumiverse_scaleway/elasticmetal/get_os.py +174 -0
  89. pulumiverse_scaleway/elasticmetal/get_server.py +422 -0
  90. pulumiverse_scaleway/elasticmetal/ip.py +704 -0
  91. pulumiverse_scaleway/elasticmetal/ip_mac_address.py +512 -0
  92. pulumiverse_scaleway/elasticmetal/outputs.py +974 -0
  93. pulumiverse_scaleway/elasticmetal/server.py +1591 -0
  94. pulumiverse_scaleway/flexible_ip.py +22 -16
  95. pulumiverse_scaleway/flexible_ip_mac_address.py +22 -16
  96. pulumiverse_scaleway/function.py +6 -0
  97. pulumiverse_scaleway/function_cron.py +16 -10
  98. pulumiverse_scaleway/function_domain.py +16 -10
  99. pulumiverse_scaleway/function_namespace.py +10 -4
  100. pulumiverse_scaleway/function_token.py +32 -26
  101. pulumiverse_scaleway/function_trigger.py +12 -6
  102. pulumiverse_scaleway/functions/__init__.py +17 -0
  103. pulumiverse_scaleway/functions/_inputs.py +211 -0
  104. pulumiverse_scaleway/functions/cron.py +464 -0
  105. pulumiverse_scaleway/functions/domain.py +372 -0
  106. pulumiverse_scaleway/functions/function.py +1105 -0
  107. pulumiverse_scaleway/functions/get_function.py +365 -0
  108. pulumiverse_scaleway/functions/get_namespace.py +238 -0
  109. pulumiverse_scaleway/functions/namespace.py +582 -0
  110. pulumiverse_scaleway/functions/outputs.py +168 -0
  111. pulumiverse_scaleway/functions/token.py +462 -0
  112. pulumiverse_scaleway/functions/trigger.py +482 -0
  113. pulumiverse_scaleway/get_account_project.py +6 -2
  114. pulumiverse_scaleway/get_account_ssh_key.py +6 -2
  115. pulumiverse_scaleway/get_availability_zones.py +8 -4
  116. pulumiverse_scaleway/get_baremetal_offer.py +4 -0
  117. pulumiverse_scaleway/get_baremetal_option.py +8 -4
  118. pulumiverse_scaleway/get_baremetal_os.py +8 -4
  119. pulumiverse_scaleway/get_baremetal_server.py +8 -4
  120. pulumiverse_scaleway/get_billing_consumptions.py +4 -0
  121. pulumiverse_scaleway/get_billing_invoices.py +4 -0
  122. pulumiverse_scaleway/get_block_snapshot.py +6 -2
  123. pulumiverse_scaleway/get_block_volume.py +6 -2
  124. pulumiverse_scaleway/get_cockpit.py +12 -8
  125. pulumiverse_scaleway/get_cockpit_plan.py +10 -6
  126. pulumiverse_scaleway/get_cockpit_source.py +8 -4
  127. pulumiverse_scaleway/get_container.py +16 -12
  128. pulumiverse_scaleway/get_container_namespace.py +10 -6
  129. pulumiverse_scaleway/get_database.py +6 -2
  130. pulumiverse_scaleway/get_database_acl.py +6 -2
  131. pulumiverse_scaleway/get_database_backup.py +10 -6
  132. pulumiverse_scaleway/get_database_instance.py +4 -0
  133. pulumiverse_scaleway/get_database_privilege.py +6 -2
  134. pulumiverse_scaleway/get_domain_record.py +10 -6
  135. pulumiverse_scaleway/get_domain_zone.py +4 -0
  136. pulumiverse_scaleway/get_flexible_ip.py +4 -0
  137. pulumiverse_scaleway/get_flexible_ips.py +16 -12
  138. pulumiverse_scaleway/get_function.py +6 -2
  139. pulumiverse_scaleway/get_function_namespace.py +6 -2
  140. pulumiverse_scaleway/get_iam_api_key.py +6 -2
  141. pulumiverse_scaleway/get_iam_application.py +8 -4
  142. pulumiverse_scaleway/get_iam_group.py +8 -4
  143. pulumiverse_scaleway/get_iam_ssh_key.py +4 -0
  144. pulumiverse_scaleway/get_iam_user.py +8 -4
  145. pulumiverse_scaleway/get_instance_image.py +4 -0
  146. pulumiverse_scaleway/get_instance_ip.py +4 -0
  147. pulumiverse_scaleway/get_instance_placement_group.py +4 -0
  148. pulumiverse_scaleway/get_instance_private_nic.py +10 -6
  149. pulumiverse_scaleway/get_instance_security_group.py +4 -0
  150. pulumiverse_scaleway/get_instance_server.py +4 -0
  151. pulumiverse_scaleway/get_instance_servers.py +4 -0
  152. pulumiverse_scaleway/get_instance_snapshot.py +8 -4
  153. pulumiverse_scaleway/get_instance_volume.py +4 -0
  154. pulumiverse_scaleway/get_iot_device.py +4 -0
  155. pulumiverse_scaleway/get_iot_hub.py +4 -0
  156. pulumiverse_scaleway/get_ipam_ip.py +18 -14
  157. pulumiverse_scaleway/get_ipam_ips.py +14 -10
  158. pulumiverse_scaleway/get_k8s_version.py +8 -4
  159. pulumiverse_scaleway/get_kubernetes_cluster.py +4 -0
  160. pulumiverse_scaleway/get_kubernetes_node_pool.py +4 -0
  161. pulumiverse_scaleway/get_lb_acls.py +8 -4
  162. pulumiverse_scaleway/get_lb_backend.py +18 -14
  163. pulumiverse_scaleway/get_lb_backends.py +8 -4
  164. pulumiverse_scaleway/get_lb_frontend.py +16 -12
  165. pulumiverse_scaleway/get_lb_frontends.py +8 -4
  166. pulumiverse_scaleway/get_lb_ips.py +4 -0
  167. pulumiverse_scaleway/get_lb_route.py +16 -12
  168. pulumiverse_scaleway/get_lb_routes.py +8 -4
  169. pulumiverse_scaleway/get_lbs.py +4 -0
  170. pulumiverse_scaleway/get_loadbalancer.py +8 -4
  171. pulumiverse_scaleway/get_loadbalancer_certificate.py +4 -0
  172. pulumiverse_scaleway/get_loadbalancer_ip.py +4 -0
  173. pulumiverse_scaleway/get_mnq_sns.py +8 -4
  174. pulumiverse_scaleway/get_mnq_sqs.py +8 -4
  175. pulumiverse_scaleway/get_mongo_db_instance.py +4 -0
  176. pulumiverse_scaleway/get_object_bucket.py +12 -8
  177. pulumiverse_scaleway/get_object_bucket_policy.py +8 -4
  178. pulumiverse_scaleway/get_redis_cluster.py +4 -0
  179. pulumiverse_scaleway/get_registry_image.py +4 -0
  180. pulumiverse_scaleway/get_registry_image_tag.py +4 -0
  181. pulumiverse_scaleway/get_registry_namespace.py +4 -0
  182. pulumiverse_scaleway/get_secret.py +12 -8
  183. pulumiverse_scaleway/get_secret_version.py +14 -10
  184. pulumiverse_scaleway/get_tem_domain.py +4 -0
  185. pulumiverse_scaleway/get_vpc.py +10 -6
  186. pulumiverse_scaleway/get_vpc_gateway_network.py +10 -6
  187. pulumiverse_scaleway/get_vpc_private_network.py +10 -6
  188. pulumiverse_scaleway/get_vpc_public_gateway.py +10 -6
  189. pulumiverse_scaleway/get_vpc_public_gateway_dhcp.py +8 -4
  190. pulumiverse_scaleway/get_vpc_public_gateway_dhcp_reservation.py +70 -66
  191. pulumiverse_scaleway/get_vpc_public_gateway_ip.py +8 -4
  192. pulumiverse_scaleway/get_vpc_public_pat_rule.py +26 -22
  193. pulumiverse_scaleway/get_vpc_routes.py +4 -0
  194. pulumiverse_scaleway/get_vpcs.py +4 -0
  195. pulumiverse_scaleway/get_web_host_offer.py +8 -4
  196. pulumiverse_scaleway/get_webhosting.py +8 -4
  197. pulumiverse_scaleway/hosting/__init__.py +12 -0
  198. pulumiverse_scaleway/hosting/_inputs.py +295 -0
  199. pulumiverse_scaleway/hosting/get_hosting.py +354 -0
  200. pulumiverse_scaleway/hosting/get_offer.py +229 -0
  201. pulumiverse_scaleway/hosting/hosting.py +870 -0
  202. pulumiverse_scaleway/hosting/outputs.py +626 -0
  203. pulumiverse_scaleway/iam/__init__.py +21 -0
  204. pulumiverse_scaleway/iam/_inputs.py +138 -0
  205. pulumiverse_scaleway/iam/api_key.py +622 -0
  206. pulumiverse_scaleway/iam/application.py +419 -0
  207. pulumiverse_scaleway/iam/get_api_key.py +210 -0
  208. pulumiverse_scaleway/iam/get_application.py +210 -0
  209. pulumiverse_scaleway/iam/get_group.py +236 -0
  210. pulumiverse_scaleway/iam/get_ssh_key.py +212 -0
  211. pulumiverse_scaleway/iam/get_user.py +177 -0
  212. pulumiverse_scaleway/iam/group.py +568 -0
  213. pulumiverse_scaleway/iam/group_membership.py +325 -0
  214. pulumiverse_scaleway/iam/outputs.py +111 -0
  215. pulumiverse_scaleway/iam/policy.py +775 -0
  216. pulumiverse_scaleway/iam/ssh_key.py +457 -0
  217. pulumiverse_scaleway/iam/user.py +515 -0
  218. pulumiverse_scaleway/iam_api_key.py +16 -10
  219. pulumiverse_scaleway/iam_application.py +8 -2
  220. pulumiverse_scaleway/iam_group.py +12 -6
  221. pulumiverse_scaleway/iam_group_membership.py +12 -6
  222. pulumiverse_scaleway/iam_policy.py +18 -12
  223. pulumiverse_scaleway/iam_ssh_key.py +8 -2
  224. pulumiverse_scaleway/iam_user.py +8 -2
  225. pulumiverse_scaleway/inference/__init__.py +10 -0
  226. pulumiverse_scaleway/inference/_inputs.py +209 -0
  227. pulumiverse_scaleway/inference/deployment.py +824 -0
  228. pulumiverse_scaleway/inference/outputs.py +169 -0
  229. pulumiverse_scaleway/inference_deployment.py +8 -2
  230. pulumiverse_scaleway/instance/__init__.py +29 -0
  231. pulumiverse_scaleway/instance/_inputs.py +1237 -0
  232. pulumiverse_scaleway/instance/get_image.py +305 -0
  233. pulumiverse_scaleway/instance/get_ip.py +204 -0
  234. pulumiverse_scaleway/instance/get_placement_group.py +212 -0
  235. pulumiverse_scaleway/instance/get_private_nic.py +226 -0
  236. pulumiverse_scaleway/instance/get_security_group.py +268 -0
  237. pulumiverse_scaleway/instance/get_server.py +488 -0
  238. pulumiverse_scaleway/instance/get_servers.py +187 -0
  239. pulumiverse_scaleway/instance/get_snapshot.py +248 -0
  240. pulumiverse_scaleway/instance/get_volume.py +226 -0
  241. pulumiverse_scaleway/instance/image.py +752 -0
  242. pulumiverse_scaleway/instance/ip.py +471 -0
  243. pulumiverse_scaleway/instance/ip_reverse_dns.py +310 -0
  244. pulumiverse_scaleway/instance/outputs.py +1533 -0
  245. pulumiverse_scaleway/instance/placement_group.py +481 -0
  246. pulumiverse_scaleway/instance/private_nic.py +557 -0
  247. pulumiverse_scaleway/instance/security_group.py +722 -0
  248. pulumiverse_scaleway/instance/security_group_rules.py +441 -0
  249. pulumiverse_scaleway/instance/server.py +1938 -0
  250. pulumiverse_scaleway/instance/snapshot.py +671 -0
  251. pulumiverse_scaleway/instance/user_data.py +437 -0
  252. pulumiverse_scaleway/instance/volume.py +584 -0
  253. pulumiverse_scaleway/instance_image.py +18 -12
  254. pulumiverse_scaleway/instance_ip.py +8 -2
  255. pulumiverse_scaleway/instance_ip_reverse_dns.py +12 -6
  256. pulumiverse_scaleway/instance_placement_group.py +8 -2
  257. pulumiverse_scaleway/instance_private_nic.py +24 -18
  258. pulumiverse_scaleway/instance_security_group.py +6 -0
  259. pulumiverse_scaleway/instance_security_group_rules.py +22 -16
  260. pulumiverse_scaleway/instance_server.py +74 -68
  261. pulumiverse_scaleway/instance_snapshot.py +22 -16
  262. pulumiverse_scaleway/instance_user_data.py +16 -10
  263. pulumiverse_scaleway/instance_volume.py +8 -2
  264. pulumiverse_scaleway/iot/__init__.py +15 -0
  265. pulumiverse_scaleway/iot/_inputs.py +539 -0
  266. pulumiverse_scaleway/iot/device.py +752 -0
  267. pulumiverse_scaleway/iot/get_device.py +257 -0
  268. pulumiverse_scaleway/iot/get_hub.py +322 -0
  269. pulumiverse_scaleway/iot/hub.py +898 -0
  270. pulumiverse_scaleway/iot/network.py +474 -0
  271. pulumiverse_scaleway/iot/outputs.py +465 -0
  272. pulumiverse_scaleway/iot/route.py +662 -0
  273. pulumiverse_scaleway/iot_device.py +14 -8
  274. pulumiverse_scaleway/iot_hub.py +8 -2
  275. pulumiverse_scaleway/iot_network.py +12 -6
  276. pulumiverse_scaleway/iot_route.py +32 -26
  277. pulumiverse_scaleway/ipam/__init__.py +13 -0
  278. pulumiverse_scaleway/ipam/_inputs.py +442 -0
  279. pulumiverse_scaleway/ipam/get_ip.py +419 -0
  280. pulumiverse_scaleway/ipam/get_ips.py +358 -0
  281. pulumiverse_scaleway/ipam/ip.py +759 -0
  282. pulumiverse_scaleway/ipam/ip_reverse_dns.py +320 -0
  283. pulumiverse_scaleway/ipam/outputs.py +481 -0
  284. pulumiverse_scaleway/ipam_ip.py +30 -24
  285. pulumiverse_scaleway/ipam_ip_reverse_dns.py +6 -0
  286. pulumiverse_scaleway/job/__init__.py +10 -0
  287. pulumiverse_scaleway/job/_inputs.py +73 -0
  288. pulumiverse_scaleway/job/definition.py +694 -0
  289. pulumiverse_scaleway/job/outputs.py +49 -0
  290. pulumiverse_scaleway/job_definition.py +8 -2
  291. pulumiverse_scaleway/kubernetes/__init__.py +14 -0
  292. pulumiverse_scaleway/kubernetes/_inputs.py +717 -0
  293. pulumiverse_scaleway/kubernetes/cluster.py +1540 -0
  294. pulumiverse_scaleway/kubernetes/get_cluster.py +417 -0
  295. pulumiverse_scaleway/kubernetes/get_pool.py +436 -0
  296. pulumiverse_scaleway/kubernetes/get_version.py +196 -0
  297. pulumiverse_scaleway/kubernetes/outputs.py +944 -0
  298. pulumiverse_scaleway/kubernetes/pool.py +1313 -0
  299. pulumiverse_scaleway/kubernetes_cluster.py +36 -30
  300. pulumiverse_scaleway/kubernetes_node_pool.py +6 -0
  301. pulumiverse_scaleway/loadbalancer.py +35 -29
  302. pulumiverse_scaleway/loadbalancer_acl.py +8 -2
  303. pulumiverse_scaleway/loadbalancer_backend.py +10 -4
  304. pulumiverse_scaleway/loadbalancer_certificate.py +6 -0
  305. pulumiverse_scaleway/loadbalancer_frontend.py +10 -4
  306. pulumiverse_scaleway/loadbalancer_ip.py +10 -4
  307. pulumiverse_scaleway/loadbalancer_route.py +26 -20
  308. pulumiverse_scaleway/loadbalancers/__init__.py +28 -0
  309. pulumiverse_scaleway/loadbalancers/_inputs.py +1103 -0
  310. pulumiverse_scaleway/loadbalancers/acl.py +522 -0
  311. pulumiverse_scaleway/loadbalancers/backend.py +1590 -0
  312. pulumiverse_scaleway/loadbalancers/certificate.py +462 -0
  313. pulumiverse_scaleway/loadbalancers/frontend.py +831 -0
  314. pulumiverse_scaleway/loadbalancers/get_acls.py +198 -0
  315. pulumiverse_scaleway/loadbalancers/get_backend.py +486 -0
  316. pulumiverse_scaleway/loadbalancers/get_backends.py +196 -0
  317. pulumiverse_scaleway/loadbalancers/get_certificate.py +230 -0
  318. pulumiverse_scaleway/loadbalancers/get_frontend.py +274 -0
  319. pulumiverse_scaleway/loadbalancers/get_frontends.py +196 -0
  320. pulumiverse_scaleway/loadbalancers/get_ip.py +228 -0
  321. pulumiverse_scaleway/loadbalancers/get_ips.py +198 -0
  322. pulumiverse_scaleway/loadbalancers/get_load_balancer.py +339 -0
  323. pulumiverse_scaleway/loadbalancers/get_load_balancers.py +187 -0
  324. pulumiverse_scaleway/loadbalancers/get_route.py +217 -0
  325. pulumiverse_scaleway/loadbalancers/get_routes.py +179 -0
  326. pulumiverse_scaleway/loadbalancers/ip.py +516 -0
  327. pulumiverse_scaleway/loadbalancers/load_balancer.py +1063 -0
  328. pulumiverse_scaleway/loadbalancers/outputs.py +2491 -0
  329. pulumiverse_scaleway/loadbalancers/route.py +525 -0
  330. pulumiverse_scaleway/mnq/__init__.py +20 -0
  331. pulumiverse_scaleway/mnq/_inputs.py +169 -0
  332. pulumiverse_scaleway/mnq/get_sns.py +150 -0
  333. pulumiverse_scaleway/mnq/get_sqs.py +150 -0
  334. pulumiverse_scaleway/mnq/nats_account.py +336 -0
  335. pulumiverse_scaleway/mnq/nats_credentials.py +332 -0
  336. pulumiverse_scaleway/mnq/outputs.py +149 -0
  337. pulumiverse_scaleway/mnq/sns.py +308 -0
  338. pulumiverse_scaleway/mnq/sns_credentials.py +415 -0
  339. pulumiverse_scaleway/mnq/sns_topic.py +661 -0
  340. pulumiverse_scaleway/mnq/sns_topic_subscription.py +701 -0
  341. pulumiverse_scaleway/mnq/sqs.py +306 -0
  342. pulumiverse_scaleway/mnq/sqs_credentials.py +415 -0
  343. pulumiverse_scaleway/mnq/sqs_queue.py +802 -0
  344. pulumiverse_scaleway/mnq_nats_account.py +8 -2
  345. pulumiverse_scaleway/mnq_nats_credentials.py +10 -4
  346. pulumiverse_scaleway/mnq_sns.py +12 -6
  347. pulumiverse_scaleway/mnq_sns_credentials.py +10 -4
  348. pulumiverse_scaleway/mnq_sns_topic.py +16 -10
  349. pulumiverse_scaleway/mnq_sns_topic_subscription.py +22 -16
  350. pulumiverse_scaleway/mnq_sqs.py +12 -6
  351. pulumiverse_scaleway/mnq_sqs_credentials.py +10 -4
  352. pulumiverse_scaleway/mnq_sqs_queue.py +16 -10
  353. pulumiverse_scaleway/mongo_db_instance.py +14 -8
  354. pulumiverse_scaleway/mongo_db_snapshot.py +8 -2
  355. pulumiverse_scaleway/mongodb/__init__.py +12 -0
  356. pulumiverse_scaleway/mongodb/_inputs.py +208 -0
  357. pulumiverse_scaleway/mongodb/get_instance.py +335 -0
  358. pulumiverse_scaleway/mongodb/instance.py +1000 -0
  359. pulumiverse_scaleway/mongodb/outputs.py +270 -0
  360. pulumiverse_scaleway/mongodb/snapshot.py +523 -0
  361. pulumiverse_scaleway/network/__init__.py +29 -0
  362. pulumiverse_scaleway/network/_inputs.py +383 -0
  363. pulumiverse_scaleway/network/gateway_network.py +868 -0
  364. pulumiverse_scaleway/network/get_gateway_network.py +287 -0
  365. pulumiverse_scaleway/network/get_private_network.py +282 -0
  366. pulumiverse_scaleway/network/get_public_gateway.py +304 -0
  367. pulumiverse_scaleway/network/get_public_gateway_dhcp.py +305 -0
  368. pulumiverse_scaleway/network/get_public_gateway_dhcp_reservation.py +382 -0
  369. pulumiverse_scaleway/network/get_public_gateway_ip.py +199 -0
  370. pulumiverse_scaleway/network/get_public_gateway_pat_rule.py +313 -0
  371. pulumiverse_scaleway/network/get_routes.py +208 -0
  372. pulumiverse_scaleway/network/get_vpc.py +246 -0
  373. pulumiverse_scaleway/network/get_vpcs.py +174 -0
  374. pulumiverse_scaleway/network/outputs.py +747 -0
  375. pulumiverse_scaleway/network/private_network.py +736 -0
  376. pulumiverse_scaleway/network/public_gateway.py +791 -0
  377. pulumiverse_scaleway/network/public_gateway_dhcp.py +949 -0
  378. pulumiverse_scaleway/network/public_gateway_dhcp_reservation.py +516 -0
  379. pulumiverse_scaleway/network/public_gateway_ip.py +459 -0
  380. pulumiverse_scaleway/network/public_gateway_ip_reverse_dns.py +308 -0
  381. pulumiverse_scaleway/network/public_gateway_pat_rule.py +593 -0
  382. pulumiverse_scaleway/network/route.py +579 -0
  383. pulumiverse_scaleway/network/vpc.py +538 -0
  384. pulumiverse_scaleway/object/__init__.py +17 -0
  385. pulumiverse_scaleway/object/_inputs.py +831 -0
  386. pulumiverse_scaleway/object/bucket.py +876 -0
  387. pulumiverse_scaleway/object/bucket_acl.py +598 -0
  388. pulumiverse_scaleway/object/bucket_lock_configuration.py +397 -0
  389. pulumiverse_scaleway/object/bucket_policy.py +675 -0
  390. pulumiverse_scaleway/object/bucket_website_configuration.py +536 -0
  391. pulumiverse_scaleway/object/get_bucket.py +290 -0
  392. pulumiverse_scaleway/object/get_bucket_policy.py +163 -0
  393. pulumiverse_scaleway/object/item.py +778 -0
  394. pulumiverse_scaleway/object/outputs.py +802 -0
  395. pulumiverse_scaleway/object_bucket.py +28 -22
  396. pulumiverse_scaleway/object_bucket_acl.py +14 -8
  397. pulumiverse_scaleway/object_bucket_lock_configuration.py +12 -6
  398. pulumiverse_scaleway/object_bucket_policy.py +46 -40
  399. pulumiverse_scaleway/object_bucket_website_configuration.py +18 -12
  400. pulumiverse_scaleway/object_item.py +8 -2
  401. pulumiverse_scaleway/observability/__init__.py +17 -0
  402. pulumiverse_scaleway/observability/_inputs.py +417 -0
  403. pulumiverse_scaleway/observability/alert_manager.py +403 -0
  404. pulumiverse_scaleway/observability/cockpit.py +325 -0
  405. pulumiverse_scaleway/observability/get_instance.py +205 -0
  406. pulumiverse_scaleway/observability/get_plan.py +125 -0
  407. pulumiverse_scaleway/observability/get_source.py +262 -0
  408. pulumiverse_scaleway/observability/grafana_user.py +364 -0
  409. pulumiverse_scaleway/observability/outputs.py +425 -0
  410. pulumiverse_scaleway/observability/source.py +569 -0
  411. pulumiverse_scaleway/observability/token.py +481 -0
  412. pulumiverse_scaleway/pulumi-plugin.json +1 -1
  413. pulumiverse_scaleway/rdb_snapshot.py +16 -10
  414. pulumiverse_scaleway/redis/__init__.py +11 -0
  415. pulumiverse_scaleway/redis/_inputs.py +330 -0
  416. pulumiverse_scaleway/redis/cluster.py +1203 -0
  417. pulumiverse_scaleway/redis/get_cluster.py +347 -0
  418. pulumiverse_scaleway/redis/outputs.py +356 -0
  419. pulumiverse_scaleway/redis_cluster.py +14 -8
  420. pulumiverse_scaleway/registry/__init__.py +11 -0
  421. pulumiverse_scaleway/registry/get_image.py +239 -0
  422. pulumiverse_scaleway/registry/get_image_tag.py +229 -0
  423. pulumiverse_scaleway/registry/get_namespace.py +199 -0
  424. pulumiverse_scaleway/registry/namespace.py +460 -0
  425. pulumiverse_scaleway/registry_namespace.py +8 -2
  426. pulumiverse_scaleway/sdb_database.py +10 -4
  427. pulumiverse_scaleway/secret.py +6 -0
  428. pulumiverse_scaleway/secret_version.py +12 -6
  429. pulumiverse_scaleway/secrets/__init__.py +13 -0
  430. pulumiverse_scaleway/secrets/_inputs.py +94 -0
  431. pulumiverse_scaleway/secrets/get_secret.py +338 -0
  432. pulumiverse_scaleway/secrets/get_version.py +340 -0
  433. pulumiverse_scaleway/secrets/outputs.py +120 -0
  434. pulumiverse_scaleway/secrets/secret.py +665 -0
  435. pulumiverse_scaleway/secrets/version.py +489 -0
  436. pulumiverse_scaleway/tem/__init__.py +13 -0
  437. pulumiverse_scaleway/tem/_inputs.py +135 -0
  438. pulumiverse_scaleway/tem/domain.py +1032 -0
  439. pulumiverse_scaleway/tem/domain_validation.py +305 -0
  440. pulumiverse_scaleway/tem/get_domain.py +378 -0
  441. pulumiverse_scaleway/tem/outputs.py +171 -0
  442. pulumiverse_scaleway/tem/webhook.py +642 -0
  443. pulumiverse_scaleway/tem_domain.py +20 -14
  444. pulumiverse_scaleway/tem_domain_validation.py +10 -4
  445. pulumiverse_scaleway/tem_webhook.py +28 -22
  446. pulumiverse_scaleway/vpc.py +10 -4
  447. pulumiverse_scaleway/vpc_gateway_network.py +40 -34
  448. pulumiverse_scaleway/vpc_private_network.py +10 -4
  449. pulumiverse_scaleway/vpc_public_gateway.py +8 -2
  450. pulumiverse_scaleway/vpc_public_gateway_dhcp.py +15 -9
  451. pulumiverse_scaleway/vpc_public_gateway_dhcp_reservation.py +32 -26
  452. pulumiverse_scaleway/vpc_public_gateway_ip.py +10 -4
  453. pulumiverse_scaleway/vpc_public_gateway_ip_reverse_dns.py +12 -6
  454. pulumiverse_scaleway/vpc_public_gateway_pat_rule.py +26 -20
  455. pulumiverse_scaleway/vpc_route.py +16 -10
  456. pulumiverse_scaleway/webhosting.py +10 -4
  457. {pulumiverse_scaleway-1.25.0a1742464679.dist-info → pulumiverse_scaleway-1.25.0a1742668904.dist-info}/METADATA +1 -1
  458. pulumiverse_scaleway-1.25.0a1742668904.dist-info/RECORD +470 -0
  459. {pulumiverse_scaleway-1.25.0a1742464679.dist-info → pulumiverse_scaleway-1.25.0a1742668904.dist-info}/WHEEL +1 -1
  460. pulumiverse_scaleway-1.25.0a1742464679.dist-info/RECORD +0 -206
  461. {pulumiverse_scaleway-1.25.0a1742464679.dist-info → pulumiverse_scaleway-1.25.0a1742668904.dist-info}/top_level.txt +0 -0
@@ -0,0 +1,525 @@
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
+
17
+ __all__ = ['RouteArgs', 'Route']
18
+
19
+ @pulumi.input_type
20
+ class RouteArgs:
21
+ def __init__(__self__, *,
22
+ backend_id: pulumi.Input[str],
23
+ frontend_id: pulumi.Input[str],
24
+ match_host_header: Optional[pulumi.Input[str]] = None,
25
+ match_sni: Optional[pulumi.Input[str]] = None):
26
+ """
27
+ The set of arguments for constructing a Route resource.
28
+ :param pulumi.Input[str] backend_id: The ID of the backend the route is associated with.
29
+ :param pulumi.Input[str] frontend_id: The ID of the frontend the route is associated with.
30
+ :param pulumi.Input[str] match_host_header: The HTTP host header to match. Value to match in the HTTP Host request header from an incoming connection.
31
+ Only one of `match_sni` and `match_host_header` should be specified.
32
+
33
+ > **Important:** This field should be set for routes on HTTP Load Balancers.
34
+ :param pulumi.Input[str] match_sni: The Server Name Indication (SNI) value to match. Value to match in the Server Name Indication TLS extension (SNI) field from an incoming connection made via an SSL/TLS transport layer.
35
+ Only one of `match_sni` and `match_host_header` should be specified.
36
+
37
+ > **Important:** This field should be set for routes on TCP Load Balancers.
38
+ """
39
+ pulumi.set(__self__, "backend_id", backend_id)
40
+ pulumi.set(__self__, "frontend_id", frontend_id)
41
+ if match_host_header is not None:
42
+ pulumi.set(__self__, "match_host_header", match_host_header)
43
+ if match_sni is not None:
44
+ pulumi.set(__self__, "match_sni", match_sni)
45
+
46
+ @property
47
+ @pulumi.getter(name="backendId")
48
+ def backend_id(self) -> pulumi.Input[str]:
49
+ """
50
+ The ID of the backend the route is associated with.
51
+ """
52
+ return pulumi.get(self, "backend_id")
53
+
54
+ @backend_id.setter
55
+ def backend_id(self, value: pulumi.Input[str]):
56
+ pulumi.set(self, "backend_id", value)
57
+
58
+ @property
59
+ @pulumi.getter(name="frontendId")
60
+ def frontend_id(self) -> pulumi.Input[str]:
61
+ """
62
+ The ID of the frontend the route is associated with.
63
+ """
64
+ return pulumi.get(self, "frontend_id")
65
+
66
+ @frontend_id.setter
67
+ def frontend_id(self, value: pulumi.Input[str]):
68
+ pulumi.set(self, "frontend_id", value)
69
+
70
+ @property
71
+ @pulumi.getter(name="matchHostHeader")
72
+ def match_host_header(self) -> Optional[pulumi.Input[str]]:
73
+ """
74
+ The HTTP host header to match. Value to match in the HTTP Host request header from an incoming connection.
75
+ Only one of `match_sni` and `match_host_header` should be specified.
76
+
77
+ > **Important:** This field should be set for routes on HTTP Load Balancers.
78
+ """
79
+ return pulumi.get(self, "match_host_header")
80
+
81
+ @match_host_header.setter
82
+ def match_host_header(self, value: Optional[pulumi.Input[str]]):
83
+ pulumi.set(self, "match_host_header", value)
84
+
85
+ @property
86
+ @pulumi.getter(name="matchSni")
87
+ def match_sni(self) -> Optional[pulumi.Input[str]]:
88
+ """
89
+ The Server Name Indication (SNI) value to match. Value to match in the Server Name Indication TLS extension (SNI) field from an incoming connection made via an SSL/TLS transport layer.
90
+ Only one of `match_sni` and `match_host_header` should be specified.
91
+
92
+ > **Important:** This field should be set for routes on TCP Load Balancers.
93
+ """
94
+ return pulumi.get(self, "match_sni")
95
+
96
+ @match_sni.setter
97
+ def match_sni(self, value: Optional[pulumi.Input[str]]):
98
+ pulumi.set(self, "match_sni", value)
99
+
100
+
101
+ @pulumi.input_type
102
+ class _RouteState:
103
+ def __init__(__self__, *,
104
+ backend_id: Optional[pulumi.Input[str]] = None,
105
+ created_at: Optional[pulumi.Input[str]] = None,
106
+ frontend_id: Optional[pulumi.Input[str]] = None,
107
+ match_host_header: Optional[pulumi.Input[str]] = None,
108
+ match_sni: Optional[pulumi.Input[str]] = None,
109
+ updated_at: Optional[pulumi.Input[str]] = None):
110
+ """
111
+ Input properties used for looking up and filtering Route resources.
112
+ :param pulumi.Input[str] backend_id: The ID of the backend the route is associated with.
113
+ :param pulumi.Input[str] created_at: The date on which the route was created.
114
+ :param pulumi.Input[str] frontend_id: The ID of the frontend the route is associated with.
115
+ :param pulumi.Input[str] match_host_header: The HTTP host header to match. Value to match in the HTTP Host request header from an incoming connection.
116
+ Only one of `match_sni` and `match_host_header` should be specified.
117
+
118
+ > **Important:** This field should be set for routes on HTTP Load Balancers.
119
+ :param pulumi.Input[str] match_sni: The Server Name Indication (SNI) value to match. Value to match in the Server Name Indication TLS extension (SNI) field from an incoming connection made via an SSL/TLS transport layer.
120
+ Only one of `match_sni` and `match_host_header` should be specified.
121
+
122
+ > **Important:** This field should be set for routes on TCP Load Balancers.
123
+ :param pulumi.Input[str] updated_at: The date on which the route was last updated.
124
+ """
125
+ if backend_id is not None:
126
+ pulumi.set(__self__, "backend_id", backend_id)
127
+ if created_at is not None:
128
+ pulumi.set(__self__, "created_at", created_at)
129
+ if frontend_id is not None:
130
+ pulumi.set(__self__, "frontend_id", frontend_id)
131
+ if match_host_header is not None:
132
+ pulumi.set(__self__, "match_host_header", match_host_header)
133
+ if match_sni is not None:
134
+ pulumi.set(__self__, "match_sni", match_sni)
135
+ if updated_at is not None:
136
+ pulumi.set(__self__, "updated_at", updated_at)
137
+
138
+ @property
139
+ @pulumi.getter(name="backendId")
140
+ def backend_id(self) -> Optional[pulumi.Input[str]]:
141
+ """
142
+ The ID of the backend the route is associated with.
143
+ """
144
+ return pulumi.get(self, "backend_id")
145
+
146
+ @backend_id.setter
147
+ def backend_id(self, value: Optional[pulumi.Input[str]]):
148
+ pulumi.set(self, "backend_id", value)
149
+
150
+ @property
151
+ @pulumi.getter(name="createdAt")
152
+ def created_at(self) -> Optional[pulumi.Input[str]]:
153
+ """
154
+ The date on which the route was created.
155
+ """
156
+ return pulumi.get(self, "created_at")
157
+
158
+ @created_at.setter
159
+ def created_at(self, value: Optional[pulumi.Input[str]]):
160
+ pulumi.set(self, "created_at", value)
161
+
162
+ @property
163
+ @pulumi.getter(name="frontendId")
164
+ def frontend_id(self) -> Optional[pulumi.Input[str]]:
165
+ """
166
+ The ID of the frontend the route is associated with.
167
+ """
168
+ return pulumi.get(self, "frontend_id")
169
+
170
+ @frontend_id.setter
171
+ def frontend_id(self, value: Optional[pulumi.Input[str]]):
172
+ pulumi.set(self, "frontend_id", value)
173
+
174
+ @property
175
+ @pulumi.getter(name="matchHostHeader")
176
+ def match_host_header(self) -> Optional[pulumi.Input[str]]:
177
+ """
178
+ The HTTP host header to match. Value to match in the HTTP Host request header from an incoming connection.
179
+ Only one of `match_sni` and `match_host_header` should be specified.
180
+
181
+ > **Important:** This field should be set for routes on HTTP Load Balancers.
182
+ """
183
+ return pulumi.get(self, "match_host_header")
184
+
185
+ @match_host_header.setter
186
+ def match_host_header(self, value: Optional[pulumi.Input[str]]):
187
+ pulumi.set(self, "match_host_header", value)
188
+
189
+ @property
190
+ @pulumi.getter(name="matchSni")
191
+ def match_sni(self) -> Optional[pulumi.Input[str]]:
192
+ """
193
+ The Server Name Indication (SNI) value to match. Value to match in the Server Name Indication TLS extension (SNI) field from an incoming connection made via an SSL/TLS transport layer.
194
+ Only one of `match_sni` and `match_host_header` should be specified.
195
+
196
+ > **Important:** This field should be set for routes on TCP Load Balancers.
197
+ """
198
+ return pulumi.get(self, "match_sni")
199
+
200
+ @match_sni.setter
201
+ def match_sni(self, value: Optional[pulumi.Input[str]]):
202
+ pulumi.set(self, "match_sni", value)
203
+
204
+ @property
205
+ @pulumi.getter(name="updatedAt")
206
+ def updated_at(self) -> Optional[pulumi.Input[str]]:
207
+ """
208
+ The date on which the route was last updated.
209
+ """
210
+ return pulumi.get(self, "updated_at")
211
+
212
+ @updated_at.setter
213
+ def updated_at(self, value: Optional[pulumi.Input[str]]):
214
+ pulumi.set(self, "updated_at", value)
215
+
216
+
217
+ class Route(pulumi.CustomResource):
218
+ @overload
219
+ def __init__(__self__,
220
+ resource_name: str,
221
+ opts: Optional[pulumi.ResourceOptions] = None,
222
+ backend_id: Optional[pulumi.Input[str]] = None,
223
+ frontend_id: Optional[pulumi.Input[str]] = None,
224
+ match_host_header: Optional[pulumi.Input[str]] = None,
225
+ match_sni: Optional[pulumi.Input[str]] = None,
226
+ __props__=None):
227
+ """
228
+ Creates and manages Scaleway Load Balancer routes.
229
+
230
+ For more information, see the [main documentation](https://www.scaleway.com/en/docs/load-balancer/how-to/create-manage-routes/) or [API documentation](https://www.scaleway.com/en/developers/api/load-balancer/zoned-api/#path-route).
231
+
232
+ ## Example Usage
233
+
234
+ ### With SNI for direction to TCP backends
235
+
236
+ ```python
237
+ import pulumi
238
+ import pulumiverse_scaleway as scaleway
239
+
240
+ ip01 = scaleway.loadbalancers.Ip("ip01")
241
+ lb01 = scaleway.loadbalancers.LoadBalancer("lb01",
242
+ ip_id=ip01.id,
243
+ name="test-lb",
244
+ type="lb-s")
245
+ bkd01 = scaleway.loadbalancers.Backend("bkd01",
246
+ lb_id=lb01.id,
247
+ forward_protocol="tcp",
248
+ forward_port=80,
249
+ proxy_protocol="none")
250
+ frt01 = scaleway.loadbalancers.Frontend("frt01",
251
+ lb_id=lb01.id,
252
+ backend_id=bkd01.id,
253
+ inbound_port=80)
254
+ rt01 = scaleway.loadbalancers.Route("rt01",
255
+ frontend_id=frt01.id,
256
+ backend_id=bkd01.id,
257
+ match_sni="sni.scaleway.com")
258
+ ```
259
+
260
+ ### With host-header for direction to HTTP backends
261
+
262
+ ```python
263
+ import pulumi
264
+ import pulumiverse_scaleway as scaleway
265
+
266
+ ip01 = scaleway.loadbalancers.Ip("ip01")
267
+ lb01 = scaleway.loadbalancers.LoadBalancer("lb01",
268
+ ip_id=ip01.id,
269
+ name="test-lb",
270
+ type="lb-s")
271
+ bkd01 = scaleway.loadbalancers.Backend("bkd01",
272
+ lb_id=lb01.id,
273
+ forward_protocol="http",
274
+ forward_port=80,
275
+ proxy_protocol="none")
276
+ frt01 = scaleway.loadbalancers.Frontend("frt01",
277
+ lb_id=lb01.id,
278
+ backend_id=bkd01.id,
279
+ inbound_port=80)
280
+ rt01 = scaleway.loadbalancers.Route("rt01",
281
+ frontend_id=frt01.id,
282
+ backend_id=bkd01.id,
283
+ match_host_header="host.scaleway.com")
284
+ ```
285
+
286
+ ## Import
287
+
288
+ Load Balancer frontends can be imported using `{zone}/{id}`, e.g.
289
+
290
+ bash
291
+
292
+ ```sh
293
+ $ pulumi import scaleway:loadbalancers/route:Route main fr-par-1/11111111-1111-1111-1111-111111111111
294
+ ```
295
+
296
+ :param str resource_name: The name of the resource.
297
+ :param pulumi.ResourceOptions opts: Options for the resource.
298
+ :param pulumi.Input[str] backend_id: The ID of the backend the route is associated with.
299
+ :param pulumi.Input[str] frontend_id: The ID of the frontend the route is associated with.
300
+ :param pulumi.Input[str] match_host_header: The HTTP host header to match. Value to match in the HTTP Host request header from an incoming connection.
301
+ Only one of `match_sni` and `match_host_header` should be specified.
302
+
303
+ > **Important:** This field should be set for routes on HTTP Load Balancers.
304
+ :param pulumi.Input[str] match_sni: The Server Name Indication (SNI) value to match. Value to match in the Server Name Indication TLS extension (SNI) field from an incoming connection made via an SSL/TLS transport layer.
305
+ Only one of `match_sni` and `match_host_header` should be specified.
306
+
307
+ > **Important:** This field should be set for routes on TCP Load Balancers.
308
+ """
309
+ ...
310
+ @overload
311
+ def __init__(__self__,
312
+ resource_name: str,
313
+ args: RouteArgs,
314
+ opts: Optional[pulumi.ResourceOptions] = None):
315
+ """
316
+ Creates and manages Scaleway Load Balancer routes.
317
+
318
+ For more information, see the [main documentation](https://www.scaleway.com/en/docs/load-balancer/how-to/create-manage-routes/) or [API documentation](https://www.scaleway.com/en/developers/api/load-balancer/zoned-api/#path-route).
319
+
320
+ ## Example Usage
321
+
322
+ ### With SNI for direction to TCP backends
323
+
324
+ ```python
325
+ import pulumi
326
+ import pulumiverse_scaleway as scaleway
327
+
328
+ ip01 = scaleway.loadbalancers.Ip("ip01")
329
+ lb01 = scaleway.loadbalancers.LoadBalancer("lb01",
330
+ ip_id=ip01.id,
331
+ name="test-lb",
332
+ type="lb-s")
333
+ bkd01 = scaleway.loadbalancers.Backend("bkd01",
334
+ lb_id=lb01.id,
335
+ forward_protocol="tcp",
336
+ forward_port=80,
337
+ proxy_protocol="none")
338
+ frt01 = scaleway.loadbalancers.Frontend("frt01",
339
+ lb_id=lb01.id,
340
+ backend_id=bkd01.id,
341
+ inbound_port=80)
342
+ rt01 = scaleway.loadbalancers.Route("rt01",
343
+ frontend_id=frt01.id,
344
+ backend_id=bkd01.id,
345
+ match_sni="sni.scaleway.com")
346
+ ```
347
+
348
+ ### With host-header for direction to HTTP backends
349
+
350
+ ```python
351
+ import pulumi
352
+ import pulumiverse_scaleway as scaleway
353
+
354
+ ip01 = scaleway.loadbalancers.Ip("ip01")
355
+ lb01 = scaleway.loadbalancers.LoadBalancer("lb01",
356
+ ip_id=ip01.id,
357
+ name="test-lb",
358
+ type="lb-s")
359
+ bkd01 = scaleway.loadbalancers.Backend("bkd01",
360
+ lb_id=lb01.id,
361
+ forward_protocol="http",
362
+ forward_port=80,
363
+ proxy_protocol="none")
364
+ frt01 = scaleway.loadbalancers.Frontend("frt01",
365
+ lb_id=lb01.id,
366
+ backend_id=bkd01.id,
367
+ inbound_port=80)
368
+ rt01 = scaleway.loadbalancers.Route("rt01",
369
+ frontend_id=frt01.id,
370
+ backend_id=bkd01.id,
371
+ match_host_header="host.scaleway.com")
372
+ ```
373
+
374
+ ## Import
375
+
376
+ Load Balancer frontends can be imported using `{zone}/{id}`, e.g.
377
+
378
+ bash
379
+
380
+ ```sh
381
+ $ pulumi import scaleway:loadbalancers/route:Route main fr-par-1/11111111-1111-1111-1111-111111111111
382
+ ```
383
+
384
+ :param str resource_name: The name of the resource.
385
+ :param RouteArgs args: The arguments to use to populate this resource's properties.
386
+ :param pulumi.ResourceOptions opts: Options for the resource.
387
+ """
388
+ ...
389
+ def __init__(__self__, resource_name: str, *args, **kwargs):
390
+ resource_args, opts = _utilities.get_resource_args_opts(RouteArgs, pulumi.ResourceOptions, *args, **kwargs)
391
+ if resource_args is not None:
392
+ __self__._internal_init(resource_name, opts, **resource_args.__dict__)
393
+ else:
394
+ __self__._internal_init(resource_name, *args, **kwargs)
395
+
396
+ def _internal_init(__self__,
397
+ resource_name: str,
398
+ opts: Optional[pulumi.ResourceOptions] = None,
399
+ backend_id: Optional[pulumi.Input[str]] = None,
400
+ frontend_id: Optional[pulumi.Input[str]] = None,
401
+ match_host_header: Optional[pulumi.Input[str]] = None,
402
+ match_sni: Optional[pulumi.Input[str]] = None,
403
+ __props__=None):
404
+ opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts)
405
+ if not isinstance(opts, pulumi.ResourceOptions):
406
+ raise TypeError('Expected resource options to be a ResourceOptions instance')
407
+ if opts.id is None:
408
+ if __props__ is not None:
409
+ raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource')
410
+ __props__ = RouteArgs.__new__(RouteArgs)
411
+
412
+ if backend_id is None and not opts.urn:
413
+ raise TypeError("Missing required property 'backend_id'")
414
+ __props__.__dict__["backend_id"] = backend_id
415
+ if frontend_id is None and not opts.urn:
416
+ raise TypeError("Missing required property 'frontend_id'")
417
+ __props__.__dict__["frontend_id"] = frontend_id
418
+ __props__.__dict__["match_host_header"] = match_host_header
419
+ __props__.__dict__["match_sni"] = match_sni
420
+ __props__.__dict__["created_at"] = None
421
+ __props__.__dict__["updated_at"] = None
422
+ alias_opts = pulumi.ResourceOptions(aliases=[pulumi.Alias(type_="scaleway:index/loadbalancerRoute:LoadbalancerRoute")])
423
+ opts = pulumi.ResourceOptions.merge(opts, alias_opts)
424
+ super(Route, __self__).__init__(
425
+ 'scaleway:loadbalancers/route:Route',
426
+ resource_name,
427
+ __props__,
428
+ opts)
429
+
430
+ @staticmethod
431
+ def get(resource_name: str,
432
+ id: pulumi.Input[str],
433
+ opts: Optional[pulumi.ResourceOptions] = None,
434
+ backend_id: Optional[pulumi.Input[str]] = None,
435
+ created_at: Optional[pulumi.Input[str]] = None,
436
+ frontend_id: Optional[pulumi.Input[str]] = None,
437
+ match_host_header: Optional[pulumi.Input[str]] = None,
438
+ match_sni: Optional[pulumi.Input[str]] = None,
439
+ updated_at: Optional[pulumi.Input[str]] = None) -> 'Route':
440
+ """
441
+ Get an existing Route resource's state with the given name, id, and optional extra
442
+ properties used to qualify the lookup.
443
+
444
+ :param str resource_name: The unique name of the resulting resource.
445
+ :param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
446
+ :param pulumi.ResourceOptions opts: Options for the resource.
447
+ :param pulumi.Input[str] backend_id: The ID of the backend the route is associated with.
448
+ :param pulumi.Input[str] created_at: The date on which the route was created.
449
+ :param pulumi.Input[str] frontend_id: The ID of the frontend the route is associated with.
450
+ :param pulumi.Input[str] match_host_header: The HTTP host header to match. Value to match in the HTTP Host request header from an incoming connection.
451
+ Only one of `match_sni` and `match_host_header` should be specified.
452
+
453
+ > **Important:** This field should be set for routes on HTTP Load Balancers.
454
+ :param pulumi.Input[str] match_sni: The Server Name Indication (SNI) value to match. Value to match in the Server Name Indication TLS extension (SNI) field from an incoming connection made via an SSL/TLS transport layer.
455
+ Only one of `match_sni` and `match_host_header` should be specified.
456
+
457
+ > **Important:** This field should be set for routes on TCP Load Balancers.
458
+ :param pulumi.Input[str] updated_at: The date on which the route was last updated.
459
+ """
460
+ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
461
+
462
+ __props__ = _RouteState.__new__(_RouteState)
463
+
464
+ __props__.__dict__["backend_id"] = backend_id
465
+ __props__.__dict__["created_at"] = created_at
466
+ __props__.__dict__["frontend_id"] = frontend_id
467
+ __props__.__dict__["match_host_header"] = match_host_header
468
+ __props__.__dict__["match_sni"] = match_sni
469
+ __props__.__dict__["updated_at"] = updated_at
470
+ return Route(resource_name, opts=opts, __props__=__props__)
471
+
472
+ @property
473
+ @pulumi.getter(name="backendId")
474
+ def backend_id(self) -> pulumi.Output[str]:
475
+ """
476
+ The ID of the backend the route is associated with.
477
+ """
478
+ return pulumi.get(self, "backend_id")
479
+
480
+ @property
481
+ @pulumi.getter(name="createdAt")
482
+ def created_at(self) -> pulumi.Output[str]:
483
+ """
484
+ The date on which the route was created.
485
+ """
486
+ return pulumi.get(self, "created_at")
487
+
488
+ @property
489
+ @pulumi.getter(name="frontendId")
490
+ def frontend_id(self) -> pulumi.Output[str]:
491
+ """
492
+ The ID of the frontend the route is associated with.
493
+ """
494
+ return pulumi.get(self, "frontend_id")
495
+
496
+ @property
497
+ @pulumi.getter(name="matchHostHeader")
498
+ def match_host_header(self) -> pulumi.Output[Optional[str]]:
499
+ """
500
+ The HTTP host header to match. Value to match in the HTTP Host request header from an incoming connection.
501
+ Only one of `match_sni` and `match_host_header` should be specified.
502
+
503
+ > **Important:** This field should be set for routes on HTTP Load Balancers.
504
+ """
505
+ return pulumi.get(self, "match_host_header")
506
+
507
+ @property
508
+ @pulumi.getter(name="matchSni")
509
+ def match_sni(self) -> pulumi.Output[Optional[str]]:
510
+ """
511
+ The Server Name Indication (SNI) value to match. Value to match in the Server Name Indication TLS extension (SNI) field from an incoming connection made via an SSL/TLS transport layer.
512
+ Only one of `match_sni` and `match_host_header` should be specified.
513
+
514
+ > **Important:** This field should be set for routes on TCP Load Balancers.
515
+ """
516
+ return pulumi.get(self, "match_sni")
517
+
518
+ @property
519
+ @pulumi.getter(name="updatedAt")
520
+ def updated_at(self) -> pulumi.Output[str]:
521
+ """
522
+ The date on which the route was last updated.
523
+ """
524
+ return pulumi.get(self, "updated_at")
525
+
@@ -0,0 +1,20 @@
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
+ from .. import _utilities
6
+ import typing
7
+ # Export this package's modules as members:
8
+ from .get_sns import *
9
+ from .get_sqs import *
10
+ from .nats_account import *
11
+ from .nats_credentials import *
12
+ from .sns import *
13
+ from .sns_credentials import *
14
+ from .sns_topic import *
15
+ from .sns_topic_subscription import *
16
+ from .sqs import *
17
+ from .sqs_credentials import *
18
+ from .sqs_queue import *
19
+ from ._inputs import *
20
+ from . import outputs