pulumiverse-scaleway 1.27.0a1744869119__py3-none-any.whl → 1.39.0a1764841480__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (515) hide show
  1. pulumiverse_scaleway/__init__.py +109 -2
  2. pulumiverse_scaleway/_inputs.py +3936 -2603
  3. pulumiverse_scaleway/_utilities.py +1 -1
  4. pulumiverse_scaleway/account/__init__.py +4 -1
  5. pulumiverse_scaleway/account/get_availability_zones.py +12 -12
  6. pulumiverse_scaleway/account/get_project.py +28 -28
  7. pulumiverse_scaleway/account/get_projects.py +241 -0
  8. pulumiverse_scaleway/account/get_ssh_key.py +34 -34
  9. pulumiverse_scaleway/account/outputs.py +95 -0
  10. pulumiverse_scaleway/account/project.py +72 -71
  11. pulumiverse_scaleway/account/ssh_key.py +107 -106
  12. pulumiverse_scaleway/account_project.py +72 -71
  13. pulumiverse_scaleway/account_ssh_key.py +107 -106
  14. pulumiverse_scaleway/apple_silicon_server.py +334 -201
  15. pulumiverse_scaleway/applesilicon/__init__.py +2 -1
  16. pulumiverse_scaleway/applesilicon/_inputs.py +105 -51
  17. pulumiverse_scaleway/applesilicon/outputs.py +65 -33
  18. pulumiverse_scaleway/applesilicon/server.py +334 -201
  19. pulumiverse_scaleway/audittrail/__init__.py +10 -0
  20. pulumiverse_scaleway/audittrail/get_event.py +410 -0
  21. pulumiverse_scaleway/audittrail/outputs.py +234 -0
  22. pulumiverse_scaleway/autoscaling/__init__.py +13 -0
  23. pulumiverse_scaleway/autoscaling/_inputs.py +558 -0
  24. pulumiverse_scaleway/autoscaling/instance_group.py +807 -0
  25. pulumiverse_scaleway/autoscaling/instance_policy.py +634 -0
  26. pulumiverse_scaleway/autoscaling/instance_template.py +878 -0
  27. pulumiverse_scaleway/autoscaling/outputs.py +438 -0
  28. pulumiverse_scaleway/baremetal_server.py +622 -524
  29. pulumiverse_scaleway/billing/__init__.py +2 -1
  30. pulumiverse_scaleway/billing/get_consumptions.py +19 -15
  31. pulumiverse_scaleway/billing/get_invoices.py +25 -25
  32. pulumiverse_scaleway/billing/outputs.py +96 -96
  33. pulumiverse_scaleway/block/__init__.py +4 -1
  34. pulumiverse_scaleway/block/_inputs.py +125 -0
  35. pulumiverse_scaleway/block/get_snapshot.py +60 -37
  36. pulumiverse_scaleway/block/get_volume.py +38 -38
  37. pulumiverse_scaleway/block/outputs.py +139 -0
  38. pulumiverse_scaleway/block/snapshot.py +272 -98
  39. pulumiverse_scaleway/block/volume.py +145 -144
  40. pulumiverse_scaleway/block_snapshot.py +272 -98
  41. pulumiverse_scaleway/block_volume.py +145 -144
  42. pulumiverse_scaleway/cockpit.py +71 -49
  43. pulumiverse_scaleway/cockpit_alert_manager.py +66 -65
  44. pulumiverse_scaleway/cockpit_grafana_user.py +72 -113
  45. pulumiverse_scaleway/cockpit_source.py +142 -141
  46. pulumiverse_scaleway/cockpit_token.py +84 -83
  47. pulumiverse_scaleway/config/__init__.py +2 -1
  48. pulumiverse_scaleway/config/__init__.pyi +2 -2
  49. pulumiverse_scaleway/config/vars.py +11 -11
  50. pulumiverse_scaleway/container.py +653 -424
  51. pulumiverse_scaleway/container_cron.py +97 -96
  52. pulumiverse_scaleway/container_domain.py +63 -62
  53. pulumiverse_scaleway/container_namespace.py +251 -172
  54. pulumiverse_scaleway/container_token.py +97 -96
  55. pulumiverse_scaleway/container_trigger.py +77 -76
  56. pulumiverse_scaleway/containers/__init__.py +2 -1
  57. pulumiverse_scaleway/containers/_inputs.py +87 -87
  58. pulumiverse_scaleway/containers/container.py +653 -424
  59. pulumiverse_scaleway/containers/cron.py +97 -96
  60. pulumiverse_scaleway/containers/domain.py +63 -62
  61. pulumiverse_scaleway/containers/get_container.py +117 -73
  62. pulumiverse_scaleway/containers/get_namespace.py +56 -45
  63. pulumiverse_scaleway/containers/namespace.py +251 -172
  64. pulumiverse_scaleway/containers/outputs.py +84 -84
  65. pulumiverse_scaleway/containers/token.py +97 -96
  66. pulumiverse_scaleway/containers/trigger.py +77 -76
  67. pulumiverse_scaleway/database.py +81 -80
  68. pulumiverse_scaleway/database_acl.py +148 -39
  69. pulumiverse_scaleway/database_backup.py +124 -123
  70. pulumiverse_scaleway/database_instance.py +531 -436
  71. pulumiverse_scaleway/database_privilege.py +88 -87
  72. pulumiverse_scaleway/database_read_replica.py +60 -59
  73. pulumiverse_scaleway/database_user.py +171 -98
  74. pulumiverse_scaleway/databases/__init__.py +2 -1
  75. pulumiverse_scaleway/databases/_inputs.py +364 -216
  76. pulumiverse_scaleway/databases/acl.py +148 -39
  77. pulumiverse_scaleway/databases/database.py +81 -80
  78. pulumiverse_scaleway/databases/database_backup.py +124 -123
  79. pulumiverse_scaleway/databases/get_acl.py +17 -17
  80. pulumiverse_scaleway/databases/get_database.py +26 -26
  81. pulumiverse_scaleway/databases/get_database_backup.py +46 -46
  82. pulumiverse_scaleway/databases/get_instance.py +95 -73
  83. pulumiverse_scaleway/databases/get_privilege.py +30 -30
  84. pulumiverse_scaleway/databases/instance.py +531 -436
  85. pulumiverse_scaleway/databases/outputs.py +419 -232
  86. pulumiverse_scaleway/databases/privilege.py +88 -87
  87. pulumiverse_scaleway/databases/read_replica.py +60 -59
  88. pulumiverse_scaleway/databases/serverless_database.py +97 -96
  89. pulumiverse_scaleway/databases/snapshot.py +127 -126
  90. pulumiverse_scaleway/databases/user.py +171 -98
  91. pulumiverse_scaleway/datawarehouse/__init__.py +13 -0
  92. pulumiverse_scaleway/datawarehouse/_inputs.py +149 -0
  93. pulumiverse_scaleway/datawarehouse/database.py +338 -0
  94. pulumiverse_scaleway/datawarehouse/deployment.py +821 -0
  95. pulumiverse_scaleway/datawarehouse/outputs.py +113 -0
  96. pulumiverse_scaleway/datawarehouse/user.py +451 -0
  97. pulumiverse_scaleway/domain/__init__.py +2 -1
  98. pulumiverse_scaleway/domain/_inputs.py +661 -661
  99. pulumiverse_scaleway/domain/get_record.py +53 -64
  100. pulumiverse_scaleway/domain/get_zone.py +36 -30
  101. pulumiverse_scaleway/domain/outputs.py +501 -501
  102. pulumiverse_scaleway/domain/record.py +156 -202
  103. pulumiverse_scaleway/domain/registration.py +123 -122
  104. pulumiverse_scaleway/domain/zone.py +108 -107
  105. pulumiverse_scaleway/domain_record.py +156 -202
  106. pulumiverse_scaleway/domain_zone.py +108 -107
  107. pulumiverse_scaleway/edge_services_backend_stage.py +61 -60
  108. pulumiverse_scaleway/edge_services_cache_stage.py +283 -111
  109. pulumiverse_scaleway/edge_services_dns_stage.py +169 -140
  110. pulumiverse_scaleway/edge_services_head_stage.py +37 -36
  111. pulumiverse_scaleway/edge_services_pipeline.py +125 -82
  112. pulumiverse_scaleway/edge_services_plan.py +37 -36
  113. pulumiverse_scaleway/edge_services_route_stage.py +75 -74
  114. pulumiverse_scaleway/edge_services_tls_stage.py +219 -124
  115. pulumiverse_scaleway/edge_services_waf_stage.py +106 -105
  116. pulumiverse_scaleway/elasticmetal/__init__.py +3 -1
  117. pulumiverse_scaleway/elasticmetal/_inputs.py +203 -129
  118. pulumiverse_scaleway/elasticmetal/get_ip.py +70 -54
  119. pulumiverse_scaleway/elasticmetal/get_ips.py +31 -31
  120. pulumiverse_scaleway/elasticmetal/get_offer.py +43 -41
  121. pulumiverse_scaleway/elasticmetal/get_option.py +24 -24
  122. pulumiverse_scaleway/elasticmetal/get_os.py +28 -28
  123. pulumiverse_scaleway/elasticmetal/get_partition_schema.py +215 -0
  124. pulumiverse_scaleway/elasticmetal/get_server.py +101 -68
  125. pulumiverse_scaleway/elasticmetal/ip.py +170 -169
  126. pulumiverse_scaleway/elasticmetal/ip_mac_address.py +107 -106
  127. pulumiverse_scaleway/elasticmetal/outputs.py +379 -287
  128. pulumiverse_scaleway/elasticmetal/server.py +622 -524
  129. pulumiverse_scaleway/file_filesystem.py +555 -0
  130. pulumiverse_scaleway/flexible_ip.py +170 -169
  131. pulumiverse_scaleway/flexible_ip_mac_address.py +107 -106
  132. pulumiverse_scaleway/function.py +457 -348
  133. pulumiverse_scaleway/function_cron.py +97 -96
  134. pulumiverse_scaleway/function_domain.py +63 -62
  135. pulumiverse_scaleway/function_namespace.py +234 -155
  136. pulumiverse_scaleway/function_token.py +97 -96
  137. pulumiverse_scaleway/function_trigger.py +77 -76
  138. pulumiverse_scaleway/functions/__init__.py +2 -1
  139. pulumiverse_scaleway/functions/_inputs.py +50 -50
  140. pulumiverse_scaleway/functions/cron.py +97 -96
  141. pulumiverse_scaleway/functions/domain.py +63 -62
  142. pulumiverse_scaleway/functions/function.py +457 -348
  143. pulumiverse_scaleway/functions/get_function.py +93 -71
  144. pulumiverse_scaleway/functions/get_namespace.py +54 -43
  145. pulumiverse_scaleway/functions/namespace.py +234 -155
  146. pulumiverse_scaleway/functions/outputs.py +34 -34
  147. pulumiverse_scaleway/functions/token.py +97 -96
  148. pulumiverse_scaleway/functions/trigger.py +77 -76
  149. pulumiverse_scaleway/get_account_project.py +28 -28
  150. pulumiverse_scaleway/get_account_ssh_key.py +34 -34
  151. pulumiverse_scaleway/get_availability_zones.py +12 -12
  152. pulumiverse_scaleway/get_baremetal_offer.py +43 -41
  153. pulumiverse_scaleway/get_baremetal_option.py +24 -24
  154. pulumiverse_scaleway/get_baremetal_os.py +28 -28
  155. pulumiverse_scaleway/get_baremetal_server.py +101 -68
  156. pulumiverse_scaleway/get_billing_consumptions.py +19 -15
  157. pulumiverse_scaleway/get_billing_invoices.py +25 -25
  158. pulumiverse_scaleway/get_block_snapshot.py +60 -37
  159. pulumiverse_scaleway/get_block_volume.py +38 -38
  160. pulumiverse_scaleway/get_cockpit.py +16 -16
  161. pulumiverse_scaleway/get_cockpit_source.py +88 -45
  162. pulumiverse_scaleway/get_config.py +24 -24
  163. pulumiverse_scaleway/get_container.py +117 -73
  164. pulumiverse_scaleway/get_container_namespace.py +56 -45
  165. pulumiverse_scaleway/get_database.py +26 -26
  166. pulumiverse_scaleway/get_database_acl.py +17 -17
  167. pulumiverse_scaleway/get_database_backup.py +46 -46
  168. pulumiverse_scaleway/get_database_instance.py +95 -73
  169. pulumiverse_scaleway/get_database_privilege.py +30 -30
  170. pulumiverse_scaleway/get_domain_record.py +53 -64
  171. pulumiverse_scaleway/get_domain_zone.py +36 -30
  172. pulumiverse_scaleway/get_flexible_ip.py +70 -54
  173. pulumiverse_scaleway/get_flexible_ips.py +31 -31
  174. pulumiverse_scaleway/get_function.py +93 -71
  175. pulumiverse_scaleway/get_function_namespace.py +54 -43
  176. pulumiverse_scaleway/get_iam_api_key.py +28 -28
  177. pulumiverse_scaleway/get_iam_application.py +32 -32
  178. pulumiverse_scaleway/get_iam_group.py +36 -36
  179. pulumiverse_scaleway/get_iam_ssh_key.py +34 -34
  180. pulumiverse_scaleway/get_iam_user.py +30 -30
  181. pulumiverse_scaleway/get_instance_image.py +58 -58
  182. pulumiverse_scaleway/get_instance_ip.py +42 -30
  183. pulumiverse_scaleway/get_instance_placement_group.py +38 -38
  184. pulumiverse_scaleway/get_instance_private_nic.py +53 -41
  185. pulumiverse_scaleway/get_instance_security_group.py +46 -46
  186. pulumiverse_scaleway/get_instance_server.py +108 -145
  187. pulumiverse_scaleway/get_instance_servers.py +31 -31
  188. pulumiverse_scaleway/get_instance_snapshot.py +41 -41
  189. pulumiverse_scaleway/get_instance_volume.py +42 -42
  190. pulumiverse_scaleway/get_iot_device.py +46 -46
  191. pulumiverse_scaleway/get_iot_hub.py +60 -60
  192. pulumiverse_scaleway/get_ipam_ip.py +65 -65
  193. pulumiverse_scaleway/get_ipam_ips.py +56 -56
  194. pulumiverse_scaleway/get_k8s_version.py +34 -23
  195. pulumiverse_scaleway/get_kubernetes_cluster.py +98 -65
  196. pulumiverse_scaleway/get_kubernetes_node_pool.py +86 -75
  197. pulumiverse_scaleway/get_lb_acls.py +29 -29
  198. pulumiverse_scaleway/get_lb_backend.py +75 -75
  199. pulumiverse_scaleway/get_lb_backends.py +29 -29
  200. pulumiverse_scaleway/get_lb_frontend.py +76 -43
  201. pulumiverse_scaleway/get_lb_frontends.py +29 -29
  202. pulumiverse_scaleway/get_lb_ips.py +37 -37
  203. pulumiverse_scaleway/get_lb_route.py +36 -25
  204. pulumiverse_scaleway/get_lb_routes.py +23 -23
  205. pulumiverse_scaleway/get_lbs.py +31 -31
  206. pulumiverse_scaleway/get_loadbalancer.py +78 -56
  207. pulumiverse_scaleway/get_loadbalancer_certificate.py +96 -36
  208. pulumiverse_scaleway/get_loadbalancer_ip.py +40 -40
  209. pulumiverse_scaleway/get_marketplace_image.py +28 -28
  210. pulumiverse_scaleway/get_mnq_sns.py +18 -18
  211. pulumiverse_scaleway/get_mnq_sqs.py +18 -18
  212. pulumiverse_scaleway/get_mongo_db_instance.py +110 -55
  213. pulumiverse_scaleway/get_object_bucket.py +35 -35
  214. pulumiverse_scaleway/get_object_bucket_policy.py +22 -22
  215. pulumiverse_scaleway/get_redis_cluster.py +65 -54
  216. pulumiverse_scaleway/get_registry_image.py +48 -48
  217. pulumiverse_scaleway/get_registry_image_tag.py +44 -44
  218. pulumiverse_scaleway/get_registry_namespace.py +36 -36
  219. pulumiverse_scaleway/get_secret.py +58 -58
  220. pulumiverse_scaleway/get_secret_version.py +46 -46
  221. pulumiverse_scaleway/get_tem_domain.py +103 -70
  222. pulumiverse_scaleway/get_vpc.py +58 -47
  223. pulumiverse_scaleway/get_vpc_gateway_network.py +55 -44
  224. pulumiverse_scaleway/get_vpc_private_network.py +58 -47
  225. pulumiverse_scaleway/get_vpc_public_gateway.py +56 -56
  226. pulumiverse_scaleway/get_vpc_public_gateway_dhcp.py +44 -44
  227. pulumiverse_scaleway/get_vpc_public_gateway_dhcp_reservation.py +44 -44
  228. pulumiverse_scaleway/get_vpc_public_gateway_ip.py +24 -24
  229. pulumiverse_scaleway/get_vpc_public_pat_rule.py +32 -32
  230. pulumiverse_scaleway/get_vpc_routes.py +47 -47
  231. pulumiverse_scaleway/get_vpcs.py +31 -31
  232. pulumiverse_scaleway/get_web_host_offer.py +34 -34
  233. pulumiverse_scaleway/get_webhosting.py +58 -58
  234. pulumiverse_scaleway/hosting/__init__.py +2 -1
  235. pulumiverse_scaleway/hosting/_inputs.py +117 -75
  236. pulumiverse_scaleway/hosting/get_hosting.py +58 -58
  237. pulumiverse_scaleway/hosting/get_offer.py +34 -34
  238. pulumiverse_scaleway/hosting/hosting.py +213 -212
  239. pulumiverse_scaleway/hosting/outputs.py +276 -192
  240. pulumiverse_scaleway/iam/__init__.py +3 -1
  241. pulumiverse_scaleway/iam/_inputs.py +26 -26
  242. pulumiverse_scaleway/iam/api_key.py +142 -141
  243. pulumiverse_scaleway/iam/application.py +98 -97
  244. pulumiverse_scaleway/iam/get_api_key.py +28 -28
  245. pulumiverse_scaleway/iam/get_application.py +32 -32
  246. pulumiverse_scaleway/iam/get_group.py +36 -36
  247. pulumiverse_scaleway/iam/get_policy.py +293 -0
  248. pulumiverse_scaleway/iam/get_ssh_key.py +34 -34
  249. pulumiverse_scaleway/iam/get_user.py +30 -30
  250. pulumiverse_scaleway/iam/group.py +140 -139
  251. pulumiverse_scaleway/iam/group_membership.py +54 -53
  252. pulumiverse_scaleway/iam/outputs.py +70 -18
  253. pulumiverse_scaleway/iam/policy.py +169 -168
  254. pulumiverse_scaleway/iam/ssh_key.py +107 -106
  255. pulumiverse_scaleway/iam/user.py +598 -134
  256. pulumiverse_scaleway/iam_api_key.py +142 -141
  257. pulumiverse_scaleway/iam_application.py +98 -97
  258. pulumiverse_scaleway/iam_group.py +140 -139
  259. pulumiverse_scaleway/iam_group_membership.py +54 -53
  260. pulumiverse_scaleway/iam_policy.py +169 -168
  261. pulumiverse_scaleway/iam_ssh_key.py +107 -106
  262. pulumiverse_scaleway/iam_user.py +598 -134
  263. pulumiverse_scaleway/inference/__init__.py +4 -1
  264. pulumiverse_scaleway/inference/_inputs.py +232 -50
  265. pulumiverse_scaleway/inference/deployment.py +319 -220
  266. pulumiverse_scaleway/inference/get_model.py +299 -0
  267. pulumiverse_scaleway/inference/model.py +684 -0
  268. pulumiverse_scaleway/inference/outputs.py +250 -34
  269. pulumiverse_scaleway/inference_deployment.py +319 -220
  270. pulumiverse_scaleway/instance/__init__.py +3 -1
  271. pulumiverse_scaleway/instance/_inputs.py +650 -437
  272. pulumiverse_scaleway/instance/get_image.py +58 -58
  273. pulumiverse_scaleway/instance/get_ip.py +42 -30
  274. pulumiverse_scaleway/instance/get_placement_group.py +38 -38
  275. pulumiverse_scaleway/instance/get_private_nic.py +53 -41
  276. pulumiverse_scaleway/instance/get_security_group.py +46 -46
  277. pulumiverse_scaleway/instance/get_server.py +108 -145
  278. pulumiverse_scaleway/instance/get_server_type.py +271 -0
  279. pulumiverse_scaleway/instance/get_servers.py +31 -31
  280. pulumiverse_scaleway/instance/get_snapshot.py +41 -41
  281. pulumiverse_scaleway/instance/get_volume.py +42 -42
  282. pulumiverse_scaleway/instance/image.py +260 -205
  283. pulumiverse_scaleway/instance/ip.py +116 -115
  284. pulumiverse_scaleway/instance/ip_reverse_dns.py +54 -53
  285. pulumiverse_scaleway/instance/outputs.py +981 -548
  286. pulumiverse_scaleway/instance/placement_group.py +123 -122
  287. pulumiverse_scaleway/instance/private_nic.py +163 -113
  288. pulumiverse_scaleway/instance/security_group.py +188 -187
  289. pulumiverse_scaleway/instance/security_group_rules.py +42 -41
  290. pulumiverse_scaleway/instance/server.py +590 -562
  291. pulumiverse_scaleway/instance/snapshot.py +150 -157
  292. pulumiverse_scaleway/instance/user_data.py +75 -74
  293. pulumiverse_scaleway/instance/volume.py +174 -159
  294. pulumiverse_scaleway/instance_image.py +260 -205
  295. pulumiverse_scaleway/instance_ip.py +116 -115
  296. pulumiverse_scaleway/instance_ip_reverse_dns.py +54 -53
  297. pulumiverse_scaleway/instance_placement_group.py +123 -122
  298. pulumiverse_scaleway/instance_private_nic.py +163 -113
  299. pulumiverse_scaleway/instance_security_group.py +188 -187
  300. pulumiverse_scaleway/instance_security_group_rules.py +42 -41
  301. pulumiverse_scaleway/instance_server.py +590 -562
  302. pulumiverse_scaleway/instance_snapshot.py +150 -157
  303. pulumiverse_scaleway/instance_user_data.py +75 -74
  304. pulumiverse_scaleway/instance_volume.py +174 -159
  305. pulumiverse_scaleway/iot/__init__.py +2 -1
  306. pulumiverse_scaleway/iot/_inputs.py +119 -119
  307. pulumiverse_scaleway/iot/device.py +156 -193
  308. pulumiverse_scaleway/iot/get_device.py +46 -46
  309. pulumiverse_scaleway/iot/get_hub.py +60 -60
  310. pulumiverse_scaleway/iot/hub.py +259 -258
  311. pulumiverse_scaleway/iot/network.py +115 -114
  312. pulumiverse_scaleway/iot/outputs.py +107 -107
  313. pulumiverse_scaleway/iot/route.py +109 -108
  314. pulumiverse_scaleway/iot_device.py +156 -193
  315. pulumiverse_scaleway/iot_hub.py +259 -258
  316. pulumiverse_scaleway/iot_network.py +115 -114
  317. pulumiverse_scaleway/iot_route.py +109 -108
  318. pulumiverse_scaleway/ipam/__init__.py +2 -1
  319. pulumiverse_scaleway/ipam/_inputs.py +108 -108
  320. pulumiverse_scaleway/ipam/get_ip.py +65 -65
  321. pulumiverse_scaleway/ipam/get_ips.py +56 -56
  322. pulumiverse_scaleway/ipam/ip.py +160 -131
  323. pulumiverse_scaleway/ipam/ip_reverse_dns.py +141 -70
  324. pulumiverse_scaleway/ipam/outputs.py +122 -122
  325. pulumiverse_scaleway/ipam_ip.py +160 -131
  326. pulumiverse_scaleway/ipam_ip_reverse_dns.py +141 -70
  327. pulumiverse_scaleway/job/__init__.py +2 -1
  328. pulumiverse_scaleway/job/_inputs.py +127 -14
  329. pulumiverse_scaleway/job/definition.py +283 -175
  330. pulumiverse_scaleway/job/outputs.py +98 -10
  331. pulumiverse_scaleway/job_definition.py +283 -175
  332. pulumiverse_scaleway/key_manager_key.py +939 -0
  333. pulumiverse_scaleway/kubernetes/__init__.py +3 -1
  334. pulumiverse_scaleway/kubernetes/_inputs.py +388 -185
  335. pulumiverse_scaleway/kubernetes/acl.py +447 -0
  336. pulumiverse_scaleway/kubernetes/cluster.py +594 -307
  337. pulumiverse_scaleway/kubernetes/get_cluster.py +98 -65
  338. pulumiverse_scaleway/kubernetes/get_pool.py +86 -75
  339. pulumiverse_scaleway/kubernetes/get_version.py +34 -23
  340. pulumiverse_scaleway/kubernetes/outputs.py +444 -250
  341. pulumiverse_scaleway/kubernetes/pool.py +427 -365
  342. pulumiverse_scaleway/kubernetes_cluster.py +594 -307
  343. pulumiverse_scaleway/kubernetes_node_pool.py +427 -365
  344. pulumiverse_scaleway/loadbalancer.py +329 -246
  345. pulumiverse_scaleway/loadbalancer_acl.py +102 -101
  346. pulumiverse_scaleway/loadbalancer_backend.py +534 -487
  347. pulumiverse_scaleway/loadbalancer_certificate.py +97 -96
  348. pulumiverse_scaleway/loadbalancer_frontend.py +271 -167
  349. pulumiverse_scaleway/loadbalancer_ip.py +124 -123
  350. pulumiverse_scaleway/loadbalancer_route.py +244 -119
  351. pulumiverse_scaleway/loadbalancers/__init__.py +3 -1
  352. pulumiverse_scaleway/loadbalancers/_inputs.py +367 -273
  353. pulumiverse_scaleway/loadbalancers/acl.py +102 -101
  354. pulumiverse_scaleway/loadbalancers/backend.py +534 -487
  355. pulumiverse_scaleway/loadbalancers/certificate.py +97 -96
  356. pulumiverse_scaleway/loadbalancers/frontend.py +271 -167
  357. pulumiverse_scaleway/loadbalancers/get_acls.py +29 -29
  358. pulumiverse_scaleway/loadbalancers/get_backend.py +75 -75
  359. pulumiverse_scaleway/loadbalancers/get_backends.py +29 -29
  360. pulumiverse_scaleway/loadbalancers/get_certificate.py +96 -36
  361. pulumiverse_scaleway/loadbalancers/get_frontend.py +76 -43
  362. pulumiverse_scaleway/loadbalancers/get_frontends.py +29 -29
  363. pulumiverse_scaleway/loadbalancers/get_ip.py +40 -40
  364. pulumiverse_scaleway/loadbalancers/get_ips.py +37 -37
  365. pulumiverse_scaleway/loadbalancers/get_load_balancer.py +78 -56
  366. pulumiverse_scaleway/loadbalancers/get_load_balancers.py +31 -31
  367. pulumiverse_scaleway/loadbalancers/get_route.py +36 -25
  368. pulumiverse_scaleway/loadbalancers/get_routes.py +23 -23
  369. pulumiverse_scaleway/loadbalancers/ip.py +124 -123
  370. pulumiverse_scaleway/loadbalancers/load_balancer.py +329 -246
  371. pulumiverse_scaleway/loadbalancers/outputs.py +870 -716
  372. pulumiverse_scaleway/loadbalancers/private_network.py +505 -0
  373. pulumiverse_scaleway/loadbalancers/route.py +244 -119
  374. pulumiverse_scaleway/mnq/__init__.py +2 -1
  375. pulumiverse_scaleway/mnq/_inputs.py +90 -38
  376. pulumiverse_scaleway/mnq/get_sns.py +18 -18
  377. pulumiverse_scaleway/mnq/get_sqs.py +18 -18
  378. pulumiverse_scaleway/mnq/nats_account.py +63 -62
  379. pulumiverse_scaleway/mnq/nats_credentials.py +63 -62
  380. pulumiverse_scaleway/mnq/outputs.py +73 -26
  381. pulumiverse_scaleway/mnq/sns.py +46 -45
  382. pulumiverse_scaleway/mnq/sns_credentials.py +82 -81
  383. pulumiverse_scaleway/mnq/sns_topic.py +174 -173
  384. pulumiverse_scaleway/mnq/sns_topic_subscription.py +182 -181
  385. pulumiverse_scaleway/mnq/sqs.py +46 -45
  386. pulumiverse_scaleway/mnq/sqs_credentials.py +82 -81
  387. pulumiverse_scaleway/mnq/sqs_queue.py +392 -232
  388. pulumiverse_scaleway/mnq_nats_account.py +63 -62
  389. pulumiverse_scaleway/mnq_nats_credentials.py +63 -62
  390. pulumiverse_scaleway/mnq_sns.py +46 -45
  391. pulumiverse_scaleway/mnq_sns_credentials.py +82 -81
  392. pulumiverse_scaleway/mnq_sns_topic.py +174 -173
  393. pulumiverse_scaleway/mnq_sns_topic_subscription.py +182 -181
  394. pulumiverse_scaleway/mnq_sqs.py +46 -45
  395. pulumiverse_scaleway/mnq_sqs_credentials.py +82 -81
  396. pulumiverse_scaleway/mnq_sqs_queue.py +392 -232
  397. pulumiverse_scaleway/mongo_db_instance.py +569 -268
  398. pulumiverse_scaleway/mongo_db_snapshot.py +127 -126
  399. pulumiverse_scaleway/mongodb/__init__.py +3 -1
  400. pulumiverse_scaleway/mongodb/_inputs.py +178 -51
  401. pulumiverse_scaleway/mongodb/get_instance.py +110 -55
  402. pulumiverse_scaleway/mongodb/instance.py +569 -268
  403. pulumiverse_scaleway/mongodb/outputs.py +192 -68
  404. pulumiverse_scaleway/mongodb/snapshot.py +127 -126
  405. pulumiverse_scaleway/mongodb/user.py +507 -0
  406. pulumiverse_scaleway/network/__init__.py +2 -1
  407. pulumiverse_scaleway/network/_inputs.py +209 -155
  408. pulumiverse_scaleway/network/acl.py +100 -101
  409. pulumiverse_scaleway/network/gateway_network.py +228 -180
  410. pulumiverse_scaleway/network/get_gateway_network.py +55 -44
  411. pulumiverse_scaleway/network/get_private_network.py +58 -47
  412. pulumiverse_scaleway/network/get_public_gateway.py +56 -56
  413. pulumiverse_scaleway/network/get_public_gateway_dhcp.py +44 -44
  414. pulumiverse_scaleway/network/get_public_gateway_dhcp_reservation.py +44 -44
  415. pulumiverse_scaleway/network/get_public_gateway_ip.py +24 -24
  416. pulumiverse_scaleway/network/get_public_gateway_pat_rule.py +32 -32
  417. pulumiverse_scaleway/network/get_routes.py +47 -47
  418. pulumiverse_scaleway/network/get_vpc.py +58 -47
  419. pulumiverse_scaleway/network/get_vpcs.py +31 -31
  420. pulumiverse_scaleway/network/outputs.py +338 -270
  421. pulumiverse_scaleway/network/private_network.py +203 -155
  422. pulumiverse_scaleway/network/public_gateway.py +261 -260
  423. pulumiverse_scaleway/network/public_gateway_dhcp.py +285 -284
  424. pulumiverse_scaleway/network/public_gateway_dhcp_reservation.py +107 -106
  425. pulumiverse_scaleway/network/public_gateway_ip.py +107 -106
  426. pulumiverse_scaleway/network/public_gateway_ip_reverse_dns.py +54 -53
  427. pulumiverse_scaleway/network/public_gateway_pat_rule.py +132 -131
  428. pulumiverse_scaleway/network/route.py +230 -141
  429. pulumiverse_scaleway/network/vpc.py +172 -124
  430. pulumiverse_scaleway/object/__init__.py +3 -1
  431. pulumiverse_scaleway/object/_inputs.py +202 -166
  432. pulumiverse_scaleway/object/bucket.py +162 -148
  433. pulumiverse_scaleway/object/bucket_acl.py +97 -94
  434. pulumiverse_scaleway/object/bucket_lock_configuration.py +57 -56
  435. pulumiverse_scaleway/object/bucket_policy.py +71 -134
  436. pulumiverse_scaleway/object/bucket_website_configuration.py +104 -85
  437. pulumiverse_scaleway/object/get.py +290 -0
  438. pulumiverse_scaleway/object/get_bucket.py +35 -35
  439. pulumiverse_scaleway/object/get_bucket_policy.py +22 -22
  440. pulumiverse_scaleway/object/item.py +301 -223
  441. pulumiverse_scaleway/object/outputs.py +210 -166
  442. pulumiverse_scaleway/object_bucket.py +162 -148
  443. pulumiverse_scaleway/object_bucket_acl.py +97 -94
  444. pulumiverse_scaleway/object_bucket_lock_configuration.py +57 -56
  445. pulumiverse_scaleway/object_bucket_policy.py +71 -134
  446. pulumiverse_scaleway/object_bucket_website_configuration.py +104 -85
  447. pulumiverse_scaleway/object_item.py +301 -223
  448. pulumiverse_scaleway/observability/__init__.py +4 -2
  449. pulumiverse_scaleway/observability/_inputs.py +106 -106
  450. pulumiverse_scaleway/observability/alert_manager.py +66 -65
  451. pulumiverse_scaleway/observability/cockpit.py +71 -49
  452. pulumiverse_scaleway/observability/get_grafana.py +103 -0
  453. pulumiverse_scaleway/observability/get_instance.py +16 -16
  454. pulumiverse_scaleway/observability/get_source.py +88 -45
  455. pulumiverse_scaleway/observability/get_sources.py +375 -0
  456. pulumiverse_scaleway/observability/grafana_user.py +72 -113
  457. pulumiverse_scaleway/observability/outputs.py +241 -101
  458. pulumiverse_scaleway/observability/source.py +142 -141
  459. pulumiverse_scaleway/observability/token.py +84 -83
  460. pulumiverse_scaleway/outputs.py +5235 -3665
  461. pulumiverse_scaleway/provider.py +107 -82
  462. pulumiverse_scaleway/pulumi-plugin.json +1 -1
  463. pulumiverse_scaleway/rdb_snapshot.py +127 -126
  464. pulumiverse_scaleway/redis/__init__.py +2 -1
  465. pulumiverse_scaleway/redis/_inputs.py +163 -69
  466. pulumiverse_scaleway/redis/cluster.py +273 -225
  467. pulumiverse_scaleway/redis/get_cluster.py +65 -54
  468. pulumiverse_scaleway/redis/outputs.py +199 -87
  469. pulumiverse_scaleway/redis_cluster.py +273 -225
  470. pulumiverse_scaleway/registry/__init__.py +2 -1
  471. pulumiverse_scaleway/registry/get_image.py +48 -48
  472. pulumiverse_scaleway/registry/get_image_tag.py +44 -44
  473. pulumiverse_scaleway/registry/get_namespace.py +36 -36
  474. pulumiverse_scaleway/registry/namespace.py +106 -105
  475. pulumiverse_scaleway/registry_namespace.py +106 -105
  476. pulumiverse_scaleway/sdb_database.py +97 -96
  477. pulumiverse_scaleway/secret.py +188 -179
  478. pulumiverse_scaleway/secret_version.py +107 -106
  479. pulumiverse_scaleway/secrets/__init__.py +2 -1
  480. pulumiverse_scaleway/secrets/_inputs.py +63 -63
  481. pulumiverse_scaleway/secrets/get_secret.py +58 -58
  482. pulumiverse_scaleway/secrets/get_version.py +46 -46
  483. pulumiverse_scaleway/secrets/outputs.py +84 -84
  484. pulumiverse_scaleway/secrets/secret.py +188 -179
  485. pulumiverse_scaleway/secrets/version.py +107 -106
  486. pulumiverse_scaleway/tem/__init__.py +2 -1
  487. pulumiverse_scaleway/tem/_inputs.py +33 -33
  488. pulumiverse_scaleway/tem/blocked_list.py +105 -104
  489. pulumiverse_scaleway/tem/domain.py +384 -257
  490. pulumiverse_scaleway/tem/domain_validation.py +63 -62
  491. pulumiverse_scaleway/tem/get_domain.py +103 -70
  492. pulumiverse_scaleway/tem/get_offer_subscription.py +34 -34
  493. pulumiverse_scaleway/tem/outputs.py +44 -44
  494. pulumiverse_scaleway/tem/webhook.py +132 -131
  495. pulumiverse_scaleway/tem_domain.py +384 -257
  496. pulumiverse_scaleway/tem_domain_validation.py +63 -62
  497. pulumiverse_scaleway/tem_webhook.py +132 -131
  498. pulumiverse_scaleway/vpc.py +172 -124
  499. pulumiverse_scaleway/vpc_gateway_network.py +228 -180
  500. pulumiverse_scaleway/vpc_private_network.py +203 -155
  501. pulumiverse_scaleway/vpc_public_gateway.py +261 -260
  502. pulumiverse_scaleway/vpc_public_gateway_dhcp.py +285 -284
  503. pulumiverse_scaleway/vpc_public_gateway_dhcp_reservation.py +107 -106
  504. pulumiverse_scaleway/vpc_public_gateway_ip.py +107 -106
  505. pulumiverse_scaleway/vpc_public_gateway_ip_reverse_dns.py +54 -53
  506. pulumiverse_scaleway/vpc_public_gateway_pat_rule.py +132 -131
  507. pulumiverse_scaleway/vpc_route.py +230 -141
  508. pulumiverse_scaleway/webhosting.py +213 -212
  509. {pulumiverse_scaleway-1.27.0a1744869119.dist-info → pulumiverse_scaleway-1.39.0a1764841480.dist-info}/METADATA +2 -2
  510. pulumiverse_scaleway-1.39.0a1764841480.dist-info/RECORD +513 -0
  511. {pulumiverse_scaleway-1.27.0a1744869119.dist-info → pulumiverse_scaleway-1.39.0a1764841480.dist-info}/WHEEL +1 -1
  512. pulumiverse_scaleway/get_cockpit_plan.py +0 -129
  513. pulumiverse_scaleway/observability/get_plan.py +0 -125
  514. pulumiverse_scaleway-1.27.0a1744869119.dist-info/RECORD +0 -483
  515. {pulumiverse_scaleway-1.27.0a1744869119.dist-info → pulumiverse_scaleway-1.39.0a1764841480.dist-info}/top_level.txt +0 -0
@@ -1,8 +1,8 @@
1
1
  # coding=utf-8
2
- # *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. ***
2
+ # *** WARNING: this file was generated by pulumi-language-python. ***
3
3
  # *** Do not edit by hand unless you're certain you know what you are doing! ***
4
4
 
5
- import copy
5
+ import builtins as _builtins
6
6
  import warnings
7
7
  import sys
8
8
  import pulumi
@@ -17,20 +17,31 @@ from . import outputs
17
17
 
18
18
  __all__ = [
19
19
  'ImageAdditionalVolume',
20
+ 'ImageRootVolume',
21
+ 'PrivateNicPrivateIp',
20
22
  'SecurityGroupInboundRule',
21
23
  'SecurityGroupOutboundRule',
22
24
  'SecurityGroupRulesInboundRule',
23
25
  'SecurityGroupRulesOutboundRule',
26
+ 'ServerFilesystem',
27
+ 'ServerPrivateIp',
24
28
  'ServerPrivateNetwork',
25
29
  'ServerPublicIp',
26
30
  'ServerRootVolume',
27
31
  'SnapshotImport',
32
+ 'GetPrivateNicPrivateIpResult',
28
33
  'GetSecurityGroupInboundRuleResult',
29
34
  'GetSecurityGroupOutboundRuleResult',
35
+ 'GetServerFilesystemResult',
36
+ 'GetServerPrivateIpResult',
30
37
  'GetServerPrivateNetworkResult',
31
38
  'GetServerPublicIpResult',
32
39
  'GetServerRootVolumeResult',
40
+ 'GetServerTypeCapabilityResult',
41
+ 'GetServerTypeNetworkResult',
42
+ 'GetServerTypeVolumeResult',
33
43
  'GetServersServerResult',
44
+ 'GetServersServerPrivateIpResult',
34
45
  'GetServersServerPublicIpResult',
35
46
  'GetSnapshotImportResult',
36
47
  ]
@@ -40,13 +51,7 @@ class ImageAdditionalVolume(dict):
40
51
  @staticmethod
41
52
  def __key_warning(key: str):
42
53
  suggest = None
43
- if key == "creationDate":
44
- suggest = "creation_date"
45
- elif key == "exportUri":
46
- suggest = "export_uri"
47
- elif key == "modificationDate":
48
- suggest = "modification_date"
49
- elif key == "volumeType":
54
+ if key == "volumeType":
50
55
  suggest = "volume_type"
51
56
 
52
57
  if suggest:
@@ -61,164 +66,183 @@ class ImageAdditionalVolume(dict):
61
66
  return super().get(key, default)
62
67
 
63
68
  def __init__(__self__, *,
64
- creation_date: Optional[str] = None,
65
- export_uri: Optional[str] = None,
66
- id: Optional[str] = None,
67
- modification_date: Optional[str] = None,
68
- name: Optional[str] = None,
69
- organization: Optional[str] = None,
70
- project: Optional[str] = None,
71
- server: Optional[Mapping[str, str]] = None,
72
- size: Optional[int] = None,
73
- state: Optional[str] = None,
74
- tags: Optional[Sequence[str]] = None,
75
- volume_type: Optional[str] = None,
76
- zone: Optional[str] = None):
77
- """
78
- :param str creation_date: Date of the volume creation.
79
- :param str export_uri: The export URI of the volume.
80
- :param str id: ID of the server containing the volume.
81
- :param str modification_date: Date of volume latest update.
82
- :param str name: The name of the image. If not provided it will be randomly generated.
83
- :param str organization: The organization ID the volume is associated with.
84
- :param str project: ID of the project the volume is associated with
85
- :param Mapping[str, str] server: Description of the server containing the volume (in case the image is a backup from a server).
86
- :param int size: The size of the volume.
87
- :param str state: State of the volume.
88
- :param Sequence[str] tags: A list of tags to apply to the image.
89
- :param str volume_type: The type of volume, possible values are `l_ssd` and `b_ssd`.
90
- :param str zone: The zone in which the image should be created.
91
- """
92
- if creation_date is not None:
93
- pulumi.set(__self__, "creation_date", creation_date)
94
- if export_uri is not None:
95
- pulumi.set(__self__, "export_uri", export_uri)
69
+ id: Optional[_builtins.str] = None,
70
+ name: Optional[_builtins.str] = None,
71
+ server: Optional[Mapping[str, _builtins.str]] = None,
72
+ size: Optional[_builtins.int] = None,
73
+ tags: Optional[Sequence[_builtins.str]] = None,
74
+ volume_type: Optional[_builtins.str] = None):
75
+ """
76
+ :param _builtins.str id: ID of the server containing the volume.
77
+ :param _builtins.str name: The name of the image. If not provided it will be randomly generated.
78
+ :param Mapping[str, _builtins.str] server: Description of the server containing the volume (in case the image is a backup from a server).
79
+ :param _builtins.int size: The size of the volume.
80
+ :param Sequence[_builtins.str] tags: A list of tags to apply to the image.
81
+ :param _builtins.str volume_type: The type of volume, possible values are `l_ssd` and `sbs_snapshot`.
82
+ """
96
83
  if id is not None:
97
84
  pulumi.set(__self__, "id", id)
98
- if modification_date is not None:
99
- pulumi.set(__self__, "modification_date", modification_date)
100
85
  if name is not None:
101
86
  pulumi.set(__self__, "name", name)
102
- if organization is not None:
103
- pulumi.set(__self__, "organization", organization)
104
- if project is not None:
105
- pulumi.set(__self__, "project", project)
106
87
  if server is not None:
107
88
  pulumi.set(__self__, "server", server)
108
89
  if size is not None:
109
90
  pulumi.set(__self__, "size", size)
110
- if state is not None:
111
- pulumi.set(__self__, "state", state)
112
91
  if tags is not None:
113
92
  pulumi.set(__self__, "tags", tags)
114
93
  if volume_type is not None:
115
94
  pulumi.set(__self__, "volume_type", volume_type)
116
- if zone is not None:
117
- pulumi.set(__self__, "zone", zone)
118
95
 
119
- @property
120
- @pulumi.getter(name="creationDate")
121
- def creation_date(self) -> Optional[str]:
96
+ @_builtins.property
97
+ @pulumi.getter
98
+ def id(self) -> Optional[_builtins.str]:
122
99
  """
123
- Date of the volume creation.
100
+ ID of the server containing the volume.
124
101
  """
125
- return pulumi.get(self, "creation_date")
102
+ return pulumi.get(self, "id")
126
103
 
127
- @property
128
- @pulumi.getter(name="exportUri")
129
- def export_uri(self) -> Optional[str]:
104
+ @_builtins.property
105
+ @pulumi.getter
106
+ def name(self) -> Optional[_builtins.str]:
130
107
  """
131
- The export URI of the volume.
108
+ The name of the image. If not provided it will be randomly generated.
132
109
  """
133
- return pulumi.get(self, "export_uri")
110
+ return pulumi.get(self, "name")
134
111
 
135
- @property
112
+ @_builtins.property
136
113
  @pulumi.getter
137
- def id(self) -> Optional[str]:
114
+ def server(self) -> Optional[Mapping[str, _builtins.str]]:
138
115
  """
139
- ID of the server containing the volume.
116
+ Description of the server containing the volume (in case the image is a backup from a server).
140
117
  """
141
- return pulumi.get(self, "id")
118
+ return pulumi.get(self, "server")
142
119
 
143
- @property
144
- @pulumi.getter(name="modificationDate")
145
- def modification_date(self) -> Optional[str]:
120
+ @_builtins.property
121
+ @pulumi.getter
122
+ def size(self) -> Optional[_builtins.int]:
146
123
  """
147
- Date of volume latest update.
124
+ The size of the volume.
148
125
  """
149
- return pulumi.get(self, "modification_date")
126
+ return pulumi.get(self, "size")
150
127
 
151
- @property
128
+ @_builtins.property
152
129
  @pulumi.getter
153
- def name(self) -> Optional[str]:
130
+ def tags(self) -> Optional[Sequence[_builtins.str]]:
154
131
  """
155
- The name of the image. If not provided it will be randomly generated.
132
+ A list of tags to apply to the image.
156
133
  """
157
- return pulumi.get(self, "name")
134
+ return pulumi.get(self, "tags")
158
135
 
159
- @property
160
- @pulumi.getter
161
- def organization(self) -> Optional[str]:
136
+ @_builtins.property
137
+ @pulumi.getter(name="volumeType")
138
+ def volume_type(self) -> Optional[_builtins.str]:
162
139
  """
163
- The organization ID the volume is associated with.
140
+ The type of volume, possible values are `l_ssd` and `sbs_snapshot`.
164
141
  """
165
- return pulumi.get(self, "organization")
142
+ return pulumi.get(self, "volume_type")
166
143
 
167
- @property
144
+
145
+ @pulumi.output_type
146
+ class ImageRootVolume(dict):
147
+ @staticmethod
148
+ def __key_warning(key: str):
149
+ suggest = None
150
+ if key == "volumeType":
151
+ suggest = "volume_type"
152
+
153
+ if suggest:
154
+ pulumi.log.warn(f"Key '{key}' not found in ImageRootVolume. Access the value via the '{suggest}' property getter instead.")
155
+
156
+ def __getitem__(self, key: str) -> Any:
157
+ ImageRootVolume.__key_warning(key)
158
+ return super().__getitem__(key)
159
+
160
+ def get(self, key: str, default = None) -> Any:
161
+ ImageRootVolume.__key_warning(key)
162
+ return super().get(key, default)
163
+
164
+ def __init__(__self__, *,
165
+ id: Optional[_builtins.str] = None,
166
+ name: Optional[_builtins.str] = None,
167
+ size: Optional[_builtins.int] = None,
168
+ volume_type: Optional[_builtins.str] = None):
169
+ """
170
+ :param _builtins.str id: ID of the server containing the volume.
171
+ :param _builtins.str name: The name of the image. If not provided it will be randomly generated.
172
+ :param _builtins.int size: The size of the volume.
173
+ :param _builtins.str volume_type: The type of volume, possible values are `l_ssd` and `sbs_snapshot`.
174
+ """
175
+ if id is not None:
176
+ pulumi.set(__self__, "id", id)
177
+ if name is not None:
178
+ pulumi.set(__self__, "name", name)
179
+ if size is not None:
180
+ pulumi.set(__self__, "size", size)
181
+ if volume_type is not None:
182
+ pulumi.set(__self__, "volume_type", volume_type)
183
+
184
+ @_builtins.property
168
185
  @pulumi.getter
169
- def project(self) -> Optional[str]:
186
+ def id(self) -> Optional[_builtins.str]:
170
187
  """
171
- ID of the project the volume is associated with
188
+ ID of the server containing the volume.
172
189
  """
173
- return pulumi.get(self, "project")
190
+ return pulumi.get(self, "id")
174
191
 
175
- @property
192
+ @_builtins.property
176
193
  @pulumi.getter
177
- def server(self) -> Optional[Mapping[str, str]]:
194
+ def name(self) -> Optional[_builtins.str]:
178
195
  """
179
- Description of the server containing the volume (in case the image is a backup from a server).
196
+ The name of the image. If not provided it will be randomly generated.
180
197
  """
181
- return pulumi.get(self, "server")
198
+ return pulumi.get(self, "name")
182
199
 
183
- @property
200
+ @_builtins.property
184
201
  @pulumi.getter
185
- def size(self) -> Optional[int]:
202
+ def size(self) -> Optional[_builtins.int]:
186
203
  """
187
204
  The size of the volume.
188
205
  """
189
206
  return pulumi.get(self, "size")
190
207
 
191
- @property
192
- @pulumi.getter
193
- def state(self) -> Optional[str]:
208
+ @_builtins.property
209
+ @pulumi.getter(name="volumeType")
210
+ def volume_type(self) -> Optional[_builtins.str]:
194
211
  """
195
- State of the volume.
212
+ The type of volume, possible values are `l_ssd` and `sbs_snapshot`.
196
213
  """
197
- return pulumi.get(self, "state")
214
+ return pulumi.get(self, "volume_type")
198
215
 
199
- @property
200
- @pulumi.getter
201
- def tags(self) -> Optional[Sequence[str]]:
216
+
217
+ @pulumi.output_type
218
+ class PrivateNicPrivateIp(dict):
219
+ def __init__(__self__, *,
220
+ address: Optional[_builtins.str] = None,
221
+ id: Optional[_builtins.str] = None):
202
222
  """
203
- A list of tags to apply to the image.
223
+ :param _builtins.str address: The private IP address.
224
+ :param _builtins.str id: The ID of the IP address resource.
204
225
  """
205
- return pulumi.get(self, "tags")
226
+ if address is not None:
227
+ pulumi.set(__self__, "address", address)
228
+ if id is not None:
229
+ pulumi.set(__self__, "id", id)
206
230
 
207
- @property
208
- @pulumi.getter(name="volumeType")
209
- def volume_type(self) -> Optional[str]:
231
+ @_builtins.property
232
+ @pulumi.getter
233
+ def address(self) -> Optional[_builtins.str]:
210
234
  """
211
- The type of volume, possible values are `l_ssd` and `b_ssd`.
235
+ The private IP address.
212
236
  """
213
- return pulumi.get(self, "volume_type")
237
+ return pulumi.get(self, "address")
214
238
 
215
- @property
239
+ @_builtins.property
216
240
  @pulumi.getter
217
- def zone(self) -> Optional[str]:
241
+ def id(self) -> Optional[_builtins.str]:
218
242
  """
219
- The zone in which the image should be created.
243
+ The ID of the IP address resource.
220
244
  """
221
- return pulumi.get(self, "zone")
245
+ return pulumi.get(self, "id")
222
246
 
223
247
 
224
248
  @pulumi.output_type
@@ -243,19 +267,19 @@ class SecurityGroupInboundRule(dict):
243
267
  return super().get(key, default)
244
268
 
245
269
  def __init__(__self__, *,
246
- action: str,
247
- ip: Optional[str] = None,
248
- ip_range: Optional[str] = None,
249
- port: Optional[int] = None,
250
- port_range: Optional[str] = None,
251
- protocol: Optional[str] = None):
252
- """
253
- :param str action: The action to take when rule match. Possible values are: `accept` or `drop`.
254
- :param str ip: The ip this rule apply to. If no `ip` nor `ip_range` are specified, rule will apply to all ip. Only one of `ip` and `ip_range` should be specified.
255
- :param str ip_range: The ip range (e.g `192.168.1.0/24`) this rule applies to. If no `ip` nor `ip_range` are specified, rule will apply to all ip. Only one of `ip` and `ip_range` should be specified.
256
- :param int port: The port this rule applies to. If no `port` nor `port_range` are specified, the rule will apply to all port. Only one of `port` and `port_range` should be specified.
257
- :param str port_range: Computed port range for this rule (e.g: 1-1024, 22-22)
258
- :param str protocol: The protocol this rule apply to. Possible values are: `TCP`, `UDP`, `ICMP` or `ANY`.
270
+ action: _builtins.str,
271
+ ip: Optional[_builtins.str] = None,
272
+ ip_range: Optional[_builtins.str] = None,
273
+ port: Optional[_builtins.int] = None,
274
+ port_range: Optional[_builtins.str] = None,
275
+ protocol: Optional[_builtins.str] = None):
276
+ """
277
+ :param _builtins.str action: The action to take when rule match. Possible values are: `accept` or `drop`.
278
+ :param _builtins.str ip: The ip this rule apply to. If no `ip` nor `ip_range` are specified, rule will apply to all ip. Only one of `ip` and `ip_range` should be specified.
279
+ :param _builtins.str ip_range: The ip range (e.g `192.168.1.0/24`) this rule applies to. If no `ip` nor `ip_range` are specified, rule will apply to all ip. Only one of `ip` and `ip_range` should be specified.
280
+ :param _builtins.int port: The port this rule applies to. If no `port` nor `port_range` are specified, the rule will apply to all port. Only one of `port` and `port_range` should be specified.
281
+ :param _builtins.str port_range: Computed port range for this rule (e.g: 1-1024, 22-22)
282
+ :param _builtins.str protocol: The protocol this rule apply to. Possible values are: `TCP`, `UDP`, `ICMP` or `ANY`.
259
283
  """
260
284
  pulumi.set(__self__, "action", action)
261
285
  if ip is not None:
@@ -269,50 +293,50 @@ class SecurityGroupInboundRule(dict):
269
293
  if protocol is not None:
270
294
  pulumi.set(__self__, "protocol", protocol)
271
295
 
272
- @property
296
+ @_builtins.property
273
297
  @pulumi.getter
274
- def action(self) -> str:
298
+ def action(self) -> _builtins.str:
275
299
  """
276
300
  The action to take when rule match. Possible values are: `accept` or `drop`.
277
301
  """
278
302
  return pulumi.get(self, "action")
279
303
 
280
- @property
304
+ @_builtins.property
281
305
  @pulumi.getter
282
306
  @_utilities.deprecated("""Ip address is deprecated. Please use ip_range instead""")
283
- def ip(self) -> Optional[str]:
307
+ def ip(self) -> Optional[_builtins.str]:
284
308
  """
285
309
  The ip this rule apply to. If no `ip` nor `ip_range` are specified, rule will apply to all ip. Only one of `ip` and `ip_range` should be specified.
286
310
  """
287
311
  return pulumi.get(self, "ip")
288
312
 
289
- @property
313
+ @_builtins.property
290
314
  @pulumi.getter(name="ipRange")
291
- def ip_range(self) -> Optional[str]:
315
+ def ip_range(self) -> Optional[_builtins.str]:
292
316
  """
293
317
  The ip range (e.g `192.168.1.0/24`) this rule applies to. If no `ip` nor `ip_range` are specified, rule will apply to all ip. Only one of `ip` and `ip_range` should be specified.
294
318
  """
295
319
  return pulumi.get(self, "ip_range")
296
320
 
297
- @property
321
+ @_builtins.property
298
322
  @pulumi.getter
299
- def port(self) -> Optional[int]:
323
+ def port(self) -> Optional[_builtins.int]:
300
324
  """
301
325
  The port this rule applies to. If no `port` nor `port_range` are specified, the rule will apply to all port. Only one of `port` and `port_range` should be specified.
302
326
  """
303
327
  return pulumi.get(self, "port")
304
328
 
305
- @property
329
+ @_builtins.property
306
330
  @pulumi.getter(name="portRange")
307
- def port_range(self) -> Optional[str]:
331
+ def port_range(self) -> Optional[_builtins.str]:
308
332
  """
309
333
  Computed port range for this rule (e.g: 1-1024, 22-22)
310
334
  """
311
335
  return pulumi.get(self, "port_range")
312
336
 
313
- @property
337
+ @_builtins.property
314
338
  @pulumi.getter
315
- def protocol(self) -> Optional[str]:
339
+ def protocol(self) -> Optional[_builtins.str]:
316
340
  """
317
341
  The protocol this rule apply to. Possible values are: `TCP`, `UDP`, `ICMP` or `ANY`.
318
342
  """
@@ -341,19 +365,19 @@ class SecurityGroupOutboundRule(dict):
341
365
  return super().get(key, default)
342
366
 
343
367
  def __init__(__self__, *,
344
- action: str,
345
- ip: Optional[str] = None,
346
- ip_range: Optional[str] = None,
347
- port: Optional[int] = None,
348
- port_range: Optional[str] = None,
349
- protocol: Optional[str] = None):
350
- """
351
- :param str action: Action when rule match request (drop or accept)
352
- :param str ip: Ip address for this rule (e.g: 1.1.1.1). Only one of ip or ip_range should be provided
353
- :param str ip_range: Ip range for this rule (e.g: 192.168.1.0/24). Only one of ip or ip_range should be provided
354
- :param int port: Network port for this rule
355
- :param str port_range: Computed port range for this rule (e.g: 1-1024, 22-22)
356
- :param str protocol: Protocol for this rule (TCP, UDP, ICMP or ANY)
368
+ action: _builtins.str,
369
+ ip: Optional[_builtins.str] = None,
370
+ ip_range: Optional[_builtins.str] = None,
371
+ port: Optional[_builtins.int] = None,
372
+ port_range: Optional[_builtins.str] = None,
373
+ protocol: Optional[_builtins.str] = None):
374
+ """
375
+ :param _builtins.str action: Action when rule match request (drop or accept)
376
+ :param _builtins.str ip: Ip address for this rule (e.g: 1.1.1.1). Only one of ip or ip_range should be provided
377
+ :param _builtins.str ip_range: Ip range for this rule (e.g: 192.168.1.0/24). Only one of ip or ip_range should be provided
378
+ :param _builtins.int port: Network port for this rule
379
+ :param _builtins.str port_range: Computed port range for this rule (e.g: 1-1024, 22-22)
380
+ :param _builtins.str protocol: Protocol for this rule (TCP, UDP, ICMP or ANY)
357
381
  """
358
382
  pulumi.set(__self__, "action", action)
359
383
  if ip is not None:
@@ -367,50 +391,50 @@ class SecurityGroupOutboundRule(dict):
367
391
  if protocol is not None:
368
392
  pulumi.set(__self__, "protocol", protocol)
369
393
 
370
- @property
394
+ @_builtins.property
371
395
  @pulumi.getter
372
- def action(self) -> str:
396
+ def action(self) -> _builtins.str:
373
397
  """
374
398
  Action when rule match request (drop or accept)
375
399
  """
376
400
  return pulumi.get(self, "action")
377
401
 
378
- @property
402
+ @_builtins.property
379
403
  @pulumi.getter
380
404
  @_utilities.deprecated("""Ip address is deprecated. Please use ip_range instead""")
381
- def ip(self) -> Optional[str]:
405
+ def ip(self) -> Optional[_builtins.str]:
382
406
  """
383
407
  Ip address for this rule (e.g: 1.1.1.1). Only one of ip or ip_range should be provided
384
408
  """
385
409
  return pulumi.get(self, "ip")
386
410
 
387
- @property
411
+ @_builtins.property
388
412
  @pulumi.getter(name="ipRange")
389
- def ip_range(self) -> Optional[str]:
413
+ def ip_range(self) -> Optional[_builtins.str]:
390
414
  """
391
415
  Ip range for this rule (e.g: 192.168.1.0/24). Only one of ip or ip_range should be provided
392
416
  """
393
417
  return pulumi.get(self, "ip_range")
394
418
 
395
- @property
419
+ @_builtins.property
396
420
  @pulumi.getter
397
- def port(self) -> Optional[int]:
421
+ def port(self) -> Optional[_builtins.int]:
398
422
  """
399
423
  Network port for this rule
400
424
  """
401
425
  return pulumi.get(self, "port")
402
426
 
403
- @property
427
+ @_builtins.property
404
428
  @pulumi.getter(name="portRange")
405
- def port_range(self) -> Optional[str]:
429
+ def port_range(self) -> Optional[_builtins.str]:
406
430
  """
407
431
  Computed port range for this rule (e.g: 1-1024, 22-22)
408
432
  """
409
433
  return pulumi.get(self, "port_range")
410
434
 
411
- @property
435
+ @_builtins.property
412
436
  @pulumi.getter
413
- def protocol(self) -> Optional[str]:
437
+ def protocol(self) -> Optional[_builtins.str]:
414
438
  """
415
439
  Protocol for this rule (TCP, UDP, ICMP or ANY)
416
440
  """
@@ -439,19 +463,19 @@ class SecurityGroupRulesInboundRule(dict):
439
463
  return super().get(key, default)
440
464
 
441
465
  def __init__(__self__, *,
442
- action: str,
443
- ip: Optional[str] = None,
444
- ip_range: Optional[str] = None,
445
- port: Optional[int] = None,
446
- port_range: Optional[str] = None,
447
- protocol: Optional[str] = None):
448
- """
449
- :param str action: The action to take when rule match. Possible values are: `accept` or `drop`.
450
- :param str ip: The ip this rule apply to. If no `ip` nor `ip_range` are specified, rule will apply to all ip. Only one of `ip` and `ip_range` should be specified.
451
- :param str ip_range: The ip range (e.g `192.168.1.0/24`) this rule applies to. If no `ip` nor `ip_range` are specified, rule will apply to all ip. Only one of `ip` and `ip_range` should be specified.
452
- :param int port: The port this rule apply to. If no port is specified, rule will apply to all port.
453
- :param str port_range: Computed port range for this rule (e.g: 1-1024, 22-22)
454
- :param str protocol: The protocol this rule apply to. Possible values are: `TCP`, `UDP`, `ICMP` or `ANY`.
466
+ action: _builtins.str,
467
+ ip: Optional[_builtins.str] = None,
468
+ ip_range: Optional[_builtins.str] = None,
469
+ port: Optional[_builtins.int] = None,
470
+ port_range: Optional[_builtins.str] = None,
471
+ protocol: Optional[_builtins.str] = None):
472
+ """
473
+ :param _builtins.str action: The action to take when rule match. Possible values are: `accept` or `drop`.
474
+ :param _builtins.str ip: The ip this rule apply to. If no `ip` nor `ip_range` are specified, rule will apply to all ip. Only one of `ip` and `ip_range` should be specified.
475
+ :param _builtins.str ip_range: The ip range (e.g `192.168.1.0/24`) this rule applies to. If no `ip` nor `ip_range` are specified, rule will apply to all ip. Only one of `ip` and `ip_range` should be specified.
476
+ :param _builtins.int port: The port this rule apply to. If no port is specified, rule will apply to all port.
477
+ :param _builtins.str port_range: Computed port range for this rule (e.g: 1-1024, 22-22)
478
+ :param _builtins.str protocol: The protocol this rule apply to. Possible values are: `TCP`, `UDP`, `ICMP` or `ANY`.
455
479
  """
456
480
  pulumi.set(__self__, "action", action)
457
481
  if ip is not None:
@@ -465,50 +489,50 @@ class SecurityGroupRulesInboundRule(dict):
465
489
  if protocol is not None:
466
490
  pulumi.set(__self__, "protocol", protocol)
467
491
 
468
- @property
492
+ @_builtins.property
469
493
  @pulumi.getter
470
- def action(self) -> str:
494
+ def action(self) -> _builtins.str:
471
495
  """
472
496
  The action to take when rule match. Possible values are: `accept` or `drop`.
473
497
  """
474
498
  return pulumi.get(self, "action")
475
499
 
476
- @property
500
+ @_builtins.property
477
501
  @pulumi.getter
478
502
  @_utilities.deprecated("""Ip address is deprecated. Please use ip_range instead""")
479
- def ip(self) -> Optional[str]:
503
+ def ip(self) -> Optional[_builtins.str]:
480
504
  """
481
505
  The ip this rule apply to. If no `ip` nor `ip_range` are specified, rule will apply to all ip. Only one of `ip` and `ip_range` should be specified.
482
506
  """
483
507
  return pulumi.get(self, "ip")
484
508
 
485
- @property
509
+ @_builtins.property
486
510
  @pulumi.getter(name="ipRange")
487
- def ip_range(self) -> Optional[str]:
511
+ def ip_range(self) -> Optional[_builtins.str]:
488
512
  """
489
513
  The ip range (e.g `192.168.1.0/24`) this rule applies to. If no `ip` nor `ip_range` are specified, rule will apply to all ip. Only one of `ip` and `ip_range` should be specified.
490
514
  """
491
515
  return pulumi.get(self, "ip_range")
492
516
 
493
- @property
517
+ @_builtins.property
494
518
  @pulumi.getter
495
- def port(self) -> Optional[int]:
519
+ def port(self) -> Optional[_builtins.int]:
496
520
  """
497
521
  The port this rule apply to. If no port is specified, rule will apply to all port.
498
522
  """
499
523
  return pulumi.get(self, "port")
500
524
 
501
- @property
525
+ @_builtins.property
502
526
  @pulumi.getter(name="portRange")
503
- def port_range(self) -> Optional[str]:
527
+ def port_range(self) -> Optional[_builtins.str]:
504
528
  """
505
529
  Computed port range for this rule (e.g: 1-1024, 22-22)
506
530
  """
507
531
  return pulumi.get(self, "port_range")
508
532
 
509
- @property
533
+ @_builtins.property
510
534
  @pulumi.getter
511
- def protocol(self) -> Optional[str]:
535
+ def protocol(self) -> Optional[_builtins.str]:
512
536
  """
513
537
  The protocol this rule apply to. Possible values are: `TCP`, `UDP`, `ICMP` or `ANY`.
514
538
  """
@@ -537,19 +561,19 @@ class SecurityGroupRulesOutboundRule(dict):
537
561
  return super().get(key, default)
538
562
 
539
563
  def __init__(__self__, *,
540
- action: str,
541
- ip: Optional[str] = None,
542
- ip_range: Optional[str] = None,
543
- port: Optional[int] = None,
544
- port_range: Optional[str] = None,
545
- protocol: Optional[str] = None):
546
- """
547
- :param str action: Action when rule match request (drop or accept)
548
- :param str ip: Ip address for this rule (e.g: 1.1.1.1). Only one of ip or ip_range should be provided
549
- :param str ip_range: Ip range for this rule (e.g: 192.168.1.0/24). Only one of ip or ip_range should be provided
550
- :param int port: Network port for this rule
551
- :param str port_range: Computed port range for this rule (e.g: 1-1024, 22-22)
552
- :param str protocol: Protocol for this rule (TCP, UDP, ICMP or ANY)
564
+ action: _builtins.str,
565
+ ip: Optional[_builtins.str] = None,
566
+ ip_range: Optional[_builtins.str] = None,
567
+ port: Optional[_builtins.int] = None,
568
+ port_range: Optional[_builtins.str] = None,
569
+ protocol: Optional[_builtins.str] = None):
570
+ """
571
+ :param _builtins.str action: Action when rule match request (drop or accept)
572
+ :param _builtins.str ip: Ip address for this rule (e.g: 1.1.1.1). Only one of ip or ip_range should be provided
573
+ :param _builtins.str ip_range: Ip range for this rule (e.g: 192.168.1.0/24). Only one of ip or ip_range should be provided
574
+ :param _builtins.int port: Network port for this rule
575
+ :param _builtins.str port_range: Computed port range for this rule (e.g: 1-1024, 22-22)
576
+ :param _builtins.str protocol: Protocol for this rule (TCP, UDP, ICMP or ANY)
553
577
  """
554
578
  pulumi.set(__self__, "action", action)
555
579
  if ip is not None:
@@ -563,56 +587,135 @@ class SecurityGroupRulesOutboundRule(dict):
563
587
  if protocol is not None:
564
588
  pulumi.set(__self__, "protocol", protocol)
565
589
 
566
- @property
590
+ @_builtins.property
567
591
  @pulumi.getter
568
- def action(self) -> str:
592
+ def action(self) -> _builtins.str:
569
593
  """
570
594
  Action when rule match request (drop or accept)
571
595
  """
572
596
  return pulumi.get(self, "action")
573
597
 
574
- @property
598
+ @_builtins.property
575
599
  @pulumi.getter
576
600
  @_utilities.deprecated("""Ip address is deprecated. Please use ip_range instead""")
577
- def ip(self) -> Optional[str]:
601
+ def ip(self) -> Optional[_builtins.str]:
578
602
  """
579
603
  Ip address for this rule (e.g: 1.1.1.1). Only one of ip or ip_range should be provided
580
604
  """
581
605
  return pulumi.get(self, "ip")
582
606
 
583
- @property
607
+ @_builtins.property
584
608
  @pulumi.getter(name="ipRange")
585
- def ip_range(self) -> Optional[str]:
609
+ def ip_range(self) -> Optional[_builtins.str]:
586
610
  """
587
611
  Ip range for this rule (e.g: 192.168.1.0/24). Only one of ip or ip_range should be provided
588
612
  """
589
613
  return pulumi.get(self, "ip_range")
590
614
 
591
- @property
615
+ @_builtins.property
592
616
  @pulumi.getter
593
- def port(self) -> Optional[int]:
617
+ def port(self) -> Optional[_builtins.int]:
594
618
  """
595
619
  Network port for this rule
596
620
  """
597
621
  return pulumi.get(self, "port")
598
622
 
599
- @property
623
+ @_builtins.property
600
624
  @pulumi.getter(name="portRange")
601
- def port_range(self) -> Optional[str]:
625
+ def port_range(self) -> Optional[_builtins.str]:
602
626
  """
603
627
  Computed port range for this rule (e.g: 1-1024, 22-22)
604
628
  """
605
629
  return pulumi.get(self, "port_range")
606
630
 
607
- @property
631
+ @_builtins.property
608
632
  @pulumi.getter
609
- def protocol(self) -> Optional[str]:
633
+ def protocol(self) -> Optional[_builtins.str]:
610
634
  """
611
635
  Protocol for this rule (TCP, UDP, ICMP or ANY)
612
636
  """
613
637
  return pulumi.get(self, "protocol")
614
638
 
615
639
 
640
+ @pulumi.output_type
641
+ class ServerFilesystem(dict):
642
+ @staticmethod
643
+ def __key_warning(key: str):
644
+ suggest = None
645
+ if key == "filesystemId":
646
+ suggest = "filesystem_id"
647
+
648
+ if suggest:
649
+ pulumi.log.warn(f"Key '{key}' not found in ServerFilesystem. Access the value via the '{suggest}' property getter instead.")
650
+
651
+ def __getitem__(self, key: str) -> Any:
652
+ ServerFilesystem.__key_warning(key)
653
+ return super().__getitem__(key)
654
+
655
+ def get(self, key: str, default = None) -> Any:
656
+ ServerFilesystem.__key_warning(key)
657
+ return super().get(key, default)
658
+
659
+ def __init__(__self__, *,
660
+ filesystem_id: Optional[_builtins.str] = None,
661
+ status: Optional[_builtins.str] = None):
662
+ """
663
+ :param _builtins.str filesystem_id: The unique ID of the filesystem attached to the server.
664
+ :param _builtins.str status: The state of the filesystem
665
+ """
666
+ if filesystem_id is not None:
667
+ pulumi.set(__self__, "filesystem_id", filesystem_id)
668
+ if status is not None:
669
+ pulumi.set(__self__, "status", status)
670
+
671
+ @_builtins.property
672
+ @pulumi.getter(name="filesystemId")
673
+ def filesystem_id(self) -> Optional[_builtins.str]:
674
+ """
675
+ The unique ID of the filesystem attached to the server.
676
+ """
677
+ return pulumi.get(self, "filesystem_id")
678
+
679
+ @_builtins.property
680
+ @pulumi.getter
681
+ def status(self) -> Optional[_builtins.str]:
682
+ """
683
+ The state of the filesystem
684
+ """
685
+ return pulumi.get(self, "status")
686
+
687
+
688
+ @pulumi.output_type
689
+ class ServerPrivateIp(dict):
690
+ def __init__(__self__, *,
691
+ address: Optional[_builtins.str] = None,
692
+ id: Optional[_builtins.str] = None):
693
+ """
694
+ :param _builtins.str address: The private IP address.
695
+ :param _builtins.str id: The ID of the IP address resource.
696
+ """
697
+ if address is not None:
698
+ pulumi.set(__self__, "address", address)
699
+ if id is not None:
700
+ pulumi.set(__self__, "id", id)
701
+
702
+ @_builtins.property
703
+ @pulumi.getter
704
+ def address(self) -> Optional[_builtins.str]:
705
+ """
706
+ The private IP address.
707
+ """
708
+ return pulumi.get(self, "address")
709
+
710
+ @_builtins.property
711
+ @pulumi.getter
712
+ def id(self) -> Optional[_builtins.str]:
713
+ """
714
+ The ID of the IP address resource.
715
+ """
716
+ return pulumi.get(self, "id")
717
+
718
+
616
719
  @pulumi.output_type
617
720
  class ServerPrivateNetwork(dict):
618
721
  @staticmethod
@@ -637,17 +740,17 @@ class ServerPrivateNetwork(dict):
637
740
  return super().get(key, default)
638
741
 
639
742
  def __init__(__self__, *,
640
- pn_id: str,
641
- mac_address: Optional[str] = None,
642
- pnic_id: Optional[str] = None,
643
- status: Optional[str] = None,
644
- zone: Optional[str] = None):
645
- """
646
- :param str pn_id: The Private Network ID
647
- :param str mac_address: MAC address of the NIC
648
- :param str pnic_id: The ID of the NIC
649
- :param str status: The private NIC state
650
- :param str zone: `zone`) The zone in which the server should be created.
743
+ pn_id: _builtins.str,
744
+ mac_address: Optional[_builtins.str] = None,
745
+ pnic_id: Optional[_builtins.str] = None,
746
+ status: Optional[_builtins.str] = None,
747
+ zone: Optional[_builtins.str] = None):
748
+ """
749
+ :param _builtins.str pn_id: The Private Network ID
750
+ :param _builtins.str mac_address: MAC address of the NIC
751
+ :param _builtins.str pnic_id: The ID of the NIC
752
+ :param _builtins.str status: The private NIC state
753
+ :param _builtins.str zone: `zone`) The zone in which the server should be created.
651
754
  """
652
755
  pulumi.set(__self__, "pn_id", pn_id)
653
756
  if mac_address is not None:
@@ -659,41 +762,41 @@ class ServerPrivateNetwork(dict):
659
762
  if zone is not None:
660
763
  pulumi.set(__self__, "zone", zone)
661
764
 
662
- @property
765
+ @_builtins.property
663
766
  @pulumi.getter(name="pnId")
664
- def pn_id(self) -> str:
767
+ def pn_id(self) -> _builtins.str:
665
768
  """
666
769
  The Private Network ID
667
770
  """
668
771
  return pulumi.get(self, "pn_id")
669
772
 
670
- @property
773
+ @_builtins.property
671
774
  @pulumi.getter(name="macAddress")
672
- def mac_address(self) -> Optional[str]:
775
+ def mac_address(self) -> Optional[_builtins.str]:
673
776
  """
674
777
  MAC address of the NIC
675
778
  """
676
779
  return pulumi.get(self, "mac_address")
677
780
 
678
- @property
781
+ @_builtins.property
679
782
  @pulumi.getter(name="pnicId")
680
- def pnic_id(self) -> Optional[str]:
783
+ def pnic_id(self) -> Optional[_builtins.str]:
681
784
  """
682
785
  The ID of the NIC
683
786
  """
684
787
  return pulumi.get(self, "pnic_id")
685
788
 
686
- @property
789
+ @_builtins.property
687
790
  @pulumi.getter
688
- def status(self) -> Optional[str]:
791
+ def status(self) -> Optional[_builtins.str]:
689
792
  """
690
793
  The private NIC state
691
794
  """
692
795
  return pulumi.get(self, "status")
693
796
 
694
- @property
797
+ @_builtins.property
695
798
  @pulumi.getter
696
- def zone(self) -> Optional[str]:
799
+ def zone(self) -> Optional[_builtins.str]:
697
800
  """
698
801
  `zone`) The zone in which the server should be created.
699
802
  """
@@ -702,34 +805,111 @@ class ServerPrivateNetwork(dict):
702
805
 
703
806
  @pulumi.output_type
704
807
  class ServerPublicIp(dict):
808
+ @staticmethod
809
+ def __key_warning(key: str):
810
+ suggest = None
811
+ if key == "provisioningMode":
812
+ suggest = "provisioning_mode"
813
+
814
+ if suggest:
815
+ pulumi.log.warn(f"Key '{key}' not found in ServerPublicIp. Access the value via the '{suggest}' property getter instead.")
816
+
817
+ def __getitem__(self, key: str) -> Any:
818
+ ServerPublicIp.__key_warning(key)
819
+ return super().__getitem__(key)
820
+
821
+ def get(self, key: str, default = None) -> Any:
822
+ ServerPublicIp.__key_warning(key)
823
+ return super().get(key, default)
824
+
705
825
  def __init__(__self__, *,
706
- address: Optional[str] = None,
707
- id: Optional[str] = None):
708
- """
709
- :param str address: The address of the IP
710
- :param str id: The ID of the IP
826
+ address: Optional[_builtins.str] = None,
827
+ dynamic: Optional[_builtins.bool] = None,
828
+ family: Optional[_builtins.str] = None,
829
+ gateway: Optional[_builtins.str] = None,
830
+ id: Optional[_builtins.str] = None,
831
+ netmask: Optional[_builtins.str] = None,
832
+ provisioning_mode: Optional[_builtins.str] = None):
833
+ """
834
+ :param _builtins.str address: The address of the IP.
835
+ :param _builtins.bool dynamic: Whether the IP is dynamic.
836
+ :param _builtins.str family: The IP address' family.
837
+ :param _builtins.str gateway: The IP of the Gateway associated with the IP.
838
+ :param _builtins.str id: The ID of the IP.
839
+ :param _builtins.str netmask: The CIDR netmask of the IP.
840
+ :param _builtins.str provisioning_mode: The provisioning mode of the IP
711
841
  """
712
842
  if address is not None:
713
843
  pulumi.set(__self__, "address", address)
844
+ if dynamic is not None:
845
+ pulumi.set(__self__, "dynamic", dynamic)
846
+ if family is not None:
847
+ pulumi.set(__self__, "family", family)
848
+ if gateway is not None:
849
+ pulumi.set(__self__, "gateway", gateway)
714
850
  if id is not None:
715
851
  pulumi.set(__self__, "id", id)
852
+ if netmask is not None:
853
+ pulumi.set(__self__, "netmask", netmask)
854
+ if provisioning_mode is not None:
855
+ pulumi.set(__self__, "provisioning_mode", provisioning_mode)
716
856
 
717
- @property
857
+ @_builtins.property
718
858
  @pulumi.getter
719
- def address(self) -> Optional[str]:
859
+ def address(self) -> Optional[_builtins.str]:
720
860
  """
721
- The address of the IP
861
+ The address of the IP.
722
862
  """
723
863
  return pulumi.get(self, "address")
724
864
 
725
- @property
865
+ @_builtins.property
726
866
  @pulumi.getter
727
- def id(self) -> Optional[str]:
867
+ def dynamic(self) -> Optional[_builtins.bool]:
728
868
  """
729
- The ID of the IP
869
+ Whether the IP is dynamic.
870
+ """
871
+ return pulumi.get(self, "dynamic")
872
+
873
+ @_builtins.property
874
+ @pulumi.getter
875
+ def family(self) -> Optional[_builtins.str]:
876
+ """
877
+ The IP address' family.
878
+ """
879
+ return pulumi.get(self, "family")
880
+
881
+ @_builtins.property
882
+ @pulumi.getter
883
+ def gateway(self) -> Optional[_builtins.str]:
884
+ """
885
+ The IP of the Gateway associated with the IP.
886
+ """
887
+ return pulumi.get(self, "gateway")
888
+
889
+ @_builtins.property
890
+ @pulumi.getter
891
+ def id(self) -> Optional[_builtins.str]:
892
+ """
893
+ The ID of the IP.
730
894
  """
731
895
  return pulumi.get(self, "id")
732
896
 
897
+ @_builtins.property
898
+ @pulumi.getter
899
+ def netmask(self) -> Optional[_builtins.str]:
900
+ """
901
+ The CIDR netmask of the IP.
902
+ """
903
+ return pulumi.get(self, "netmask")
904
+
905
+ @_builtins.property
906
+ @pulumi.getter(name="provisioningMode")
907
+ def provisioning_mode(self) -> Optional[_builtins.str]:
908
+ """
909
+ The provisioning mode of the IP
910
+ """
911
+ return pulumi.get(self, "provisioning_mode")
912
+
733
913
 
734
914
  @pulumi.output_type
735
915
  class ServerRootVolume(dict):
@@ -759,26 +939,27 @@ class ServerRootVolume(dict):
759
939
  return super().get(key, default)
760
940
 
761
941
  def __init__(__self__, *,
762
- boot: Optional[bool] = None,
763
- delete_on_termination: Optional[bool] = None,
764
- name: Optional[str] = None,
765
- sbs_iops: Optional[int] = None,
766
- size_in_gb: Optional[int] = None,
767
- volume_id: Optional[str] = None,
768
- volume_type: Optional[str] = None):
769
- """
770
- :param bool boot: Set the volume where the boot the server
771
- :param bool delete_on_termination: Forces deletion of the root volume on instance termination.
772
- :param str name: The name of the server.
773
- :param int sbs_iops: Choose IOPS of your sbs volume, has to be used with `sbs_volume` for root volume type.
942
+ boot: Optional[_builtins.bool] = None,
943
+ delete_on_termination: Optional[_builtins.bool] = None,
944
+ name: Optional[_builtins.str] = None,
945
+ sbs_iops: Optional[_builtins.int] = None,
946
+ size_in_gb: Optional[_builtins.int] = None,
947
+ volume_id: Optional[_builtins.str] = None,
948
+ volume_type: Optional[_builtins.str] = None):
949
+ """
950
+ :param _builtins.bool boot: Set the volume where the boot the server
951
+ :param _builtins.bool delete_on_termination: Forces deletion of the root volume on instance termination.
952
+ :param _builtins.str name: Name of the root volume.
953
+ :param _builtins.int sbs_iops: Choose IOPS of your sbs volume, has to be used with `sbs_volume` for root volume type.
774
954
 
775
- > **Important:** Updates to `root_volume.size_in_gb` will be ignored after the creation of the server.
776
- :param int size_in_gb: Size of the root volume in gigabytes.
955
+ > **Important:** It is not possible to change `root_volume.size_in_gb` for local volumes (`l_ssd`). Changes to this field will recreate the server.
956
+ It is possible to increase `root_volume.size_in_gb` for SBS volumes, but they cannot be resized down without recreating the server.
957
+ :param _builtins.int size_in_gb: Size of the root volume in gigabytes.
777
958
  To find the right size use [this endpoint](https://www.scaleway.com/en/developers/api/instance/#path-instances-list-all-instances) and
778
959
  check the `volumes_constraint.{min|max}_size` (in bytes) for your `commercial_type`.
779
960
  Depending on `volume_type`, updates to this field may recreate a new resource.
780
- :param str volume_id: The volume ID of the root volume of the server, allows you to create server with an existing volume. If empty, will be computed to a created volume ID.
781
- :param str volume_type: Volume type of root volume, can be `b_ssd`, `l_ssd` or `sbs_volume`, default value depends on server type
961
+ :param _builtins.str volume_id: The volume ID of the root volume of the server, allows you to create server with an existing volume. If empty, will be computed to a created volume ID.
962
+ :param _builtins.str volume_type: Volume type of root volume, can be `l_ssd` or `sbs_volume`, default value depends on server type
782
963
  """
783
964
  if boot is not None:
784
965
  pulumi.set(__self__, "boot", boot)
@@ -795,43 +976,44 @@ class ServerRootVolume(dict):
795
976
  if volume_type is not None:
796
977
  pulumi.set(__self__, "volume_type", volume_type)
797
978
 
798
- @property
979
+ @_builtins.property
799
980
  @pulumi.getter
800
- def boot(self) -> Optional[bool]:
981
+ def boot(self) -> Optional[_builtins.bool]:
801
982
  """
802
983
  Set the volume where the boot the server
803
984
  """
804
985
  return pulumi.get(self, "boot")
805
986
 
806
- @property
987
+ @_builtins.property
807
988
  @pulumi.getter(name="deleteOnTermination")
808
- def delete_on_termination(self) -> Optional[bool]:
989
+ def delete_on_termination(self) -> Optional[_builtins.bool]:
809
990
  """
810
991
  Forces deletion of the root volume on instance termination.
811
992
  """
812
993
  return pulumi.get(self, "delete_on_termination")
813
994
 
814
- @property
995
+ @_builtins.property
815
996
  @pulumi.getter
816
- def name(self) -> Optional[str]:
997
+ def name(self) -> Optional[_builtins.str]:
817
998
  """
818
- The name of the server.
999
+ Name of the root volume.
819
1000
  """
820
1001
  return pulumi.get(self, "name")
821
1002
 
822
- @property
1003
+ @_builtins.property
823
1004
  @pulumi.getter(name="sbsIops")
824
- def sbs_iops(self) -> Optional[int]:
1005
+ def sbs_iops(self) -> Optional[_builtins.int]:
825
1006
  """
826
1007
  Choose IOPS of your sbs volume, has to be used with `sbs_volume` for root volume type.
827
1008
 
828
- > **Important:** Updates to `root_volume.size_in_gb` will be ignored after the creation of the server.
1009
+ > **Important:** It is not possible to change `root_volume.size_in_gb` for local volumes (`l_ssd`). Changes to this field will recreate the server.
1010
+ It is possible to increase `root_volume.size_in_gb` for SBS volumes, but they cannot be resized down without recreating the server.
829
1011
  """
830
1012
  return pulumi.get(self, "sbs_iops")
831
1013
 
832
- @property
1014
+ @_builtins.property
833
1015
  @pulumi.getter(name="sizeInGb")
834
- def size_in_gb(self) -> Optional[int]:
1016
+ def size_in_gb(self) -> Optional[_builtins.int]:
835
1017
  """
836
1018
  Size of the root volume in gigabytes.
837
1019
  To find the right size use [this endpoint](https://www.scaleway.com/en/developers/api/instance/#path-instances-list-all-instances) and
@@ -840,19 +1022,19 @@ class ServerRootVolume(dict):
840
1022
  """
841
1023
  return pulumi.get(self, "size_in_gb")
842
1024
 
843
- @property
1025
+ @_builtins.property
844
1026
  @pulumi.getter(name="volumeId")
845
- def volume_id(self) -> Optional[str]:
1027
+ def volume_id(self) -> Optional[_builtins.str]:
846
1028
  """
847
1029
  The volume ID of the root volume of the server, allows you to create server with an existing volume. If empty, will be computed to a created volume ID.
848
1030
  """
849
1031
  return pulumi.get(self, "volume_id")
850
1032
 
851
- @property
1033
+ @_builtins.property
852
1034
  @pulumi.getter(name="volumeType")
853
- def volume_type(self) -> Optional[str]:
1035
+ def volume_type(self) -> Optional[_builtins.str]:
854
1036
  """
855
- Volume type of root volume, can be `b_ssd`, `l_ssd` or `sbs_volume`, default value depends on server type
1037
+ Volume type of root volume, can be `l_ssd` or `sbs_volume`, default value depends on server type
856
1038
  """
857
1039
  return pulumi.get(self, "volume_type")
858
1040
 
@@ -860,54 +1042,79 @@ class ServerRootVolume(dict):
860
1042
  @pulumi.output_type
861
1043
  class SnapshotImport(dict):
862
1044
  def __init__(__self__, *,
863
- bucket: str,
864
- key: str):
1045
+ bucket: _builtins.str,
1046
+ key: _builtins.str):
865
1047
  """
866
- :param str bucket: Bucket name containing [qcow2](https://en.wikipedia.org/wiki/Qcow) to import
867
- :param str key: Key of the object to import
868
-
869
- > **Note:** The type `unified` could be instantiated on both `l_ssd` and `b_ssd` volumes.
1048
+ :param _builtins.str bucket: Bucket name containing [qcow2](https://en.wikipedia.org/wiki/Qcow) to import
1049
+ :param _builtins.str key: Key of the object to import
870
1050
  """
871
1051
  pulumi.set(__self__, "bucket", bucket)
872
1052
  pulumi.set(__self__, "key", key)
873
1053
 
874
- @property
1054
+ @_builtins.property
875
1055
  @pulumi.getter
876
- def bucket(self) -> str:
1056
+ def bucket(self) -> _builtins.str:
877
1057
  """
878
1058
  Bucket name containing [qcow2](https://en.wikipedia.org/wiki/Qcow) to import
879
1059
  """
880
1060
  return pulumi.get(self, "bucket")
881
1061
 
882
- @property
1062
+ @_builtins.property
883
1063
  @pulumi.getter
884
- def key(self) -> str:
1064
+ def key(self) -> _builtins.str:
885
1065
  """
886
1066
  Key of the object to import
887
-
888
- > **Note:** The type `unified` could be instantiated on both `l_ssd` and `b_ssd` volumes.
889
1067
  """
890
1068
  return pulumi.get(self, "key")
891
1069
 
892
1070
 
1071
+ @pulumi.output_type
1072
+ class GetPrivateNicPrivateIpResult(dict):
1073
+ def __init__(__self__, *,
1074
+ address: _builtins.str,
1075
+ id: _builtins.str):
1076
+ """
1077
+ :param _builtins.str address: The private IP address
1078
+ :param _builtins.str id: The ID of the IP address resource
1079
+ """
1080
+ pulumi.set(__self__, "address", address)
1081
+ pulumi.set(__self__, "id", id)
1082
+
1083
+ @_builtins.property
1084
+ @pulumi.getter
1085
+ def address(self) -> _builtins.str:
1086
+ """
1087
+ The private IP address
1088
+ """
1089
+ return pulumi.get(self, "address")
1090
+
1091
+ @_builtins.property
1092
+ @pulumi.getter
1093
+ def id(self) -> _builtins.str:
1094
+ """
1095
+ The ID of the IP address resource
1096
+ """
1097
+ return pulumi.get(self, "id")
1098
+
1099
+
893
1100
  @pulumi.output_type
894
1101
  class GetSecurityGroupInboundRuleResult(dict):
895
1102
  def __init__(__self__, *,
896
- action: str,
897
- ip: str,
898
- ip_range: str,
899
- port: int,
900
- port_range: str,
901
- protocol: str):
902
- """
903
- :param str action: The action to take when rule match. Possible values are: `accept` or `drop`.
904
- :param str ip: The ip this rule apply to.
905
- :param str ip_range: The ip range (e.g `192.168.1.0/24`) this rule apply to.
906
- :param int port: The port this rule apply to. If no port is specified, rule will apply to all port.
907
- :param str port_range: The port range (e.g `22-23`) this rule applies to.
1103
+ action: _builtins.str,
1104
+ ip: _builtins.str,
1105
+ ip_range: _builtins.str,
1106
+ port: _builtins.int,
1107
+ port_range: _builtins.str,
1108
+ protocol: _builtins.str):
1109
+ """
1110
+ :param _builtins.str action: The action to take when rule match. Possible values are: `accept` or `drop`.
1111
+ :param _builtins.str ip: The ip this rule apply to.
1112
+ :param _builtins.str ip_range: The ip range (e.g `192.168.1.0/24`) this rule apply to.
1113
+ :param _builtins.int port: The port this rule apply to. If no port is specified, rule will apply to all port.
1114
+ :param _builtins.str port_range: The port range (e.g `22-23`) this rule applies to.
908
1115
  If no `port` nor `port_range` are specified, rule will apply to all port.
909
1116
  Only one of `port` and `port_range` should be specified.
910
- :param str protocol: The protocol this rule apply to. Possible values are: `TCP`, `UDP`, `ICMP` or `ANY`.
1117
+ :param _builtins.str protocol: The protocol this rule apply to. Possible values are: `TCP`, `UDP`, `ICMP` or `ANY`.
911
1118
  """
912
1119
  pulumi.set(__self__, "action", action)
913
1120
  pulumi.set(__self__, "ip", ip)
@@ -916,41 +1123,41 @@ class GetSecurityGroupInboundRuleResult(dict):
916
1123
  pulumi.set(__self__, "port_range", port_range)
917
1124
  pulumi.set(__self__, "protocol", protocol)
918
1125
 
919
- @property
1126
+ @_builtins.property
920
1127
  @pulumi.getter
921
- def action(self) -> str:
1128
+ def action(self) -> _builtins.str:
922
1129
  """
923
1130
  The action to take when rule match. Possible values are: `accept` or `drop`.
924
1131
  """
925
1132
  return pulumi.get(self, "action")
926
1133
 
927
- @property
1134
+ @_builtins.property
928
1135
  @pulumi.getter
929
- def ip(self) -> str:
1136
+ def ip(self) -> _builtins.str:
930
1137
  """
931
1138
  The ip this rule apply to.
932
1139
  """
933
1140
  return pulumi.get(self, "ip")
934
1141
 
935
- @property
1142
+ @_builtins.property
936
1143
  @pulumi.getter(name="ipRange")
937
- def ip_range(self) -> str:
1144
+ def ip_range(self) -> _builtins.str:
938
1145
  """
939
1146
  The ip range (e.g `192.168.1.0/24`) this rule apply to.
940
1147
  """
941
1148
  return pulumi.get(self, "ip_range")
942
1149
 
943
- @property
1150
+ @_builtins.property
944
1151
  @pulumi.getter
945
- def port(self) -> int:
1152
+ def port(self) -> _builtins.int:
946
1153
  """
947
1154
  The port this rule apply to. If no port is specified, rule will apply to all port.
948
1155
  """
949
1156
  return pulumi.get(self, "port")
950
1157
 
951
- @property
1158
+ @_builtins.property
952
1159
  @pulumi.getter(name="portRange")
953
- def port_range(self) -> str:
1160
+ def port_range(self) -> _builtins.str:
954
1161
  """
955
1162
  The port range (e.g `22-23`) this rule applies to.
956
1163
  If no `port` nor `port_range` are specified, rule will apply to all port.
@@ -958,9 +1165,9 @@ class GetSecurityGroupInboundRuleResult(dict):
958
1165
  """
959
1166
  return pulumi.get(self, "port_range")
960
1167
 
961
- @property
1168
+ @_builtins.property
962
1169
  @pulumi.getter
963
- def protocol(self) -> str:
1170
+ def protocol(self) -> _builtins.str:
964
1171
  """
965
1172
  The protocol this rule apply to. Possible values are: `TCP`, `UDP`, `ICMP` or `ANY`.
966
1173
  """
@@ -970,21 +1177,21 @@ class GetSecurityGroupInboundRuleResult(dict):
970
1177
  @pulumi.output_type
971
1178
  class GetSecurityGroupOutboundRuleResult(dict):
972
1179
  def __init__(__self__, *,
973
- action: str,
974
- ip: str,
975
- ip_range: str,
976
- port: int,
977
- port_range: str,
978
- protocol: str):
979
- """
980
- :param str action: The action to take when rule match. Possible values are: `accept` or `drop`.
981
- :param str ip: The ip this rule apply to.
982
- :param str ip_range: The ip range (e.g `192.168.1.0/24`) this rule apply to.
983
- :param int port: The port this rule apply to. If no port is specified, rule will apply to all port.
984
- :param str port_range: The port range (e.g `22-23`) this rule applies to.
1180
+ action: _builtins.str,
1181
+ ip: _builtins.str,
1182
+ ip_range: _builtins.str,
1183
+ port: _builtins.int,
1184
+ port_range: _builtins.str,
1185
+ protocol: _builtins.str):
1186
+ """
1187
+ :param _builtins.str action: The action to take when rule match. Possible values are: `accept` or `drop`.
1188
+ :param _builtins.str ip: The ip this rule apply to.
1189
+ :param _builtins.str ip_range: The ip range (e.g `192.168.1.0/24`) this rule apply to.
1190
+ :param _builtins.int port: The port this rule apply to. If no port is specified, rule will apply to all port.
1191
+ :param _builtins.str port_range: The port range (e.g `22-23`) this rule applies to.
985
1192
  If no `port` nor `port_range` are specified, rule will apply to all port.
986
1193
  Only one of `port` and `port_range` should be specified.
987
- :param str protocol: The protocol this rule apply to. Possible values are: `TCP`, `UDP`, `ICMP` or `ANY`.
1194
+ :param _builtins.str protocol: The protocol this rule apply to. Possible values are: `TCP`, `UDP`, `ICMP` or `ANY`.
988
1195
  """
989
1196
  pulumi.set(__self__, "action", action)
990
1197
  pulumi.set(__self__, "ip", ip)
@@ -993,41 +1200,41 @@ class GetSecurityGroupOutboundRuleResult(dict):
993
1200
  pulumi.set(__self__, "port_range", port_range)
994
1201
  pulumi.set(__self__, "protocol", protocol)
995
1202
 
996
- @property
1203
+ @_builtins.property
997
1204
  @pulumi.getter
998
- def action(self) -> str:
1205
+ def action(self) -> _builtins.str:
999
1206
  """
1000
1207
  The action to take when rule match. Possible values are: `accept` or `drop`.
1001
1208
  """
1002
1209
  return pulumi.get(self, "action")
1003
1210
 
1004
- @property
1211
+ @_builtins.property
1005
1212
  @pulumi.getter
1006
- def ip(self) -> str:
1213
+ def ip(self) -> _builtins.str:
1007
1214
  """
1008
1215
  The ip this rule apply to.
1009
1216
  """
1010
1217
  return pulumi.get(self, "ip")
1011
1218
 
1012
- @property
1219
+ @_builtins.property
1013
1220
  @pulumi.getter(name="ipRange")
1014
- def ip_range(self) -> str:
1221
+ def ip_range(self) -> _builtins.str:
1015
1222
  """
1016
1223
  The ip range (e.g `192.168.1.0/24`) this rule apply to.
1017
1224
  """
1018
1225
  return pulumi.get(self, "ip_range")
1019
1226
 
1020
- @property
1227
+ @_builtins.property
1021
1228
  @pulumi.getter
1022
- def port(self) -> int:
1229
+ def port(self) -> _builtins.int:
1023
1230
  """
1024
1231
  The port this rule apply to. If no port is specified, rule will apply to all port.
1025
1232
  """
1026
1233
  return pulumi.get(self, "port")
1027
1234
 
1028
- @property
1235
+ @_builtins.property
1029
1236
  @pulumi.getter(name="portRange")
1030
- def port_range(self) -> str:
1237
+ def port_range(self) -> _builtins.str:
1031
1238
  """
1032
1239
  The port range (e.g `22-23`) this rule applies to.
1033
1240
  If no `port` nor `port_range` are specified, rule will apply to all port.
@@ -1035,29 +1242,87 @@ class GetSecurityGroupOutboundRuleResult(dict):
1035
1242
  """
1036
1243
  return pulumi.get(self, "port_range")
1037
1244
 
1038
- @property
1245
+ @_builtins.property
1039
1246
  @pulumi.getter
1040
- def protocol(self) -> str:
1247
+ def protocol(self) -> _builtins.str:
1041
1248
  """
1042
1249
  The protocol this rule apply to. Possible values are: `TCP`, `UDP`, `ICMP` or `ANY`.
1043
1250
  """
1044
1251
  return pulumi.get(self, "protocol")
1045
1252
 
1046
1253
 
1254
+ @pulumi.output_type
1255
+ class GetServerFilesystemResult(dict):
1256
+ def __init__(__self__, *,
1257
+ filesystem_id: _builtins.str,
1258
+ status: _builtins.str):
1259
+ """
1260
+ :param _builtins.str filesystem_id: The filesystem ID attached to the server
1261
+ :param _builtins.str status: The state of the filesystem
1262
+ """
1263
+ pulumi.set(__self__, "filesystem_id", filesystem_id)
1264
+ pulumi.set(__self__, "status", status)
1265
+
1266
+ @_builtins.property
1267
+ @pulumi.getter(name="filesystemId")
1268
+ def filesystem_id(self) -> _builtins.str:
1269
+ """
1270
+ The filesystem ID attached to the server
1271
+ """
1272
+ return pulumi.get(self, "filesystem_id")
1273
+
1274
+ @_builtins.property
1275
+ @pulumi.getter
1276
+ def status(self) -> _builtins.str:
1277
+ """
1278
+ The state of the filesystem
1279
+ """
1280
+ return pulumi.get(self, "status")
1281
+
1282
+
1283
+ @pulumi.output_type
1284
+ class GetServerPrivateIpResult(dict):
1285
+ def __init__(__self__, *,
1286
+ address: _builtins.str,
1287
+ id: _builtins.str):
1288
+ """
1289
+ :param _builtins.str address: The private IP address.
1290
+ :param _builtins.str id: The ID of the IP address resource.
1291
+ """
1292
+ pulumi.set(__self__, "address", address)
1293
+ pulumi.set(__self__, "id", id)
1294
+
1295
+ @_builtins.property
1296
+ @pulumi.getter
1297
+ def address(self) -> _builtins.str:
1298
+ """
1299
+ The private IP address.
1300
+ """
1301
+ return pulumi.get(self, "address")
1302
+
1303
+ @_builtins.property
1304
+ @pulumi.getter
1305
+ def id(self) -> _builtins.str:
1306
+ """
1307
+ The ID of the IP address resource.
1308
+ """
1309
+ return pulumi.get(self, "id")
1310
+
1311
+
1047
1312
  @pulumi.output_type
1048
1313
  class GetServerPrivateNetworkResult(dict):
1049
1314
  def __init__(__self__, *,
1050
- mac_address: str,
1051
- pn_id: str,
1052
- pnic_id: str,
1053
- status: str,
1054
- zone: str):
1055
- """
1056
- :param str mac_address: MAC address of the NIC
1057
- :param str pn_id: The Private Network ID
1058
- :param str pnic_id: The ID of the NIC
1059
- :param str status: The private NIC state
1060
- :param str zone: `zone`) The zone in which the server exists.
1315
+ mac_address: _builtins.str,
1316
+ pn_id: _builtins.str,
1317
+ pnic_id: _builtins.str,
1318
+ status: _builtins.str,
1319
+ zone: _builtins.str):
1320
+ """
1321
+ :param _builtins.str mac_address: MAC address of the NIC
1322
+ :param _builtins.str pn_id: The Private Network ID
1323
+ :param _builtins.str pnic_id: The ID of the NIC
1324
+ :param _builtins.str status: The private NIC state
1325
+ :param _builtins.str zone: `zone`) The zone in which the server exists.
1061
1326
  """
1062
1327
  pulumi.set(__self__, "mac_address", mac_address)
1063
1328
  pulumi.set(__self__, "pn_id", pn_id)
@@ -1065,41 +1330,41 @@ class GetServerPrivateNetworkResult(dict):
1065
1330
  pulumi.set(__self__, "status", status)
1066
1331
  pulumi.set(__self__, "zone", zone)
1067
1332
 
1068
- @property
1333
+ @_builtins.property
1069
1334
  @pulumi.getter(name="macAddress")
1070
- def mac_address(self) -> str:
1335
+ def mac_address(self) -> _builtins.str:
1071
1336
  """
1072
1337
  MAC address of the NIC
1073
1338
  """
1074
1339
  return pulumi.get(self, "mac_address")
1075
1340
 
1076
- @property
1341
+ @_builtins.property
1077
1342
  @pulumi.getter(name="pnId")
1078
- def pn_id(self) -> str:
1343
+ def pn_id(self) -> _builtins.str:
1079
1344
  """
1080
1345
  The Private Network ID
1081
1346
  """
1082
1347
  return pulumi.get(self, "pn_id")
1083
1348
 
1084
- @property
1349
+ @_builtins.property
1085
1350
  @pulumi.getter(name="pnicId")
1086
- def pnic_id(self) -> str:
1351
+ def pnic_id(self) -> _builtins.str:
1087
1352
  """
1088
1353
  The ID of the NIC
1089
1354
  """
1090
1355
  return pulumi.get(self, "pnic_id")
1091
1356
 
1092
- @property
1357
+ @_builtins.property
1093
1358
  @pulumi.getter
1094
- def status(self) -> str:
1359
+ def status(self) -> _builtins.str:
1095
1360
  """
1096
1361
  The private NIC state
1097
1362
  """
1098
1363
  return pulumi.get(self, "status")
1099
1364
 
1100
- @property
1365
+ @_builtins.property
1101
1366
  @pulumi.getter
1102
- def zone(self) -> str:
1367
+ def zone(self) -> _builtins.str:
1103
1368
  """
1104
1369
  `zone`) The zone in which the server exists.
1105
1370
  """
@@ -1109,50 +1374,105 @@ class GetServerPrivateNetworkResult(dict):
1109
1374
  @pulumi.output_type
1110
1375
  class GetServerPublicIpResult(dict):
1111
1376
  def __init__(__self__, *,
1112
- address: str,
1113
- id: str):
1114
- """
1115
- :param str address: The address of the IP
1116
- :param str id: The ID of the IP
1377
+ address: _builtins.str,
1378
+ dynamic: _builtins.bool,
1379
+ family: _builtins.str,
1380
+ gateway: _builtins.str,
1381
+ id: _builtins.str,
1382
+ netmask: _builtins.str,
1383
+ provisioning_mode: _builtins.str):
1384
+ """
1385
+ :param _builtins.str address: The private IP address.
1386
+ :param _builtins.bool dynamic: Whether the IP is dynamic
1387
+ :param _builtins.str family: IP address family (inet or inet6)
1388
+ :param _builtins.str gateway: Gateway's IP address
1389
+ :param _builtins.str id: The ID of the IP address resource.
1390
+ :param _builtins.str netmask: CIDR netmask
1391
+ :param _builtins.str provisioning_mode: Provisioning mode of the IP address
1117
1392
  """
1118
1393
  pulumi.set(__self__, "address", address)
1394
+ pulumi.set(__self__, "dynamic", dynamic)
1395
+ pulumi.set(__self__, "family", family)
1396
+ pulumi.set(__self__, "gateway", gateway)
1119
1397
  pulumi.set(__self__, "id", id)
1398
+ pulumi.set(__self__, "netmask", netmask)
1399
+ pulumi.set(__self__, "provisioning_mode", provisioning_mode)
1120
1400
 
1121
- @property
1401
+ @_builtins.property
1122
1402
  @pulumi.getter
1123
- def address(self) -> str:
1403
+ def address(self) -> _builtins.str:
1124
1404
  """
1125
- The address of the IP
1405
+ The private IP address.
1126
1406
  """
1127
1407
  return pulumi.get(self, "address")
1128
1408
 
1129
- @property
1409
+ @_builtins.property
1130
1410
  @pulumi.getter
1131
- def id(self) -> str:
1411
+ def dynamic(self) -> _builtins.bool:
1132
1412
  """
1133
- The ID of the IP
1413
+ Whether the IP is dynamic
1414
+ """
1415
+ return pulumi.get(self, "dynamic")
1416
+
1417
+ @_builtins.property
1418
+ @pulumi.getter
1419
+ def family(self) -> _builtins.str:
1420
+ """
1421
+ IP address family (inet or inet6)
1422
+ """
1423
+ return pulumi.get(self, "family")
1424
+
1425
+ @_builtins.property
1426
+ @pulumi.getter
1427
+ def gateway(self) -> _builtins.str:
1428
+ """
1429
+ Gateway's IP address
1430
+ """
1431
+ return pulumi.get(self, "gateway")
1432
+
1433
+ @_builtins.property
1434
+ @pulumi.getter
1435
+ def id(self) -> _builtins.str:
1436
+ """
1437
+ The ID of the IP address resource.
1134
1438
  """
1135
1439
  return pulumi.get(self, "id")
1136
1440
 
1441
+ @_builtins.property
1442
+ @pulumi.getter
1443
+ def netmask(self) -> _builtins.str:
1444
+ """
1445
+ CIDR netmask
1446
+ """
1447
+ return pulumi.get(self, "netmask")
1448
+
1449
+ @_builtins.property
1450
+ @pulumi.getter(name="provisioningMode")
1451
+ def provisioning_mode(self) -> _builtins.str:
1452
+ """
1453
+ Provisioning mode of the IP address
1454
+ """
1455
+ return pulumi.get(self, "provisioning_mode")
1456
+
1137
1457
 
1138
1458
  @pulumi.output_type
1139
1459
  class GetServerRootVolumeResult(dict):
1140
1460
  def __init__(__self__, *,
1141
- boot: bool,
1142
- delete_on_termination: bool,
1143
- name: str,
1144
- sbs_iops: int,
1145
- size_in_gb: int,
1146
- volume_id: str,
1147
- volume_type: str):
1148
- """
1149
- :param bool boot: Set the volume where the boot the server
1150
- :param bool delete_on_termination: Forces deletion of the root volume on instance termination.
1151
- :param str name: The server name. Only one of `name` and `server_id` should be specified.
1152
- :param int sbs_iops: SBS Volume IOPS, only with volume_type as sbs_volume
1153
- :param int size_in_gb: Size of the root volume in gigabytes.
1154
- :param str volume_id: The volume ID of the root volume of the server.
1155
- :param str volume_type: Volume type of the root volume
1461
+ boot: _builtins.bool,
1462
+ delete_on_termination: _builtins.bool,
1463
+ name: _builtins.str,
1464
+ sbs_iops: _builtins.int,
1465
+ size_in_gb: _builtins.int,
1466
+ volume_id: _builtins.str,
1467
+ volume_type: _builtins.str):
1468
+ """
1469
+ :param _builtins.bool boot: Set the volume where the boot the server
1470
+ :param _builtins.bool delete_on_termination: Forces deletion of the root volume on instance termination.
1471
+ :param _builtins.str name: The server name. Only one of `name` and `server_id` should be specified.
1472
+ :param _builtins.int sbs_iops: SBS Volume IOPS, only with volume_type as sbs_volume
1473
+ :param _builtins.int size_in_gb: Size of the root volume in gigabytes.
1474
+ :param _builtins.str volume_id: The volume ID of the root volume of the server.
1475
+ :param _builtins.str volume_type: Volume type of the root volume
1156
1476
  """
1157
1477
  pulumi.set(__self__, "boot", boot)
1158
1478
  pulumi.set(__self__, "delete_on_termination", delete_on_termination)
@@ -1162,261 +1482,353 @@ class GetServerRootVolumeResult(dict):
1162
1482
  pulumi.set(__self__, "volume_id", volume_id)
1163
1483
  pulumi.set(__self__, "volume_type", volume_type)
1164
1484
 
1165
- @property
1485
+ @_builtins.property
1166
1486
  @pulumi.getter
1167
- def boot(self) -> bool:
1487
+ def boot(self) -> _builtins.bool:
1168
1488
  """
1169
1489
  Set the volume where the boot the server
1170
1490
  """
1171
1491
  return pulumi.get(self, "boot")
1172
1492
 
1173
- @property
1493
+ @_builtins.property
1174
1494
  @pulumi.getter(name="deleteOnTermination")
1175
- def delete_on_termination(self) -> bool:
1495
+ def delete_on_termination(self) -> _builtins.bool:
1176
1496
  """
1177
1497
  Forces deletion of the root volume on instance termination.
1178
1498
  """
1179
1499
  return pulumi.get(self, "delete_on_termination")
1180
1500
 
1181
- @property
1501
+ @_builtins.property
1182
1502
  @pulumi.getter
1183
- def name(self) -> str:
1503
+ def name(self) -> _builtins.str:
1184
1504
  """
1185
1505
  The server name. Only one of `name` and `server_id` should be specified.
1186
1506
  """
1187
1507
  return pulumi.get(self, "name")
1188
1508
 
1189
- @property
1509
+ @_builtins.property
1190
1510
  @pulumi.getter(name="sbsIops")
1191
- def sbs_iops(self) -> int:
1511
+ def sbs_iops(self) -> _builtins.int:
1192
1512
  """
1193
1513
  SBS Volume IOPS, only with volume_type as sbs_volume
1194
1514
  """
1195
1515
  return pulumi.get(self, "sbs_iops")
1196
1516
 
1197
- @property
1517
+ @_builtins.property
1198
1518
  @pulumi.getter(name="sizeInGb")
1199
- def size_in_gb(self) -> int:
1519
+ def size_in_gb(self) -> _builtins.int:
1200
1520
  """
1201
1521
  Size of the root volume in gigabytes.
1202
1522
  """
1203
1523
  return pulumi.get(self, "size_in_gb")
1204
1524
 
1205
- @property
1525
+ @_builtins.property
1206
1526
  @pulumi.getter(name="volumeId")
1207
- def volume_id(self) -> str:
1527
+ def volume_id(self) -> _builtins.str:
1208
1528
  """
1209
1529
  The volume ID of the root volume of the server.
1210
1530
  """
1211
1531
  return pulumi.get(self, "volume_id")
1212
1532
 
1213
- @property
1533
+ @_builtins.property
1214
1534
  @pulumi.getter(name="volumeType")
1215
- def volume_type(self) -> str:
1535
+ def volume_type(self) -> _builtins.str:
1216
1536
  """
1217
1537
  Volume type of the root volume
1218
1538
  """
1219
1539
  return pulumi.get(self, "volume_type")
1220
1540
 
1221
1541
 
1542
+ @pulumi.output_type
1543
+ class GetServerTypeCapabilityResult(dict):
1544
+ def __init__(__self__, *,
1545
+ boot_types: Sequence[_builtins.str],
1546
+ max_file_systems: _builtins.int):
1547
+ """
1548
+ :param Sequence[_builtins.str] boot_types: The boot types allowed for the server type.
1549
+ :param _builtins.int max_file_systems: The maximum number of file systems that can be attached on the server type.
1550
+ """
1551
+ pulumi.set(__self__, "boot_types", boot_types)
1552
+ pulumi.set(__self__, "max_file_systems", max_file_systems)
1553
+
1554
+ @_builtins.property
1555
+ @pulumi.getter(name="bootTypes")
1556
+ def boot_types(self) -> Sequence[_builtins.str]:
1557
+ """
1558
+ The boot types allowed for the server type.
1559
+ """
1560
+ return pulumi.get(self, "boot_types")
1561
+
1562
+ @_builtins.property
1563
+ @pulumi.getter(name="maxFileSystems")
1564
+ def max_file_systems(self) -> _builtins.int:
1565
+ """
1566
+ The maximum number of file systems that can be attached on the server type.
1567
+ """
1568
+ return pulumi.get(self, "max_file_systems")
1569
+
1570
+
1571
+ @pulumi.output_type
1572
+ class GetServerTypeNetworkResult(dict):
1573
+ def __init__(__self__, *,
1574
+ block_bandwidth: _builtins.int,
1575
+ internal_bandwidth: _builtins.int,
1576
+ public_bandwidth: _builtins.int):
1577
+ """
1578
+ :param _builtins.int block_bandwidth: The block bandwidth of the server type (in bytes/second).
1579
+ :param _builtins.int internal_bandwidth: The internal bandwidth of the server type (in bytes/second).
1580
+ :param _builtins.int public_bandwidth: The public bandwidth of the server type (in bytes/second).
1581
+ """
1582
+ pulumi.set(__self__, "block_bandwidth", block_bandwidth)
1583
+ pulumi.set(__self__, "internal_bandwidth", internal_bandwidth)
1584
+ pulumi.set(__self__, "public_bandwidth", public_bandwidth)
1585
+
1586
+ @_builtins.property
1587
+ @pulumi.getter(name="blockBandwidth")
1588
+ def block_bandwidth(self) -> _builtins.int:
1589
+ """
1590
+ The block bandwidth of the server type (in bytes/second).
1591
+ """
1592
+ return pulumi.get(self, "block_bandwidth")
1593
+
1594
+ @_builtins.property
1595
+ @pulumi.getter(name="internalBandwidth")
1596
+ def internal_bandwidth(self) -> _builtins.int:
1597
+ """
1598
+ The internal bandwidth of the server type (in bytes/second).
1599
+ """
1600
+ return pulumi.get(self, "internal_bandwidth")
1601
+
1602
+ @_builtins.property
1603
+ @pulumi.getter(name="publicBandwidth")
1604
+ def public_bandwidth(self) -> _builtins.int:
1605
+ """
1606
+ The public bandwidth of the server type (in bytes/second).
1607
+ """
1608
+ return pulumi.get(self, "public_bandwidth")
1609
+
1610
+
1611
+ @pulumi.output_type
1612
+ class GetServerTypeVolumeResult(dict):
1613
+ def __init__(__self__, *,
1614
+ block_storage: _builtins.bool,
1615
+ max_size_per_local_volume: _builtins.int,
1616
+ max_size_total: _builtins.int,
1617
+ min_size_per_local_volume: _builtins.int,
1618
+ min_size_total: _builtins.int,
1619
+ scratch_storage_max_size: _builtins.int):
1620
+ """
1621
+ :param _builtins.bool block_storage: Whether block storage is allowed on the server type.
1622
+ :param _builtins.int max_size_per_local_volume: The maximum size in bytes per local volume allowed on the server type.
1623
+ :param _builtins.int max_size_total: The maximum total size in bytes of volumes allowed on the server type.
1624
+ :param _builtins.int min_size_per_local_volume: The minimum size in bytes per local volume allowed on the server type.
1625
+ :param _builtins.int min_size_total: The minimum total size in bytes of volumes allowed on the server type.
1626
+ :param _builtins.int scratch_storage_max_size: The maximum size in bytes of the scratch volume allowed on the server type.
1627
+ """
1628
+ pulumi.set(__self__, "block_storage", block_storage)
1629
+ pulumi.set(__self__, "max_size_per_local_volume", max_size_per_local_volume)
1630
+ pulumi.set(__self__, "max_size_total", max_size_total)
1631
+ pulumi.set(__self__, "min_size_per_local_volume", min_size_per_local_volume)
1632
+ pulumi.set(__self__, "min_size_total", min_size_total)
1633
+ pulumi.set(__self__, "scratch_storage_max_size", scratch_storage_max_size)
1634
+
1635
+ @_builtins.property
1636
+ @pulumi.getter(name="blockStorage")
1637
+ def block_storage(self) -> _builtins.bool:
1638
+ """
1639
+ Whether block storage is allowed on the server type.
1640
+ """
1641
+ return pulumi.get(self, "block_storage")
1642
+
1643
+ @_builtins.property
1644
+ @pulumi.getter(name="maxSizePerLocalVolume")
1645
+ def max_size_per_local_volume(self) -> _builtins.int:
1646
+ """
1647
+ The maximum size in bytes per local volume allowed on the server type.
1648
+ """
1649
+ return pulumi.get(self, "max_size_per_local_volume")
1650
+
1651
+ @_builtins.property
1652
+ @pulumi.getter(name="maxSizeTotal")
1653
+ def max_size_total(self) -> _builtins.int:
1654
+ """
1655
+ The maximum total size in bytes of volumes allowed on the server type.
1656
+ """
1657
+ return pulumi.get(self, "max_size_total")
1658
+
1659
+ @_builtins.property
1660
+ @pulumi.getter(name="minSizePerLocalVolume")
1661
+ def min_size_per_local_volume(self) -> _builtins.int:
1662
+ """
1663
+ The minimum size in bytes per local volume allowed on the server type.
1664
+ """
1665
+ return pulumi.get(self, "min_size_per_local_volume")
1666
+
1667
+ @_builtins.property
1668
+ @pulumi.getter(name="minSizeTotal")
1669
+ def min_size_total(self) -> _builtins.int:
1670
+ """
1671
+ The minimum total size in bytes of volumes allowed on the server type.
1672
+ """
1673
+ return pulumi.get(self, "min_size_total")
1674
+
1675
+ @_builtins.property
1676
+ @pulumi.getter(name="scratchStorageMaxSize")
1677
+ def scratch_storage_max_size(self) -> _builtins.int:
1678
+ """
1679
+ The maximum size in bytes of the scratch volume allowed on the server type.
1680
+ """
1681
+ return pulumi.get(self, "scratch_storage_max_size")
1682
+
1683
+
1222
1684
  @pulumi.output_type
1223
1685
  class GetServersServerResult(dict):
1224
1686
  def __init__(__self__, *,
1225
- boot_type: str,
1226
- bootscript_id: str,
1227
- enable_dynamic_ip: bool,
1228
- enable_ipv6: bool,
1229
- id: str,
1230
- image: str,
1231
- ipv6_address: str,
1232
- ipv6_gateway: str,
1233
- ipv6_prefix_length: int,
1234
- name: str,
1235
- organization_id: str,
1236
- placement_group_id: str,
1237
- placement_group_policy_respected: bool,
1238
- private_ip: str,
1239
- project_id: str,
1240
- public_ip: str,
1687
+ boot_type: _builtins.str,
1688
+ bootscript_id: _builtins.str,
1689
+ enable_dynamic_ip: _builtins.bool,
1690
+ id: _builtins.str,
1691
+ image: _builtins.str,
1692
+ name: _builtins.str,
1693
+ organization_id: _builtins.str,
1694
+ placement_group_id: _builtins.str,
1695
+ placement_group_policy_respected: _builtins.bool,
1696
+ private_ips: Sequence['outputs.GetServersServerPrivateIpResult'],
1697
+ project_id: _builtins.str,
1241
1698
  public_ips: Sequence['outputs.GetServersServerPublicIpResult'],
1242
- routed_ip_enabled: bool,
1243
- security_group_id: str,
1244
- state: str,
1245
- tags: Sequence[str],
1246
- type: str,
1247
- zone: str):
1248
- """
1249
- :param str boot_type: The boot Type of the server. Possible values are: `local`, `bootscript` or `rescue`.
1250
- :param bool enable_dynamic_ip: If true a dynamic IP will be attached to the server.
1251
- :param bool enable_ipv6: Determines if IPv6 is enabled for the server.
1252
- :param str id: The ID of the IP
1253
- :param str image: The UUID or the label of the base image used by the server.
1254
- :param str ipv6_address: The default ipv6 address routed to the server. ( Only set when enable_ipv6 is set to true )
1255
- :param str ipv6_gateway: The ipv6 gateway address. ( Only set when enable_ipv6 is set to true )
1256
- :param int ipv6_prefix_length: The prefix length of the ipv6 subnet routed to the server. ( Only set when enable_ipv6 is set to true )
1257
- :param str name: The server name used as filter. Servers with a name like it are listed.
1258
- :param str organization_id: The organization ID the server is associated with.
1259
- :param str placement_group_id: The [placement group](https://developers.scaleway.com/en/products/instance/api/#placement-groups-d8f653) the server is attached to.
1260
- :param str private_ip: The Scaleway internal IP address of the server.
1261
- :param str project_id: The ID of the project the server is associated with.
1262
- :param str public_ip: The public IP address of the server.
1699
+ security_group_id: _builtins.str,
1700
+ state: _builtins.str,
1701
+ tags: Sequence[_builtins.str],
1702
+ type: _builtins.str,
1703
+ zone: Optional[_builtins.str] = None):
1704
+ """
1705
+ :param _builtins.str boot_type: The boot Type of the server. Possible values are: `local`, `bootscript` or `rescue`.
1706
+ :param _builtins.str bootscript_id: UUID of the bootscript
1707
+ :param _builtins.bool enable_dynamic_ip: If true a dynamic IP will be attached to the server.
1708
+ :param _builtins.str id: The ID of the IP
1709
+ :param _builtins.str image: The UUID or the label of the base image used by the server.
1710
+ :param _builtins.str name: The server name used as filter. Servers with a name like it are listed.
1711
+ :param _builtins.str organization_id: The organization ID the server is associated with.
1712
+ :param _builtins.str placement_group_id: The [placement group](https://developers.scaleway.com/en/products/instance/api/#placement-groups-d8f653) the server is attached to.
1713
+ :param _builtins.bool placement_group_policy_respected: Whether the placement group policy respected or not
1714
+ :param Sequence['GetServersServerPrivateIpArgs'] private_ips: The list of private IPv4 and IPv6 addresses associated with the server.
1715
+ :param _builtins.str project_id: The ID of the project the server is associated with.
1263
1716
  :param Sequence['GetServersServerPublicIpArgs'] public_ips: The list of public IPs of the server
1264
- :param bool routed_ip_enabled: True if the server support routed ip only.
1265
- :param str security_group_id: The [security group](https://developers.scaleway.com/en/products/instance/api/#security-groups-8d7f89) the server is attached to.
1266
- :param str state: The state of the server. Possible values are: `started`, `stopped` or `standby`.
1267
- :param Sequence[str] tags: List of tags used as filter. Servers with these exact tags are listed.
1268
- :param str type: The commercial type of the server.
1269
- :param str zone: `zone`) The zone in which servers exist.
1717
+ :param _builtins.str security_group_id: The [security group](https://developers.scaleway.com/en/products/instance/api/#security-groups-8d7f89) the server is attached to.
1718
+ :param _builtins.str state: The state of the server. Possible values are: `started`, `stopped` or `standby`.
1719
+ :param Sequence[_builtins.str] tags: List of tags used as filter. Servers with these exact tags are listed.
1720
+ :param _builtins.str type: The commercial type of the server.
1721
+ :param _builtins.str zone: `zone`) The zone in which servers exist.
1270
1722
  """
1271
1723
  pulumi.set(__self__, "boot_type", boot_type)
1272
1724
  pulumi.set(__self__, "bootscript_id", bootscript_id)
1273
1725
  pulumi.set(__self__, "enable_dynamic_ip", enable_dynamic_ip)
1274
- pulumi.set(__self__, "enable_ipv6", enable_ipv6)
1275
1726
  pulumi.set(__self__, "id", id)
1276
1727
  pulumi.set(__self__, "image", image)
1277
- pulumi.set(__self__, "ipv6_address", ipv6_address)
1278
- pulumi.set(__self__, "ipv6_gateway", ipv6_gateway)
1279
- pulumi.set(__self__, "ipv6_prefix_length", ipv6_prefix_length)
1280
1728
  pulumi.set(__self__, "name", name)
1281
1729
  pulumi.set(__self__, "organization_id", organization_id)
1282
1730
  pulumi.set(__self__, "placement_group_id", placement_group_id)
1283
1731
  pulumi.set(__self__, "placement_group_policy_respected", placement_group_policy_respected)
1284
- pulumi.set(__self__, "private_ip", private_ip)
1732
+ pulumi.set(__self__, "private_ips", private_ips)
1285
1733
  pulumi.set(__self__, "project_id", project_id)
1286
- pulumi.set(__self__, "public_ip", public_ip)
1287
1734
  pulumi.set(__self__, "public_ips", public_ips)
1288
- pulumi.set(__self__, "routed_ip_enabled", routed_ip_enabled)
1289
1735
  pulumi.set(__self__, "security_group_id", security_group_id)
1290
1736
  pulumi.set(__self__, "state", state)
1291
1737
  pulumi.set(__self__, "tags", tags)
1292
1738
  pulumi.set(__self__, "type", type)
1293
- pulumi.set(__self__, "zone", zone)
1739
+ if zone is not None:
1740
+ pulumi.set(__self__, "zone", zone)
1294
1741
 
1295
- @property
1742
+ @_builtins.property
1296
1743
  @pulumi.getter(name="bootType")
1297
- def boot_type(self) -> str:
1744
+ def boot_type(self) -> _builtins.str:
1298
1745
  """
1299
1746
  The boot Type of the server. Possible values are: `local`, `bootscript` or `rescue`.
1300
1747
  """
1301
1748
  return pulumi.get(self, "boot_type")
1302
1749
 
1303
- @property
1750
+ @_builtins.property
1304
1751
  @pulumi.getter(name="bootscriptId")
1305
1752
  @_utilities.deprecated("""bootscript are not supported""")
1306
- def bootscript_id(self) -> str:
1753
+ def bootscript_id(self) -> _builtins.str:
1754
+ """
1755
+ UUID of the bootscript
1756
+ """
1307
1757
  return pulumi.get(self, "bootscript_id")
1308
1758
 
1309
- @property
1759
+ @_builtins.property
1310
1760
  @pulumi.getter(name="enableDynamicIp")
1311
- def enable_dynamic_ip(self) -> bool:
1761
+ def enable_dynamic_ip(self) -> _builtins.bool:
1312
1762
  """
1313
1763
  If true a dynamic IP will be attached to the server.
1314
1764
  """
1315
1765
  return pulumi.get(self, "enable_dynamic_ip")
1316
1766
 
1317
- @property
1318
- @pulumi.getter(name="enableIpv6")
1319
- def enable_ipv6(self) -> bool:
1320
- """
1321
- Determines if IPv6 is enabled for the server.
1322
- """
1323
- return pulumi.get(self, "enable_ipv6")
1324
-
1325
- @property
1767
+ @_builtins.property
1326
1768
  @pulumi.getter
1327
- def id(self) -> str:
1769
+ def id(self) -> _builtins.str:
1328
1770
  """
1329
1771
  The ID of the IP
1330
1772
  """
1331
1773
  return pulumi.get(self, "id")
1332
1774
 
1333
- @property
1775
+ @_builtins.property
1334
1776
  @pulumi.getter
1335
- def image(self) -> str:
1777
+ def image(self) -> _builtins.str:
1336
1778
  """
1337
1779
  The UUID or the label of the base image used by the server.
1338
1780
  """
1339
1781
  return pulumi.get(self, "image")
1340
1782
 
1341
- @property
1342
- @pulumi.getter(name="ipv6Address")
1343
- def ipv6_address(self) -> str:
1344
- """
1345
- The default ipv6 address routed to the server. ( Only set when enable_ipv6 is set to true )
1346
- """
1347
- return pulumi.get(self, "ipv6_address")
1348
-
1349
- @property
1350
- @pulumi.getter(name="ipv6Gateway")
1351
- def ipv6_gateway(self) -> str:
1352
- """
1353
- The ipv6 gateway address. ( Only set when enable_ipv6 is set to true )
1354
- """
1355
- return pulumi.get(self, "ipv6_gateway")
1356
-
1357
- @property
1358
- @pulumi.getter(name="ipv6PrefixLength")
1359
- def ipv6_prefix_length(self) -> int:
1360
- """
1361
- The prefix length of the ipv6 subnet routed to the server. ( Only set when enable_ipv6 is set to true )
1362
- """
1363
- return pulumi.get(self, "ipv6_prefix_length")
1364
-
1365
- @property
1783
+ @_builtins.property
1366
1784
  @pulumi.getter
1367
- def name(self) -> str:
1785
+ def name(self) -> _builtins.str:
1368
1786
  """
1369
1787
  The server name used as filter. Servers with a name like it are listed.
1370
1788
  """
1371
1789
  return pulumi.get(self, "name")
1372
1790
 
1373
- @property
1791
+ @_builtins.property
1374
1792
  @pulumi.getter(name="organizationId")
1375
- def organization_id(self) -> str:
1793
+ def organization_id(self) -> _builtins.str:
1376
1794
  """
1377
1795
  The organization ID the server is associated with.
1378
1796
  """
1379
1797
  return pulumi.get(self, "organization_id")
1380
1798
 
1381
- @property
1799
+ @_builtins.property
1382
1800
  @pulumi.getter(name="placementGroupId")
1383
- def placement_group_id(self) -> str:
1801
+ def placement_group_id(self) -> _builtins.str:
1384
1802
  """
1385
1803
  The [placement group](https://developers.scaleway.com/en/products/instance/api/#placement-groups-d8f653) the server is attached to.
1386
1804
  """
1387
1805
  return pulumi.get(self, "placement_group_id")
1388
1806
 
1389
- @property
1807
+ @_builtins.property
1390
1808
  @pulumi.getter(name="placementGroupPolicyRespected")
1391
- def placement_group_policy_respected(self) -> bool:
1809
+ def placement_group_policy_respected(self) -> _builtins.bool:
1810
+ """
1811
+ Whether the placement group policy respected or not
1812
+ """
1392
1813
  return pulumi.get(self, "placement_group_policy_respected")
1393
1814
 
1394
- @property
1395
- @pulumi.getter(name="privateIp")
1396
- def private_ip(self) -> str:
1815
+ @_builtins.property
1816
+ @pulumi.getter(name="privateIps")
1817
+ def private_ips(self) -> Sequence['outputs.GetServersServerPrivateIpResult']:
1397
1818
  """
1398
- The Scaleway internal IP address of the server.
1819
+ The list of private IPv4 and IPv6 addresses associated with the server.
1399
1820
  """
1400
- return pulumi.get(self, "private_ip")
1821
+ return pulumi.get(self, "private_ips")
1401
1822
 
1402
- @property
1823
+ @_builtins.property
1403
1824
  @pulumi.getter(name="projectId")
1404
- def project_id(self) -> str:
1825
+ def project_id(self) -> _builtins.str:
1405
1826
  """
1406
1827
  The ID of the project the server is associated with.
1407
1828
  """
1408
1829
  return pulumi.get(self, "project_id")
1409
1830
 
1410
- @property
1411
- @pulumi.getter(name="publicIp")
1412
- @_utilities.deprecated("""Use public_ips instead""")
1413
- def public_ip(self) -> str:
1414
- """
1415
- The public IP address of the server.
1416
- """
1417
- return pulumi.get(self, "public_ip")
1418
-
1419
- @property
1831
+ @_builtins.property
1420
1832
  @pulumi.getter(name="publicIps")
1421
1833
  def public_ips(self) -> Sequence['outputs.GetServersServerPublicIpResult']:
1422
1834
  """
@@ -1424,78 +1836,99 @@ class GetServersServerResult(dict):
1424
1836
  """
1425
1837
  return pulumi.get(self, "public_ips")
1426
1838
 
1427
- @property
1428
- @pulumi.getter(name="routedIpEnabled")
1429
- def routed_ip_enabled(self) -> bool:
1430
- """
1431
- True if the server support routed ip only.
1432
- """
1433
- return pulumi.get(self, "routed_ip_enabled")
1434
-
1435
- @property
1839
+ @_builtins.property
1436
1840
  @pulumi.getter(name="securityGroupId")
1437
- def security_group_id(self) -> str:
1841
+ def security_group_id(self) -> _builtins.str:
1438
1842
  """
1439
1843
  The [security group](https://developers.scaleway.com/en/products/instance/api/#security-groups-8d7f89) the server is attached to.
1440
1844
  """
1441
1845
  return pulumi.get(self, "security_group_id")
1442
1846
 
1443
- @property
1847
+ @_builtins.property
1444
1848
  @pulumi.getter
1445
- def state(self) -> str:
1849
+ def state(self) -> _builtins.str:
1446
1850
  """
1447
1851
  The state of the server. Possible values are: `started`, `stopped` or `standby`.
1448
1852
  """
1449
1853
  return pulumi.get(self, "state")
1450
1854
 
1451
- @property
1855
+ @_builtins.property
1452
1856
  @pulumi.getter
1453
- def tags(self) -> Sequence[str]:
1857
+ def tags(self) -> Sequence[_builtins.str]:
1454
1858
  """
1455
1859
  List of tags used as filter. Servers with these exact tags are listed.
1456
1860
  """
1457
1861
  return pulumi.get(self, "tags")
1458
1862
 
1459
- @property
1863
+ @_builtins.property
1460
1864
  @pulumi.getter
1461
- def type(self) -> str:
1865
+ def type(self) -> _builtins.str:
1462
1866
  """
1463
1867
  The commercial type of the server.
1464
1868
  """
1465
1869
  return pulumi.get(self, "type")
1466
1870
 
1467
- @property
1871
+ @_builtins.property
1468
1872
  @pulumi.getter
1469
- def zone(self) -> str:
1873
+ def zone(self) -> Optional[_builtins.str]:
1470
1874
  """
1471
1875
  `zone`) The zone in which servers exist.
1472
1876
  """
1473
1877
  return pulumi.get(self, "zone")
1474
1878
 
1475
1879
 
1880
+ @pulumi.output_type
1881
+ class GetServersServerPrivateIpResult(dict):
1882
+ def __init__(__self__, *,
1883
+ address: _builtins.str,
1884
+ id: _builtins.str):
1885
+ """
1886
+ :param _builtins.str address: The address of the IP
1887
+ :param _builtins.str id: The ID of the IP
1888
+ """
1889
+ pulumi.set(__self__, "address", address)
1890
+ pulumi.set(__self__, "id", id)
1891
+
1892
+ @_builtins.property
1893
+ @pulumi.getter
1894
+ def address(self) -> _builtins.str:
1895
+ """
1896
+ The address of the IP
1897
+ """
1898
+ return pulumi.get(self, "address")
1899
+
1900
+ @_builtins.property
1901
+ @pulumi.getter
1902
+ def id(self) -> _builtins.str:
1903
+ """
1904
+ The ID of the IP
1905
+ """
1906
+ return pulumi.get(self, "id")
1907
+
1908
+
1476
1909
  @pulumi.output_type
1477
1910
  class GetServersServerPublicIpResult(dict):
1478
1911
  def __init__(__self__, *,
1479
- address: str,
1480
- id: str):
1912
+ address: _builtins.str,
1913
+ id: _builtins.str):
1481
1914
  """
1482
- :param str address: The address of the IP
1483
- :param str id: The ID of the IP
1915
+ :param _builtins.str address: The address of the IP
1916
+ :param _builtins.str id: The ID of the IP
1484
1917
  """
1485
1918
  pulumi.set(__self__, "address", address)
1486
1919
  pulumi.set(__self__, "id", id)
1487
1920
 
1488
- @property
1921
+ @_builtins.property
1489
1922
  @pulumi.getter
1490
- def address(self) -> str:
1923
+ def address(self) -> _builtins.str:
1491
1924
  """
1492
1925
  The address of the IP
1493
1926
  """
1494
1927
  return pulumi.get(self, "address")
1495
1928
 
1496
- @property
1929
+ @_builtins.property
1497
1930
  @pulumi.getter
1498
- def id(self) -> str:
1931
+ def id(self) -> _builtins.str:
1499
1932
  """
1500
1933
  The ID of the IP
1501
1934
  """
@@ -1505,26 +1938,26 @@ class GetServersServerPublicIpResult(dict):
1505
1938
  @pulumi.output_type
1506
1939
  class GetSnapshotImportResult(dict):
1507
1940
  def __init__(__self__, *,
1508
- bucket: str,
1509
- key: str):
1941
+ bucket: _builtins.str,
1942
+ key: _builtins.str):
1510
1943
  """
1511
- :param str bucket: Bucket containing qcow
1512
- :param str key: Key of the qcow file in the specified bucket
1944
+ :param _builtins.str bucket: Bucket containing qcow
1945
+ :param _builtins.str key: Key of the qcow file in the specified bucket
1513
1946
  """
1514
1947
  pulumi.set(__self__, "bucket", bucket)
1515
1948
  pulumi.set(__self__, "key", key)
1516
1949
 
1517
- @property
1950
+ @_builtins.property
1518
1951
  @pulumi.getter
1519
- def bucket(self) -> str:
1952
+ def bucket(self) -> _builtins.str:
1520
1953
  """
1521
1954
  Bucket containing qcow
1522
1955
  """
1523
1956
  return pulumi.get(self, "bucket")
1524
1957
 
1525
- @property
1958
+ @_builtins.property
1526
1959
  @pulumi.getter
1527
- def key(self) -> str:
1960
+ def key(self) -> _builtins.str:
1528
1961
  """
1529
1962
  Key of the qcow file in the specified bucket
1530
1963
  """