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

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (515) hide show
  1. pulumiverse_scaleway/__init__.py +109 -2
  2. pulumiverse_scaleway/_inputs.py +3936 -2603
  3. pulumiverse_scaleway/_utilities.py +1 -1
  4. pulumiverse_scaleway/account/__init__.py +4 -1
  5. pulumiverse_scaleway/account/get_availability_zones.py +12 -12
  6. pulumiverse_scaleway/account/get_project.py +28 -28
  7. pulumiverse_scaleway/account/get_projects.py +241 -0
  8. pulumiverse_scaleway/account/get_ssh_key.py +34 -34
  9. pulumiverse_scaleway/account/outputs.py +95 -0
  10. pulumiverse_scaleway/account/project.py +72 -71
  11. pulumiverse_scaleway/account/ssh_key.py +107 -106
  12. pulumiverse_scaleway/account_project.py +72 -71
  13. pulumiverse_scaleway/account_ssh_key.py +107 -106
  14. pulumiverse_scaleway/apple_silicon_server.py +334 -201
  15. pulumiverse_scaleway/applesilicon/__init__.py +2 -1
  16. pulumiverse_scaleway/applesilicon/_inputs.py +105 -51
  17. pulumiverse_scaleway/applesilicon/outputs.py +65 -33
  18. pulumiverse_scaleway/applesilicon/server.py +334 -201
  19. pulumiverse_scaleway/audittrail/__init__.py +10 -0
  20. pulumiverse_scaleway/audittrail/get_event.py +410 -0
  21. pulumiverse_scaleway/audittrail/outputs.py +234 -0
  22. pulumiverse_scaleway/autoscaling/__init__.py +13 -0
  23. pulumiverse_scaleway/autoscaling/_inputs.py +558 -0
  24. pulumiverse_scaleway/autoscaling/instance_group.py +807 -0
  25. pulumiverse_scaleway/autoscaling/instance_policy.py +634 -0
  26. pulumiverse_scaleway/autoscaling/instance_template.py +878 -0
  27. pulumiverse_scaleway/autoscaling/outputs.py +438 -0
  28. pulumiverse_scaleway/baremetal_server.py +622 -524
  29. pulumiverse_scaleway/billing/__init__.py +2 -1
  30. pulumiverse_scaleway/billing/get_consumptions.py +19 -15
  31. pulumiverse_scaleway/billing/get_invoices.py +25 -25
  32. pulumiverse_scaleway/billing/outputs.py +96 -96
  33. pulumiverse_scaleway/block/__init__.py +4 -1
  34. pulumiverse_scaleway/block/_inputs.py +125 -0
  35. pulumiverse_scaleway/block/get_snapshot.py +60 -37
  36. pulumiverse_scaleway/block/get_volume.py +38 -38
  37. pulumiverse_scaleway/block/outputs.py +139 -0
  38. pulumiverse_scaleway/block/snapshot.py +272 -98
  39. pulumiverse_scaleway/block/volume.py +145 -144
  40. pulumiverse_scaleway/block_snapshot.py +272 -98
  41. pulumiverse_scaleway/block_volume.py +145 -144
  42. pulumiverse_scaleway/cockpit.py +71 -49
  43. pulumiverse_scaleway/cockpit_alert_manager.py +66 -65
  44. pulumiverse_scaleway/cockpit_grafana_user.py +72 -113
  45. pulumiverse_scaleway/cockpit_source.py +142 -141
  46. pulumiverse_scaleway/cockpit_token.py +84 -83
  47. pulumiverse_scaleway/config/__init__.py +2 -1
  48. pulumiverse_scaleway/config/__init__.pyi +2 -2
  49. pulumiverse_scaleway/config/vars.py +11 -11
  50. pulumiverse_scaleway/container.py +653 -424
  51. pulumiverse_scaleway/container_cron.py +97 -96
  52. pulumiverse_scaleway/container_domain.py +63 -62
  53. pulumiverse_scaleway/container_namespace.py +251 -172
  54. pulumiverse_scaleway/container_token.py +97 -96
  55. pulumiverse_scaleway/container_trigger.py +77 -76
  56. pulumiverse_scaleway/containers/__init__.py +2 -1
  57. pulumiverse_scaleway/containers/_inputs.py +87 -87
  58. pulumiverse_scaleway/containers/container.py +653 -424
  59. pulumiverse_scaleway/containers/cron.py +97 -96
  60. pulumiverse_scaleway/containers/domain.py +63 -62
  61. pulumiverse_scaleway/containers/get_container.py +117 -73
  62. pulumiverse_scaleway/containers/get_namespace.py +56 -45
  63. pulumiverse_scaleway/containers/namespace.py +251 -172
  64. pulumiverse_scaleway/containers/outputs.py +84 -84
  65. pulumiverse_scaleway/containers/token.py +97 -96
  66. pulumiverse_scaleway/containers/trigger.py +77 -76
  67. pulumiverse_scaleway/database.py +81 -80
  68. pulumiverse_scaleway/database_acl.py +148 -39
  69. pulumiverse_scaleway/database_backup.py +124 -123
  70. pulumiverse_scaleway/database_instance.py +531 -436
  71. pulumiverse_scaleway/database_privilege.py +88 -87
  72. pulumiverse_scaleway/database_read_replica.py +60 -59
  73. pulumiverse_scaleway/database_user.py +171 -98
  74. pulumiverse_scaleway/databases/__init__.py +2 -1
  75. pulumiverse_scaleway/databases/_inputs.py +364 -216
  76. pulumiverse_scaleway/databases/acl.py +148 -39
  77. pulumiverse_scaleway/databases/database.py +81 -80
  78. pulumiverse_scaleway/databases/database_backup.py +124 -123
  79. pulumiverse_scaleway/databases/get_acl.py +17 -17
  80. pulumiverse_scaleway/databases/get_database.py +26 -26
  81. pulumiverse_scaleway/databases/get_database_backup.py +46 -46
  82. pulumiverse_scaleway/databases/get_instance.py +95 -73
  83. pulumiverse_scaleway/databases/get_privilege.py +30 -30
  84. pulumiverse_scaleway/databases/instance.py +531 -436
  85. pulumiverse_scaleway/databases/outputs.py +419 -232
  86. pulumiverse_scaleway/databases/privilege.py +88 -87
  87. pulumiverse_scaleway/databases/read_replica.py +60 -59
  88. pulumiverse_scaleway/databases/serverless_database.py +97 -96
  89. pulumiverse_scaleway/databases/snapshot.py +127 -126
  90. pulumiverse_scaleway/databases/user.py +171 -98
  91. pulumiverse_scaleway/datawarehouse/__init__.py +13 -0
  92. pulumiverse_scaleway/datawarehouse/_inputs.py +149 -0
  93. pulumiverse_scaleway/datawarehouse/database.py +338 -0
  94. pulumiverse_scaleway/datawarehouse/deployment.py +821 -0
  95. pulumiverse_scaleway/datawarehouse/outputs.py +113 -0
  96. pulumiverse_scaleway/datawarehouse/user.py +451 -0
  97. pulumiverse_scaleway/domain/__init__.py +2 -1
  98. pulumiverse_scaleway/domain/_inputs.py +661 -661
  99. pulumiverse_scaleway/domain/get_record.py +53 -64
  100. pulumiverse_scaleway/domain/get_zone.py +36 -30
  101. pulumiverse_scaleway/domain/outputs.py +501 -501
  102. pulumiverse_scaleway/domain/record.py +156 -202
  103. pulumiverse_scaleway/domain/registration.py +123 -122
  104. pulumiverse_scaleway/domain/zone.py +108 -107
  105. pulumiverse_scaleway/domain_record.py +156 -202
  106. pulumiverse_scaleway/domain_zone.py +108 -107
  107. pulumiverse_scaleway/edge_services_backend_stage.py +61 -60
  108. pulumiverse_scaleway/edge_services_cache_stage.py +283 -111
  109. pulumiverse_scaleway/edge_services_dns_stage.py +169 -140
  110. pulumiverse_scaleway/edge_services_head_stage.py +37 -36
  111. pulumiverse_scaleway/edge_services_pipeline.py +125 -82
  112. pulumiverse_scaleway/edge_services_plan.py +37 -36
  113. pulumiverse_scaleway/edge_services_route_stage.py +75 -74
  114. pulumiverse_scaleway/edge_services_tls_stage.py +219 -124
  115. pulumiverse_scaleway/edge_services_waf_stage.py +106 -105
  116. pulumiverse_scaleway/elasticmetal/__init__.py +3 -1
  117. pulumiverse_scaleway/elasticmetal/_inputs.py +203 -129
  118. pulumiverse_scaleway/elasticmetal/get_ip.py +70 -54
  119. pulumiverse_scaleway/elasticmetal/get_ips.py +31 -31
  120. pulumiverse_scaleway/elasticmetal/get_offer.py +43 -41
  121. pulumiverse_scaleway/elasticmetal/get_option.py +24 -24
  122. pulumiverse_scaleway/elasticmetal/get_os.py +28 -28
  123. pulumiverse_scaleway/elasticmetal/get_partition_schema.py +215 -0
  124. pulumiverse_scaleway/elasticmetal/get_server.py +101 -68
  125. pulumiverse_scaleway/elasticmetal/ip.py +170 -169
  126. pulumiverse_scaleway/elasticmetal/ip_mac_address.py +107 -106
  127. pulumiverse_scaleway/elasticmetal/outputs.py +379 -287
  128. pulumiverse_scaleway/elasticmetal/server.py +622 -524
  129. pulumiverse_scaleway/file_filesystem.py +555 -0
  130. pulumiverse_scaleway/flexible_ip.py +170 -169
  131. pulumiverse_scaleway/flexible_ip_mac_address.py +107 -106
  132. pulumiverse_scaleway/function.py +457 -348
  133. pulumiverse_scaleway/function_cron.py +97 -96
  134. pulumiverse_scaleway/function_domain.py +63 -62
  135. pulumiverse_scaleway/function_namespace.py +234 -155
  136. pulumiverse_scaleway/function_token.py +97 -96
  137. pulumiverse_scaleway/function_trigger.py +77 -76
  138. pulumiverse_scaleway/functions/__init__.py +2 -1
  139. pulumiverse_scaleway/functions/_inputs.py +50 -50
  140. pulumiverse_scaleway/functions/cron.py +97 -96
  141. pulumiverse_scaleway/functions/domain.py +63 -62
  142. pulumiverse_scaleway/functions/function.py +457 -348
  143. pulumiverse_scaleway/functions/get_function.py +93 -71
  144. pulumiverse_scaleway/functions/get_namespace.py +54 -43
  145. pulumiverse_scaleway/functions/namespace.py +234 -155
  146. pulumiverse_scaleway/functions/outputs.py +34 -34
  147. pulumiverse_scaleway/functions/token.py +97 -96
  148. pulumiverse_scaleway/functions/trigger.py +77 -76
  149. pulumiverse_scaleway/get_account_project.py +28 -28
  150. pulumiverse_scaleway/get_account_ssh_key.py +34 -34
  151. pulumiverse_scaleway/get_availability_zones.py +12 -12
  152. pulumiverse_scaleway/get_baremetal_offer.py +43 -41
  153. pulumiverse_scaleway/get_baremetal_option.py +24 -24
  154. pulumiverse_scaleway/get_baremetal_os.py +28 -28
  155. pulumiverse_scaleway/get_baremetal_server.py +101 -68
  156. pulumiverse_scaleway/get_billing_consumptions.py +19 -15
  157. pulumiverse_scaleway/get_billing_invoices.py +25 -25
  158. pulumiverse_scaleway/get_block_snapshot.py +60 -37
  159. pulumiverse_scaleway/get_block_volume.py +38 -38
  160. pulumiverse_scaleway/get_cockpit.py +16 -16
  161. pulumiverse_scaleway/get_cockpit_source.py +88 -45
  162. pulumiverse_scaleway/get_config.py +24 -24
  163. pulumiverse_scaleway/get_container.py +117 -73
  164. pulumiverse_scaleway/get_container_namespace.py +56 -45
  165. pulumiverse_scaleway/get_database.py +26 -26
  166. pulumiverse_scaleway/get_database_acl.py +17 -17
  167. pulumiverse_scaleway/get_database_backup.py +46 -46
  168. pulumiverse_scaleway/get_database_instance.py +95 -73
  169. pulumiverse_scaleway/get_database_privilege.py +30 -30
  170. pulumiverse_scaleway/get_domain_record.py +53 -64
  171. pulumiverse_scaleway/get_domain_zone.py +36 -30
  172. pulumiverse_scaleway/get_flexible_ip.py +70 -54
  173. pulumiverse_scaleway/get_flexible_ips.py +31 -31
  174. pulumiverse_scaleway/get_function.py +93 -71
  175. pulumiverse_scaleway/get_function_namespace.py +54 -43
  176. pulumiverse_scaleway/get_iam_api_key.py +28 -28
  177. pulumiverse_scaleway/get_iam_application.py +32 -32
  178. pulumiverse_scaleway/get_iam_group.py +36 -36
  179. pulumiverse_scaleway/get_iam_ssh_key.py +34 -34
  180. pulumiverse_scaleway/get_iam_user.py +30 -30
  181. pulumiverse_scaleway/get_instance_image.py +58 -58
  182. pulumiverse_scaleway/get_instance_ip.py +42 -30
  183. pulumiverse_scaleway/get_instance_placement_group.py +38 -38
  184. pulumiverse_scaleway/get_instance_private_nic.py +53 -41
  185. pulumiverse_scaleway/get_instance_security_group.py +46 -46
  186. pulumiverse_scaleway/get_instance_server.py +108 -145
  187. pulumiverse_scaleway/get_instance_servers.py +31 -31
  188. pulumiverse_scaleway/get_instance_snapshot.py +41 -41
  189. pulumiverse_scaleway/get_instance_volume.py +42 -42
  190. pulumiverse_scaleway/get_iot_device.py +46 -46
  191. pulumiverse_scaleway/get_iot_hub.py +60 -60
  192. pulumiverse_scaleway/get_ipam_ip.py +65 -65
  193. pulumiverse_scaleway/get_ipam_ips.py +56 -56
  194. pulumiverse_scaleway/get_k8s_version.py +34 -23
  195. pulumiverse_scaleway/get_kubernetes_cluster.py +98 -65
  196. pulumiverse_scaleway/get_kubernetes_node_pool.py +86 -75
  197. pulumiverse_scaleway/get_lb_acls.py +29 -29
  198. pulumiverse_scaleway/get_lb_backend.py +75 -75
  199. pulumiverse_scaleway/get_lb_backends.py +29 -29
  200. pulumiverse_scaleway/get_lb_frontend.py +76 -43
  201. pulumiverse_scaleway/get_lb_frontends.py +29 -29
  202. pulumiverse_scaleway/get_lb_ips.py +37 -37
  203. pulumiverse_scaleway/get_lb_route.py +36 -25
  204. pulumiverse_scaleway/get_lb_routes.py +23 -23
  205. pulumiverse_scaleway/get_lbs.py +31 -31
  206. pulumiverse_scaleway/get_loadbalancer.py +78 -56
  207. pulumiverse_scaleway/get_loadbalancer_certificate.py +96 -36
  208. pulumiverse_scaleway/get_loadbalancer_ip.py +40 -40
  209. pulumiverse_scaleway/get_marketplace_image.py +28 -28
  210. pulumiverse_scaleway/get_mnq_sns.py +18 -18
  211. pulumiverse_scaleway/get_mnq_sqs.py +18 -18
  212. pulumiverse_scaleway/get_mongo_db_instance.py +110 -55
  213. pulumiverse_scaleway/get_object_bucket.py +35 -35
  214. pulumiverse_scaleway/get_object_bucket_policy.py +22 -22
  215. pulumiverse_scaleway/get_redis_cluster.py +65 -54
  216. pulumiverse_scaleway/get_registry_image.py +48 -48
  217. pulumiverse_scaleway/get_registry_image_tag.py +44 -44
  218. pulumiverse_scaleway/get_registry_namespace.py +36 -36
  219. pulumiverse_scaleway/get_secret.py +58 -58
  220. pulumiverse_scaleway/get_secret_version.py +46 -46
  221. pulumiverse_scaleway/get_tem_domain.py +103 -70
  222. pulumiverse_scaleway/get_vpc.py +58 -47
  223. pulumiverse_scaleway/get_vpc_gateway_network.py +55 -44
  224. pulumiverse_scaleway/get_vpc_private_network.py +58 -47
  225. pulumiverse_scaleway/get_vpc_public_gateway.py +56 -56
  226. pulumiverse_scaleway/get_vpc_public_gateway_dhcp.py +44 -44
  227. pulumiverse_scaleway/get_vpc_public_gateway_dhcp_reservation.py +44 -44
  228. pulumiverse_scaleway/get_vpc_public_gateway_ip.py +24 -24
  229. pulumiverse_scaleway/get_vpc_public_pat_rule.py +32 -32
  230. pulumiverse_scaleway/get_vpc_routes.py +47 -47
  231. pulumiverse_scaleway/get_vpcs.py +31 -31
  232. pulumiverse_scaleway/get_web_host_offer.py +34 -34
  233. pulumiverse_scaleway/get_webhosting.py +58 -58
  234. pulumiverse_scaleway/hosting/__init__.py +2 -1
  235. pulumiverse_scaleway/hosting/_inputs.py +117 -75
  236. pulumiverse_scaleway/hosting/get_hosting.py +58 -58
  237. pulumiverse_scaleway/hosting/get_offer.py +34 -34
  238. pulumiverse_scaleway/hosting/hosting.py +213 -212
  239. pulumiverse_scaleway/hosting/outputs.py +276 -192
  240. pulumiverse_scaleway/iam/__init__.py +3 -1
  241. pulumiverse_scaleway/iam/_inputs.py +26 -26
  242. pulumiverse_scaleway/iam/api_key.py +142 -141
  243. pulumiverse_scaleway/iam/application.py +98 -97
  244. pulumiverse_scaleway/iam/get_api_key.py +28 -28
  245. pulumiverse_scaleway/iam/get_application.py +32 -32
  246. pulumiverse_scaleway/iam/get_group.py +36 -36
  247. pulumiverse_scaleway/iam/get_policy.py +293 -0
  248. pulumiverse_scaleway/iam/get_ssh_key.py +34 -34
  249. pulumiverse_scaleway/iam/get_user.py +30 -30
  250. pulumiverse_scaleway/iam/group.py +140 -139
  251. pulumiverse_scaleway/iam/group_membership.py +54 -53
  252. pulumiverse_scaleway/iam/outputs.py +70 -18
  253. pulumiverse_scaleway/iam/policy.py +169 -168
  254. pulumiverse_scaleway/iam/ssh_key.py +107 -106
  255. pulumiverse_scaleway/iam/user.py +598 -134
  256. pulumiverse_scaleway/iam_api_key.py +142 -141
  257. pulumiverse_scaleway/iam_application.py +98 -97
  258. pulumiverse_scaleway/iam_group.py +140 -139
  259. pulumiverse_scaleway/iam_group_membership.py +54 -53
  260. pulumiverse_scaleway/iam_policy.py +169 -168
  261. pulumiverse_scaleway/iam_ssh_key.py +107 -106
  262. pulumiverse_scaleway/iam_user.py +598 -134
  263. pulumiverse_scaleway/inference/__init__.py +4 -1
  264. pulumiverse_scaleway/inference/_inputs.py +232 -50
  265. pulumiverse_scaleway/inference/deployment.py +319 -220
  266. pulumiverse_scaleway/inference/get_model.py +299 -0
  267. pulumiverse_scaleway/inference/model.py +684 -0
  268. pulumiverse_scaleway/inference/outputs.py +250 -34
  269. pulumiverse_scaleway/inference_deployment.py +319 -220
  270. pulumiverse_scaleway/instance/__init__.py +3 -1
  271. pulumiverse_scaleway/instance/_inputs.py +650 -437
  272. pulumiverse_scaleway/instance/get_image.py +58 -58
  273. pulumiverse_scaleway/instance/get_ip.py +42 -30
  274. pulumiverse_scaleway/instance/get_placement_group.py +38 -38
  275. pulumiverse_scaleway/instance/get_private_nic.py +53 -41
  276. pulumiverse_scaleway/instance/get_security_group.py +46 -46
  277. pulumiverse_scaleway/instance/get_server.py +108 -145
  278. pulumiverse_scaleway/instance/get_server_type.py +271 -0
  279. pulumiverse_scaleway/instance/get_servers.py +31 -31
  280. pulumiverse_scaleway/instance/get_snapshot.py +41 -41
  281. pulumiverse_scaleway/instance/get_volume.py +42 -42
  282. pulumiverse_scaleway/instance/image.py +260 -205
  283. pulumiverse_scaleway/instance/ip.py +116 -115
  284. pulumiverse_scaleway/instance/ip_reverse_dns.py +54 -53
  285. pulumiverse_scaleway/instance/outputs.py +981 -548
  286. pulumiverse_scaleway/instance/placement_group.py +123 -122
  287. pulumiverse_scaleway/instance/private_nic.py +163 -113
  288. pulumiverse_scaleway/instance/security_group.py +188 -187
  289. pulumiverse_scaleway/instance/security_group_rules.py +42 -41
  290. pulumiverse_scaleway/instance/server.py +590 -562
  291. pulumiverse_scaleway/instance/snapshot.py +150 -157
  292. pulumiverse_scaleway/instance/user_data.py +75 -74
  293. pulumiverse_scaleway/instance/volume.py +174 -159
  294. pulumiverse_scaleway/instance_image.py +260 -205
  295. pulumiverse_scaleway/instance_ip.py +116 -115
  296. pulumiverse_scaleway/instance_ip_reverse_dns.py +54 -53
  297. pulumiverse_scaleway/instance_placement_group.py +123 -122
  298. pulumiverse_scaleway/instance_private_nic.py +163 -113
  299. pulumiverse_scaleway/instance_security_group.py +188 -187
  300. pulumiverse_scaleway/instance_security_group_rules.py +42 -41
  301. pulumiverse_scaleway/instance_server.py +590 -562
  302. pulumiverse_scaleway/instance_snapshot.py +150 -157
  303. pulumiverse_scaleway/instance_user_data.py +75 -74
  304. pulumiverse_scaleway/instance_volume.py +174 -159
  305. pulumiverse_scaleway/iot/__init__.py +2 -1
  306. pulumiverse_scaleway/iot/_inputs.py +119 -119
  307. pulumiverse_scaleway/iot/device.py +156 -193
  308. pulumiverse_scaleway/iot/get_device.py +46 -46
  309. pulumiverse_scaleway/iot/get_hub.py +60 -60
  310. pulumiverse_scaleway/iot/hub.py +259 -258
  311. pulumiverse_scaleway/iot/network.py +115 -114
  312. pulumiverse_scaleway/iot/outputs.py +107 -107
  313. pulumiverse_scaleway/iot/route.py +109 -108
  314. pulumiverse_scaleway/iot_device.py +156 -193
  315. pulumiverse_scaleway/iot_hub.py +259 -258
  316. pulumiverse_scaleway/iot_network.py +115 -114
  317. pulumiverse_scaleway/iot_route.py +109 -108
  318. pulumiverse_scaleway/ipam/__init__.py +2 -1
  319. pulumiverse_scaleway/ipam/_inputs.py +108 -108
  320. pulumiverse_scaleway/ipam/get_ip.py +65 -65
  321. pulumiverse_scaleway/ipam/get_ips.py +56 -56
  322. pulumiverse_scaleway/ipam/ip.py +160 -131
  323. pulumiverse_scaleway/ipam/ip_reverse_dns.py +141 -70
  324. pulumiverse_scaleway/ipam/outputs.py +122 -122
  325. pulumiverse_scaleway/ipam_ip.py +160 -131
  326. pulumiverse_scaleway/ipam_ip_reverse_dns.py +141 -70
  327. pulumiverse_scaleway/job/__init__.py +2 -1
  328. pulumiverse_scaleway/job/_inputs.py +127 -14
  329. pulumiverse_scaleway/job/definition.py +283 -175
  330. pulumiverse_scaleway/job/outputs.py +98 -10
  331. pulumiverse_scaleway/job_definition.py +283 -175
  332. pulumiverse_scaleway/key_manager_key.py +939 -0
  333. pulumiverse_scaleway/kubernetes/__init__.py +3 -1
  334. pulumiverse_scaleway/kubernetes/_inputs.py +388 -185
  335. pulumiverse_scaleway/kubernetes/acl.py +447 -0
  336. pulumiverse_scaleway/kubernetes/cluster.py +594 -307
  337. pulumiverse_scaleway/kubernetes/get_cluster.py +98 -65
  338. pulumiverse_scaleway/kubernetes/get_pool.py +86 -75
  339. pulumiverse_scaleway/kubernetes/get_version.py +34 -23
  340. pulumiverse_scaleway/kubernetes/outputs.py +444 -250
  341. pulumiverse_scaleway/kubernetes/pool.py +427 -365
  342. pulumiverse_scaleway/kubernetes_cluster.py +594 -307
  343. pulumiverse_scaleway/kubernetes_node_pool.py +427 -365
  344. pulumiverse_scaleway/loadbalancer.py +329 -246
  345. pulumiverse_scaleway/loadbalancer_acl.py +102 -101
  346. pulumiverse_scaleway/loadbalancer_backend.py +534 -487
  347. pulumiverse_scaleway/loadbalancer_certificate.py +97 -96
  348. pulumiverse_scaleway/loadbalancer_frontend.py +271 -167
  349. pulumiverse_scaleway/loadbalancer_ip.py +124 -123
  350. pulumiverse_scaleway/loadbalancer_route.py +244 -119
  351. pulumiverse_scaleway/loadbalancers/__init__.py +3 -1
  352. pulumiverse_scaleway/loadbalancers/_inputs.py +367 -273
  353. pulumiverse_scaleway/loadbalancers/acl.py +102 -101
  354. pulumiverse_scaleway/loadbalancers/backend.py +534 -487
  355. pulumiverse_scaleway/loadbalancers/certificate.py +97 -96
  356. pulumiverse_scaleway/loadbalancers/frontend.py +271 -167
  357. pulumiverse_scaleway/loadbalancers/get_acls.py +29 -29
  358. pulumiverse_scaleway/loadbalancers/get_backend.py +75 -75
  359. pulumiverse_scaleway/loadbalancers/get_backends.py +29 -29
  360. pulumiverse_scaleway/loadbalancers/get_certificate.py +96 -36
  361. pulumiverse_scaleway/loadbalancers/get_frontend.py +76 -43
  362. pulumiverse_scaleway/loadbalancers/get_frontends.py +29 -29
  363. pulumiverse_scaleway/loadbalancers/get_ip.py +40 -40
  364. pulumiverse_scaleway/loadbalancers/get_ips.py +37 -37
  365. pulumiverse_scaleway/loadbalancers/get_load_balancer.py +78 -56
  366. pulumiverse_scaleway/loadbalancers/get_load_balancers.py +31 -31
  367. pulumiverse_scaleway/loadbalancers/get_route.py +36 -25
  368. pulumiverse_scaleway/loadbalancers/get_routes.py +23 -23
  369. pulumiverse_scaleway/loadbalancers/ip.py +124 -123
  370. pulumiverse_scaleway/loadbalancers/load_balancer.py +329 -246
  371. pulumiverse_scaleway/loadbalancers/outputs.py +870 -716
  372. pulumiverse_scaleway/loadbalancers/private_network.py +505 -0
  373. pulumiverse_scaleway/loadbalancers/route.py +244 -119
  374. pulumiverse_scaleway/mnq/__init__.py +2 -1
  375. pulumiverse_scaleway/mnq/_inputs.py +90 -38
  376. pulumiverse_scaleway/mnq/get_sns.py +18 -18
  377. pulumiverse_scaleway/mnq/get_sqs.py +18 -18
  378. pulumiverse_scaleway/mnq/nats_account.py +63 -62
  379. pulumiverse_scaleway/mnq/nats_credentials.py +63 -62
  380. pulumiverse_scaleway/mnq/outputs.py +73 -26
  381. pulumiverse_scaleway/mnq/sns.py +46 -45
  382. pulumiverse_scaleway/mnq/sns_credentials.py +82 -81
  383. pulumiverse_scaleway/mnq/sns_topic.py +174 -173
  384. pulumiverse_scaleway/mnq/sns_topic_subscription.py +182 -181
  385. pulumiverse_scaleway/mnq/sqs.py +46 -45
  386. pulumiverse_scaleway/mnq/sqs_credentials.py +82 -81
  387. pulumiverse_scaleway/mnq/sqs_queue.py +392 -232
  388. pulumiverse_scaleway/mnq_nats_account.py +63 -62
  389. pulumiverse_scaleway/mnq_nats_credentials.py +63 -62
  390. pulumiverse_scaleway/mnq_sns.py +46 -45
  391. pulumiverse_scaleway/mnq_sns_credentials.py +82 -81
  392. pulumiverse_scaleway/mnq_sns_topic.py +174 -173
  393. pulumiverse_scaleway/mnq_sns_topic_subscription.py +182 -181
  394. pulumiverse_scaleway/mnq_sqs.py +46 -45
  395. pulumiverse_scaleway/mnq_sqs_credentials.py +82 -81
  396. pulumiverse_scaleway/mnq_sqs_queue.py +392 -232
  397. pulumiverse_scaleway/mongo_db_instance.py +569 -268
  398. pulumiverse_scaleway/mongo_db_snapshot.py +127 -126
  399. pulumiverse_scaleway/mongodb/__init__.py +3 -1
  400. pulumiverse_scaleway/mongodb/_inputs.py +178 -51
  401. pulumiverse_scaleway/mongodb/get_instance.py +110 -55
  402. pulumiverse_scaleway/mongodb/instance.py +569 -268
  403. pulumiverse_scaleway/mongodb/outputs.py +192 -68
  404. pulumiverse_scaleway/mongodb/snapshot.py +127 -126
  405. pulumiverse_scaleway/mongodb/user.py +507 -0
  406. pulumiverse_scaleway/network/__init__.py +2 -1
  407. pulumiverse_scaleway/network/_inputs.py +209 -155
  408. pulumiverse_scaleway/network/acl.py +100 -101
  409. pulumiverse_scaleway/network/gateway_network.py +228 -180
  410. pulumiverse_scaleway/network/get_gateway_network.py +55 -44
  411. pulumiverse_scaleway/network/get_private_network.py +58 -47
  412. pulumiverse_scaleway/network/get_public_gateway.py +56 -56
  413. pulumiverse_scaleway/network/get_public_gateway_dhcp.py +44 -44
  414. pulumiverse_scaleway/network/get_public_gateway_dhcp_reservation.py +44 -44
  415. pulumiverse_scaleway/network/get_public_gateway_ip.py +24 -24
  416. pulumiverse_scaleway/network/get_public_gateway_pat_rule.py +32 -32
  417. pulumiverse_scaleway/network/get_routes.py +47 -47
  418. pulumiverse_scaleway/network/get_vpc.py +58 -47
  419. pulumiverse_scaleway/network/get_vpcs.py +31 -31
  420. pulumiverse_scaleway/network/outputs.py +338 -270
  421. pulumiverse_scaleway/network/private_network.py +203 -155
  422. pulumiverse_scaleway/network/public_gateway.py +261 -260
  423. pulumiverse_scaleway/network/public_gateway_dhcp.py +285 -284
  424. pulumiverse_scaleway/network/public_gateway_dhcp_reservation.py +107 -106
  425. pulumiverse_scaleway/network/public_gateway_ip.py +107 -106
  426. pulumiverse_scaleway/network/public_gateway_ip_reverse_dns.py +54 -53
  427. pulumiverse_scaleway/network/public_gateway_pat_rule.py +132 -131
  428. pulumiverse_scaleway/network/route.py +230 -141
  429. pulumiverse_scaleway/network/vpc.py +172 -124
  430. pulumiverse_scaleway/object/__init__.py +3 -1
  431. pulumiverse_scaleway/object/_inputs.py +202 -166
  432. pulumiverse_scaleway/object/bucket.py +162 -148
  433. pulumiverse_scaleway/object/bucket_acl.py +97 -94
  434. pulumiverse_scaleway/object/bucket_lock_configuration.py +57 -56
  435. pulumiverse_scaleway/object/bucket_policy.py +71 -134
  436. pulumiverse_scaleway/object/bucket_website_configuration.py +104 -85
  437. pulumiverse_scaleway/object/get.py +290 -0
  438. pulumiverse_scaleway/object/get_bucket.py +35 -35
  439. pulumiverse_scaleway/object/get_bucket_policy.py +22 -22
  440. pulumiverse_scaleway/object/item.py +301 -223
  441. pulumiverse_scaleway/object/outputs.py +210 -166
  442. pulumiverse_scaleway/object_bucket.py +162 -148
  443. pulumiverse_scaleway/object_bucket_acl.py +97 -94
  444. pulumiverse_scaleway/object_bucket_lock_configuration.py +57 -56
  445. pulumiverse_scaleway/object_bucket_policy.py +71 -134
  446. pulumiverse_scaleway/object_bucket_website_configuration.py +104 -85
  447. pulumiverse_scaleway/object_item.py +301 -223
  448. pulumiverse_scaleway/observability/__init__.py +4 -2
  449. pulumiverse_scaleway/observability/_inputs.py +106 -106
  450. pulumiverse_scaleway/observability/alert_manager.py +66 -65
  451. pulumiverse_scaleway/observability/cockpit.py +71 -49
  452. pulumiverse_scaleway/observability/get_grafana.py +103 -0
  453. pulumiverse_scaleway/observability/get_instance.py +16 -16
  454. pulumiverse_scaleway/observability/get_source.py +88 -45
  455. pulumiverse_scaleway/observability/get_sources.py +375 -0
  456. pulumiverse_scaleway/observability/grafana_user.py +72 -113
  457. pulumiverse_scaleway/observability/outputs.py +241 -101
  458. pulumiverse_scaleway/observability/source.py +142 -141
  459. pulumiverse_scaleway/observability/token.py +84 -83
  460. pulumiverse_scaleway/outputs.py +5235 -3665
  461. pulumiverse_scaleway/provider.py +107 -82
  462. pulumiverse_scaleway/pulumi-plugin.json +1 -1
  463. pulumiverse_scaleway/rdb_snapshot.py +127 -126
  464. pulumiverse_scaleway/redis/__init__.py +2 -1
  465. pulumiverse_scaleway/redis/_inputs.py +163 -69
  466. pulumiverse_scaleway/redis/cluster.py +273 -225
  467. pulumiverse_scaleway/redis/get_cluster.py +65 -54
  468. pulumiverse_scaleway/redis/outputs.py +199 -87
  469. pulumiverse_scaleway/redis_cluster.py +273 -225
  470. pulumiverse_scaleway/registry/__init__.py +2 -1
  471. pulumiverse_scaleway/registry/get_image.py +48 -48
  472. pulumiverse_scaleway/registry/get_image_tag.py +44 -44
  473. pulumiverse_scaleway/registry/get_namespace.py +36 -36
  474. pulumiverse_scaleway/registry/namespace.py +106 -105
  475. pulumiverse_scaleway/registry_namespace.py +106 -105
  476. pulumiverse_scaleway/sdb_database.py +97 -96
  477. pulumiverse_scaleway/secret.py +188 -179
  478. pulumiverse_scaleway/secret_version.py +107 -106
  479. pulumiverse_scaleway/secrets/__init__.py +2 -1
  480. pulumiverse_scaleway/secrets/_inputs.py +63 -63
  481. pulumiverse_scaleway/secrets/get_secret.py +58 -58
  482. pulumiverse_scaleway/secrets/get_version.py +46 -46
  483. pulumiverse_scaleway/secrets/outputs.py +84 -84
  484. pulumiverse_scaleway/secrets/secret.py +188 -179
  485. pulumiverse_scaleway/secrets/version.py +107 -106
  486. pulumiverse_scaleway/tem/__init__.py +2 -1
  487. pulumiverse_scaleway/tem/_inputs.py +33 -33
  488. pulumiverse_scaleway/tem/blocked_list.py +105 -104
  489. pulumiverse_scaleway/tem/domain.py +384 -257
  490. pulumiverse_scaleway/tem/domain_validation.py +63 -62
  491. pulumiverse_scaleway/tem/get_domain.py +103 -70
  492. pulumiverse_scaleway/tem/get_offer_subscription.py +34 -34
  493. pulumiverse_scaleway/tem/outputs.py +44 -44
  494. pulumiverse_scaleway/tem/webhook.py +132 -131
  495. pulumiverse_scaleway/tem_domain.py +384 -257
  496. pulumiverse_scaleway/tem_domain_validation.py +63 -62
  497. pulumiverse_scaleway/tem_webhook.py +132 -131
  498. pulumiverse_scaleway/vpc.py +172 -124
  499. pulumiverse_scaleway/vpc_gateway_network.py +228 -180
  500. pulumiverse_scaleway/vpc_private_network.py +203 -155
  501. pulumiverse_scaleway/vpc_public_gateway.py +261 -260
  502. pulumiverse_scaleway/vpc_public_gateway_dhcp.py +285 -284
  503. pulumiverse_scaleway/vpc_public_gateway_dhcp_reservation.py +107 -106
  504. pulumiverse_scaleway/vpc_public_gateway_ip.py +107 -106
  505. pulumiverse_scaleway/vpc_public_gateway_ip_reverse_dns.py +54 -53
  506. pulumiverse_scaleway/vpc_public_gateway_pat_rule.py +132 -131
  507. pulumiverse_scaleway/vpc_route.py +230 -141
  508. pulumiverse_scaleway/webhosting.py +213 -212
  509. {pulumiverse_scaleway-1.27.0a1744869119.dist-info → pulumiverse_scaleway-1.39.0a1764841480.dist-info}/METADATA +2 -2
  510. pulumiverse_scaleway-1.39.0a1764841480.dist-info/RECORD +513 -0
  511. {pulumiverse_scaleway-1.27.0a1744869119.dist-info → pulumiverse_scaleway-1.39.0a1764841480.dist-info}/WHEEL +1 -1
  512. pulumiverse_scaleway/get_cockpit_plan.py +0 -129
  513. pulumiverse_scaleway/observability/get_plan.py +0 -125
  514. pulumiverse_scaleway-1.27.0a1744869119.dist-info/RECORD +0 -483
  515. {pulumiverse_scaleway-1.27.0a1744869119.dist-info → pulumiverse_scaleway-1.39.0a1764841480.dist-info}/top_level.txt +0 -0
@@ -1,8 +1,8 @@
1
1
  # coding=utf-8
2
- # *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. ***
2
+ # *** WARNING: this file was generated by pulumi-language-python. ***
3
3
  # *** Do not edit by hand unless you're certain you know what you are doing! ***
4
4
 
5
- import copy
5
+ import builtins as _builtins
6
6
  import warnings
7
7
  import sys
8
8
  import pulumi
@@ -21,83 +21,93 @@ __all__ = ['InstanceServerArgs', 'InstanceServer']
21
21
  @pulumi.input_type
22
22
  class InstanceServerArgs:
23
23
  def __init__(__self__, *,
24
- type: pulumi.Input[str],
25
- additional_volume_ids: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
26
- boot_type: Optional[pulumi.Input[str]] = None,
27
- bootscript_id: Optional[pulumi.Input[str]] = None,
28
- cloud_init: Optional[pulumi.Input[str]] = None,
29
- enable_dynamic_ip: Optional[pulumi.Input[bool]] = None,
30
- enable_ipv6: Optional[pulumi.Input[bool]] = None,
31
- image: Optional[pulumi.Input[str]] = None,
32
- ip_id: Optional[pulumi.Input[str]] = None,
33
- ip_ids: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
34
- name: Optional[pulumi.Input[str]] = None,
35
- placement_group_id: Optional[pulumi.Input[str]] = None,
24
+ type: pulumi.Input[_builtins.str],
25
+ additional_volume_ids: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
26
+ admin_password_encryption_ssh_key_id: Optional[pulumi.Input[_builtins.str]] = None,
27
+ boot_type: Optional[pulumi.Input[_builtins.str]] = None,
28
+ bootscript_id: Optional[pulumi.Input[_builtins.str]] = None,
29
+ cloud_init: Optional[pulumi.Input[_builtins.str]] = None,
30
+ enable_dynamic_ip: Optional[pulumi.Input[_builtins.bool]] = None,
31
+ filesystems: Optional[pulumi.Input[Sequence[pulumi.Input['InstanceServerFilesystemArgs']]]] = None,
32
+ image: Optional[pulumi.Input[_builtins.str]] = None,
33
+ ip_id: Optional[pulumi.Input[_builtins.str]] = None,
34
+ ip_ids: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
35
+ name: Optional[pulumi.Input[_builtins.str]] = None,
36
+ placement_group_id: Optional[pulumi.Input[_builtins.str]] = None,
37
+ private_ips: Optional[pulumi.Input[Sequence[pulumi.Input['InstanceServerPrivateIpArgs']]]] = None,
36
38
  private_networks: Optional[pulumi.Input[Sequence[pulumi.Input['InstanceServerPrivateNetworkArgs']]]] = None,
37
- project_id: Optional[pulumi.Input[str]] = None,
39
+ project_id: Optional[pulumi.Input[_builtins.str]] = None,
40
+ protected: Optional[pulumi.Input[_builtins.bool]] = None,
38
41
  public_ips: Optional[pulumi.Input[Sequence[pulumi.Input['InstanceServerPublicIpArgs']]]] = None,
39
- replace_on_type_change: Optional[pulumi.Input[bool]] = None,
42
+ replace_on_type_change: Optional[pulumi.Input[_builtins.bool]] = None,
40
43
  root_volume: Optional[pulumi.Input['InstanceServerRootVolumeArgs']] = None,
41
- security_group_id: Optional[pulumi.Input[str]] = None,
42
- state: Optional[pulumi.Input[str]] = None,
43
- tags: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
44
- user_data: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
45
- zone: Optional[pulumi.Input[str]] = None):
44
+ security_group_id: Optional[pulumi.Input[_builtins.str]] = None,
45
+ state: Optional[pulumi.Input[_builtins.str]] = None,
46
+ tags: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
47
+ user_data: Optional[pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]]] = None,
48
+ zone: Optional[pulumi.Input[_builtins.str]] = None):
46
49
  """
47
50
  The set of arguments for constructing a InstanceServer resource.
48
- :param pulumi.Input[str] type: The commercial type of the server.
51
+ :param pulumi.Input[_builtins.str] type: The commercial type of the server.
49
52
  You find all the available types on the [pricing page](https://www.scaleway.com/en/pricing/).
50
53
  Updates to this field will migrate the server, local storage constraint must be respected. [More info](https://www.scaleway.com/en/docs/compute/instances/api-cli/migrating-instances/).
51
54
  Use `replace_on_type_change` to trigger replacement instead of migration.
52
55
 
53
56
  > **Important:** If `type` change and migration occurs, the server will be stopped and changed backed to its original state. It will be started again if it was running.
54
- :param pulumi.Input[Sequence[pulumi.Input[str]]] additional_volume_ids: The [additional volumes](https://www.scaleway.com/en/developers/api/instance/#path-volume-types-list-volume-types)
57
+ :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] additional_volume_ids: The [additional volumes](https://www.scaleway.com/en/developers/api/instance/#path-volume-types-list-volume-types)
55
58
  attached to the server. Updates to this field will trigger a stop/start of the server.
56
59
 
57
60
  > **Important:** If this field contains local volumes, the `state` must be set to `stopped`, otherwise it will fail.
58
61
 
59
62
  > **Important:** If this field contains local volumes, you have to first detach them, in one apply, and then delete the volume in another apply.
60
- :param pulumi.Input[str] boot_type: The boot Type of the server. Possible values are: `local`, `bootscript` or `rescue`.
61
- :param pulumi.Input[str] bootscript_id: ID of the target bootscript (set boot_type to bootscript)
62
- :param pulumi.Input[str] cloud_init: The cloud init script associated with this server
63
- :param pulumi.Input[bool] enable_dynamic_ip: If true a dynamic IP will be attached to the server.
64
- :param pulumi.Input[bool] enable_ipv6: Determines if IPv6 is enabled for the server. Useful only with `routed_ip_enabled` as false, otherwise ipv6 is always supported.
65
- Deprecated: Please use a instance.Ip with a `routed_ipv6` type.
66
- :param pulumi.Input[str] image: The UUID or the label of the base image used by the server. You can use [this endpoint](https://www.scaleway.com/en/developers/api/marketplace/#path-marketplace-images-list-marketplace-images)
63
+ :param pulumi.Input[_builtins.str] admin_password_encryption_ssh_key_id: The ID of the SSH RSA key that will be used to encrypt the initial admin password for OS requiring it.
64
+ Mandatory for Windows OS. The public_key value of this key is used to encrypt the admin password.
65
+ When set to an empty string, it resets this value and admin_password_encrypted_value to an empty string so a new password may be generated.
66
+ :param pulumi.Input[_builtins.str] boot_type: The boot Type of the server. Possible values are: `local`, `bootscript` or `rescue`.
67
+ :param pulumi.Input[_builtins.str] bootscript_id: ID of the target bootscript (set boot_type to bootscript)
68
+ :param pulumi.Input[_builtins.str] cloud_init: The cloud init script associated with this server
69
+ :param pulumi.Input[_builtins.bool] enable_dynamic_ip: If true a dynamic IP will be attached to the server.
70
+ :param pulumi.Input[Sequence[pulumi.Input['InstanceServerFilesystemArgs']]] filesystems: List of filesystems attached to the server.
71
+ :param pulumi.Input[_builtins.str] image: The UUID or the label of the base image used by the server. You can use [this endpoint](https://www.scaleway.com/en/developers/api/marketplace/#path-marketplace-images-list-marketplace-images)
67
72
  to find either the right `label` or the right local image `ID` for a given `type`. Optional when creating an instance with an existing root volume.
68
73
 
69
74
  You can check the available labels with our [CLI](https://www.scaleway.com/en/docs/compute/instances/api-cli/creating-managing-instances-with-cliv2/). ```scw marketplace image list```
70
75
 
71
76
  To retrieve more information by label please use: ```scw marketplace image get label=<LABEL>```
72
- :param pulumi.Input[str] ip_id: The ID of the reserved IP that is attached to the server.
73
- :param pulumi.Input[Sequence[pulumi.Input[str]]] ip_ids: List of ID of reserved IPs that are attached to the server. Cannot be used with `ip_id`.
74
77
 
75
- > `ip_id` to `ip_ids` migration: if moving the ip from the old `ip_id` field to the new `ip_ids`, it should not detach the ip.
76
- :param pulumi.Input[str] name: The name of the server.
77
- :param pulumi.Input[str] placement_group_id: The [placement group](https://www.scaleway.com/en/developers/api/instance/#path-security-groups-update-a-security-group the server is attached to.
78
+ To obtain a local-image UUID from a label, please use: ```scw marketplace local-image list image-label=<LABEL>```
79
+ :param pulumi.Input[_builtins.str] ip_id: The ID of the reserved IP that is attached to the server.
80
+ :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] ip_ids: List of ID of reserved IPs that are attached to the server. Cannot be used with `ip_id`.
78
81
 
82
+ > `ip_id` to `ip_ids` migration: if moving the ip from the old `ip_id` field to the new `ip_ids`, it should not detach the ip.
83
+ :param pulumi.Input[_builtins.str] name: The name of the server.
84
+ :param pulumi.Input[_builtins.str] placement_group_id: The [placement group](<https://www.scaleway.com/en/developers/api/instance/#path-security-groups-update-a-security-group> the server is attached to.
79
85
 
80
86
  > **Important:** When updating `placement_group_id` the `state` must be set to `stopped`, otherwise it will fail.
87
+ :param pulumi.Input[Sequence[pulumi.Input['InstanceServerPrivateIpArgs']]] private_ips: The list of private IPv4 and IPv6 addresses associated with the resource.
81
88
  :param pulumi.Input[Sequence[pulumi.Input['InstanceServerPrivateNetworkArgs']]] private_networks: The private network associated with the server.
82
89
  Use the `pn_id` key to attach a [private_network](https://www.scaleway.com/en/developers/api/instance/#path-private-nics-list-all-private-nics) on your instance.
83
- :param pulumi.Input[str] project_id: `project_id`) The ID of the project the server is associated with.
90
+ :param pulumi.Input[_builtins.str] project_id: `project_id`) The ID of the project the server is associated with.
91
+ :param pulumi.Input[_builtins.bool] protected: Set to true to activate server protection option.
84
92
  :param pulumi.Input[Sequence[pulumi.Input['InstanceServerPublicIpArgs']]] public_ips: The list of public IPs of the server.
85
- :param pulumi.Input[bool] replace_on_type_change: If true, the server will be replaced if `type` is changed. Otherwise, the server will migrate.
93
+ :param pulumi.Input[_builtins.bool] replace_on_type_change: If true, the server will be replaced if `type` is changed. Otherwise, the server will migrate.
86
94
  :param pulumi.Input['InstanceServerRootVolumeArgs'] root_volume: Root [volume](https://www.scaleway.com/en/developers/api/instance/#path-volume-types-list-volume-types) attached to the server on creation.
87
- :param pulumi.Input[str] security_group_id: The security group the server is attached to
88
- :param pulumi.Input[str] state: The state of the server. Possible values are: `started`, `stopped` or `standby`.
89
- :param pulumi.Input[Sequence[pulumi.Input[str]]] tags: The tags associated with the server.
90
- :param pulumi.Input[Mapping[str, pulumi.Input[str]]] user_data: The user data associated with the server.
95
+ :param pulumi.Input[_builtins.str] security_group_id: The security group the server is attached to
96
+ :param pulumi.Input[_builtins.str] state: The state of the server. Possible values are: `started`, `stopped` or `standby`.
97
+ :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] tags: The tags associated with the server.
98
+ :param pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]] user_data: The user data associated with the server.
91
99
  Use the `cloud-init` key to use [cloud-init](https://cloudinit.readthedocs.io/en/latest/) on your instance.
92
100
  You can define values using:
93
101
  - string
94
102
  - UTF-8 encoded file content using file
95
103
  - Binary files using filebase64.
96
- :param pulumi.Input[str] zone: `zone`) The zone in which the server should be created.
104
+ :param pulumi.Input[_builtins.str] zone: `zone`) The zone in which the server should be created.
97
105
  """
98
106
  pulumi.set(__self__, "type", type)
99
107
  if additional_volume_ids is not None:
100
108
  pulumi.set(__self__, "additional_volume_ids", additional_volume_ids)
109
+ if admin_password_encryption_ssh_key_id is not None:
110
+ pulumi.set(__self__, "admin_password_encryption_ssh_key_id", admin_password_encryption_ssh_key_id)
101
111
  if boot_type is not None:
102
112
  pulumi.set(__self__, "boot_type", boot_type)
103
113
  if bootscript_id is not None:
@@ -109,11 +119,8 @@ class InstanceServerArgs:
109
119
  pulumi.set(__self__, "cloud_init", cloud_init)
110
120
  if enable_dynamic_ip is not None:
111
121
  pulumi.set(__self__, "enable_dynamic_ip", enable_dynamic_ip)
112
- if enable_ipv6 is not None:
113
- warnings.warn("""Please use a instance.Ip with a `routed_ipv6` type""", DeprecationWarning)
114
- pulumi.log.warn("""enable_ipv6 is deprecated: Please use a instance.Ip with a `routed_ipv6` type""")
115
- if enable_ipv6 is not None:
116
- pulumi.set(__self__, "enable_ipv6", enable_ipv6)
122
+ if filesystems is not None:
123
+ pulumi.set(__self__, "filesystems", filesystems)
117
124
  if image is not None:
118
125
  pulumi.set(__self__, "image", image)
119
126
  if ip_id is not None:
@@ -124,10 +131,14 @@ class InstanceServerArgs:
124
131
  pulumi.set(__self__, "name", name)
125
132
  if placement_group_id is not None:
126
133
  pulumi.set(__self__, "placement_group_id", placement_group_id)
134
+ if private_ips is not None:
135
+ pulumi.set(__self__, "private_ips", private_ips)
127
136
  if private_networks is not None:
128
137
  pulumi.set(__self__, "private_networks", private_networks)
129
138
  if project_id is not None:
130
139
  pulumi.set(__self__, "project_id", project_id)
140
+ if protected is not None:
141
+ pulumi.set(__self__, "protected", protected)
131
142
  if public_ips is not None:
132
143
  pulumi.set(__self__, "public_ips", public_ips)
133
144
  if replace_on_type_change is not None:
@@ -145,9 +156,9 @@ class InstanceServerArgs:
145
156
  if zone is not None:
146
157
  pulumi.set(__self__, "zone", zone)
147
158
 
148
- @property
159
+ @_builtins.property
149
160
  @pulumi.getter
150
- def type(self) -> pulumi.Input[str]:
161
+ def type(self) -> pulumi.Input[_builtins.str]:
151
162
  """
152
163
  The commercial type of the server.
153
164
  You find all the available types on the [pricing page](https://www.scaleway.com/en/pricing/).
@@ -159,12 +170,12 @@ class InstanceServerArgs:
159
170
  return pulumi.get(self, "type")
160
171
 
161
172
  @type.setter
162
- def type(self, value: pulumi.Input[str]):
173
+ def type(self, value: pulumi.Input[_builtins.str]):
163
174
  pulumi.set(self, "type", value)
164
175
 
165
- @property
176
+ @_builtins.property
166
177
  @pulumi.getter(name="additionalVolumeIds")
167
- def additional_volume_ids(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
178
+ def additional_volume_ids(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]:
168
179
  """
169
180
  The [additional volumes](https://www.scaleway.com/en/developers/api/instance/#path-volume-types-list-volume-types)
170
181
  attached to the server. Updates to this field will trigger a stop/start of the server.
@@ -176,75 +187,87 @@ class InstanceServerArgs:
176
187
  return pulumi.get(self, "additional_volume_ids")
177
188
 
178
189
  @additional_volume_ids.setter
179
- def additional_volume_ids(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
190
+ def additional_volume_ids(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]):
180
191
  pulumi.set(self, "additional_volume_ids", value)
181
192
 
182
- @property
193
+ @_builtins.property
194
+ @pulumi.getter(name="adminPasswordEncryptionSshKeyId")
195
+ def admin_password_encryption_ssh_key_id(self) -> Optional[pulumi.Input[_builtins.str]]:
196
+ """
197
+ The ID of the SSH RSA key that will be used to encrypt the initial admin password for OS requiring it.
198
+ Mandatory for Windows OS. The public_key value of this key is used to encrypt the admin password.
199
+ When set to an empty string, it resets this value and admin_password_encrypted_value to an empty string so a new password may be generated.
200
+ """
201
+ return pulumi.get(self, "admin_password_encryption_ssh_key_id")
202
+
203
+ @admin_password_encryption_ssh_key_id.setter
204
+ def admin_password_encryption_ssh_key_id(self, value: Optional[pulumi.Input[_builtins.str]]):
205
+ pulumi.set(self, "admin_password_encryption_ssh_key_id", value)
206
+
207
+ @_builtins.property
183
208
  @pulumi.getter(name="bootType")
184
- def boot_type(self) -> Optional[pulumi.Input[str]]:
209
+ def boot_type(self) -> Optional[pulumi.Input[_builtins.str]]:
185
210
  """
186
211
  The boot Type of the server. Possible values are: `local`, `bootscript` or `rescue`.
187
212
  """
188
213
  return pulumi.get(self, "boot_type")
189
214
 
190
215
  @boot_type.setter
191
- def boot_type(self, value: Optional[pulumi.Input[str]]):
216
+ def boot_type(self, value: Optional[pulumi.Input[_builtins.str]]):
192
217
  pulumi.set(self, "boot_type", value)
193
218
 
194
- @property
219
+ @_builtins.property
195
220
  @pulumi.getter(name="bootscriptId")
196
221
  @_utilities.deprecated("""bootscript is not supported anymore.""")
197
- def bootscript_id(self) -> Optional[pulumi.Input[str]]:
222
+ def bootscript_id(self) -> Optional[pulumi.Input[_builtins.str]]:
198
223
  """
199
224
  ID of the target bootscript (set boot_type to bootscript)
200
225
  """
201
226
  return pulumi.get(self, "bootscript_id")
202
227
 
203
228
  @bootscript_id.setter
204
- def bootscript_id(self, value: Optional[pulumi.Input[str]]):
229
+ def bootscript_id(self, value: Optional[pulumi.Input[_builtins.str]]):
205
230
  pulumi.set(self, "bootscript_id", value)
206
231
 
207
- @property
232
+ @_builtins.property
208
233
  @pulumi.getter(name="cloudInit")
209
- def cloud_init(self) -> Optional[pulumi.Input[str]]:
234
+ def cloud_init(self) -> Optional[pulumi.Input[_builtins.str]]:
210
235
  """
211
236
  The cloud init script associated with this server
212
237
  """
213
238
  return pulumi.get(self, "cloud_init")
214
239
 
215
240
  @cloud_init.setter
216
- def cloud_init(self, value: Optional[pulumi.Input[str]]):
241
+ def cloud_init(self, value: Optional[pulumi.Input[_builtins.str]]):
217
242
  pulumi.set(self, "cloud_init", value)
218
243
 
219
- @property
244
+ @_builtins.property
220
245
  @pulumi.getter(name="enableDynamicIp")
221
- def enable_dynamic_ip(self) -> Optional[pulumi.Input[bool]]:
246
+ def enable_dynamic_ip(self) -> Optional[pulumi.Input[_builtins.bool]]:
222
247
  """
223
248
  If true a dynamic IP will be attached to the server.
224
249
  """
225
250
  return pulumi.get(self, "enable_dynamic_ip")
226
251
 
227
252
  @enable_dynamic_ip.setter
228
- def enable_dynamic_ip(self, value: Optional[pulumi.Input[bool]]):
253
+ def enable_dynamic_ip(self, value: Optional[pulumi.Input[_builtins.bool]]):
229
254
  pulumi.set(self, "enable_dynamic_ip", value)
230
255
 
231
- @property
232
- @pulumi.getter(name="enableIpv6")
233
- @_utilities.deprecated("""Please use a instance.Ip with a `routed_ipv6` type""")
234
- def enable_ipv6(self) -> Optional[pulumi.Input[bool]]:
256
+ @_builtins.property
257
+ @pulumi.getter
258
+ def filesystems(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['InstanceServerFilesystemArgs']]]]:
235
259
  """
236
- Determines if IPv6 is enabled for the server. Useful only with `routed_ip_enabled` as false, otherwise ipv6 is always supported.
237
- Deprecated: Please use a instance.Ip with a `routed_ipv6` type.
260
+ List of filesystems attached to the server.
238
261
  """
239
- return pulumi.get(self, "enable_ipv6")
262
+ return pulumi.get(self, "filesystems")
240
263
 
241
- @enable_ipv6.setter
242
- def enable_ipv6(self, value: Optional[pulumi.Input[bool]]):
243
- pulumi.set(self, "enable_ipv6", value)
264
+ @filesystems.setter
265
+ def filesystems(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['InstanceServerFilesystemArgs']]]]):
266
+ pulumi.set(self, "filesystems", value)
244
267
 
245
- @property
268
+ @_builtins.property
246
269
  @pulumi.getter
247
- def image(self) -> Optional[pulumi.Input[str]]:
270
+ def image(self) -> Optional[pulumi.Input[_builtins.str]]:
248
271
  """
249
272
  The UUID or the label of the base image used by the server. You can use [this endpoint](https://www.scaleway.com/en/developers/api/marketplace/#path-marketplace-images-list-marketplace-images)
250
273
  to find either the right `label` or the right local image `ID` for a given `type`. Optional when creating an instance with an existing root volume.
@@ -252,28 +275,30 @@ class InstanceServerArgs:
252
275
  You can check the available labels with our [CLI](https://www.scaleway.com/en/docs/compute/instances/api-cli/creating-managing-instances-with-cliv2/). ```scw marketplace image list```
253
276
 
254
277
  To retrieve more information by label please use: ```scw marketplace image get label=<LABEL>```
278
+
279
+ To obtain a local-image UUID from a label, please use: ```scw marketplace local-image list image-label=<LABEL>```
255
280
  """
256
281
  return pulumi.get(self, "image")
257
282
 
258
283
  @image.setter
259
- def image(self, value: Optional[pulumi.Input[str]]):
284
+ def image(self, value: Optional[pulumi.Input[_builtins.str]]):
260
285
  pulumi.set(self, "image", value)
261
286
 
262
- @property
287
+ @_builtins.property
263
288
  @pulumi.getter(name="ipId")
264
- def ip_id(self) -> Optional[pulumi.Input[str]]:
289
+ def ip_id(self) -> Optional[pulumi.Input[_builtins.str]]:
265
290
  """
266
291
  The ID of the reserved IP that is attached to the server.
267
292
  """
268
293
  return pulumi.get(self, "ip_id")
269
294
 
270
295
  @ip_id.setter
271
- def ip_id(self, value: Optional[pulumi.Input[str]]):
296
+ def ip_id(self, value: Optional[pulumi.Input[_builtins.str]]):
272
297
  pulumi.set(self, "ip_id", value)
273
298
 
274
- @property
299
+ @_builtins.property
275
300
  @pulumi.getter(name="ipIds")
276
- def ip_ids(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
301
+ def ip_ids(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]:
277
302
  """
278
303
  List of ID of reserved IPs that are attached to the server. Cannot be used with `ip_id`.
279
304
 
@@ -282,37 +307,48 @@ class InstanceServerArgs:
282
307
  return pulumi.get(self, "ip_ids")
283
308
 
284
309
  @ip_ids.setter
285
- def ip_ids(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
310
+ def ip_ids(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]):
286
311
  pulumi.set(self, "ip_ids", value)
287
312
 
288
- @property
313
+ @_builtins.property
289
314
  @pulumi.getter
290
- def name(self) -> Optional[pulumi.Input[str]]:
315
+ def name(self) -> Optional[pulumi.Input[_builtins.str]]:
291
316
  """
292
317
  The name of the server.
293
318
  """
294
319
  return pulumi.get(self, "name")
295
320
 
296
321
  @name.setter
297
- def name(self, value: Optional[pulumi.Input[str]]):
322
+ def name(self, value: Optional[pulumi.Input[_builtins.str]]):
298
323
  pulumi.set(self, "name", value)
299
324
 
300
- @property
325
+ @_builtins.property
301
326
  @pulumi.getter(name="placementGroupId")
302
- def placement_group_id(self) -> Optional[pulumi.Input[str]]:
327
+ def placement_group_id(self) -> Optional[pulumi.Input[_builtins.str]]:
303
328
  """
304
- The [placement group](https://www.scaleway.com/en/developers/api/instance/#path-security-groups-update-a-security-group the server is attached to.
305
-
329
+ The [placement group](<https://www.scaleway.com/en/developers/api/instance/#path-security-groups-update-a-security-group> the server is attached to.
306
330
 
307
331
  > **Important:** When updating `placement_group_id` the `state` must be set to `stopped`, otherwise it will fail.
308
332
  """
309
333
  return pulumi.get(self, "placement_group_id")
310
334
 
311
335
  @placement_group_id.setter
312
- def placement_group_id(self, value: Optional[pulumi.Input[str]]):
336
+ def placement_group_id(self, value: Optional[pulumi.Input[_builtins.str]]):
313
337
  pulumi.set(self, "placement_group_id", value)
314
338
 
315
- @property
339
+ @_builtins.property
340
+ @pulumi.getter(name="privateIps")
341
+ def private_ips(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['InstanceServerPrivateIpArgs']]]]:
342
+ """
343
+ The list of private IPv4 and IPv6 addresses associated with the resource.
344
+ """
345
+ return pulumi.get(self, "private_ips")
346
+
347
+ @private_ips.setter
348
+ def private_ips(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['InstanceServerPrivateIpArgs']]]]):
349
+ pulumi.set(self, "private_ips", value)
350
+
351
+ @_builtins.property
316
352
  @pulumi.getter(name="privateNetworks")
317
353
  def private_networks(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['InstanceServerPrivateNetworkArgs']]]]:
318
354
  """
@@ -325,19 +361,31 @@ class InstanceServerArgs:
325
361
  def private_networks(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['InstanceServerPrivateNetworkArgs']]]]):
326
362
  pulumi.set(self, "private_networks", value)
327
363
 
328
- @property
364
+ @_builtins.property
329
365
  @pulumi.getter(name="projectId")
330
- def project_id(self) -> Optional[pulumi.Input[str]]:
366
+ def project_id(self) -> Optional[pulumi.Input[_builtins.str]]:
331
367
  """
332
368
  `project_id`) The ID of the project the server is associated with.
333
369
  """
334
370
  return pulumi.get(self, "project_id")
335
371
 
336
372
  @project_id.setter
337
- def project_id(self, value: Optional[pulumi.Input[str]]):
373
+ def project_id(self, value: Optional[pulumi.Input[_builtins.str]]):
338
374
  pulumi.set(self, "project_id", value)
339
375
 
340
- @property
376
+ @_builtins.property
377
+ @pulumi.getter
378
+ def protected(self) -> Optional[pulumi.Input[_builtins.bool]]:
379
+ """
380
+ Set to true to activate server protection option.
381
+ """
382
+ return pulumi.get(self, "protected")
383
+
384
+ @protected.setter
385
+ def protected(self, value: Optional[pulumi.Input[_builtins.bool]]):
386
+ pulumi.set(self, "protected", value)
387
+
388
+ @_builtins.property
341
389
  @pulumi.getter(name="publicIps")
342
390
  def public_ips(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['InstanceServerPublicIpArgs']]]]:
343
391
  """
@@ -349,19 +397,19 @@ class InstanceServerArgs:
349
397
  def public_ips(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['InstanceServerPublicIpArgs']]]]):
350
398
  pulumi.set(self, "public_ips", value)
351
399
 
352
- @property
400
+ @_builtins.property
353
401
  @pulumi.getter(name="replaceOnTypeChange")
354
- def replace_on_type_change(self) -> Optional[pulumi.Input[bool]]:
402
+ def replace_on_type_change(self) -> Optional[pulumi.Input[_builtins.bool]]:
355
403
  """
356
404
  If true, the server will be replaced if `type` is changed. Otherwise, the server will migrate.
357
405
  """
358
406
  return pulumi.get(self, "replace_on_type_change")
359
407
 
360
408
  @replace_on_type_change.setter
361
- def replace_on_type_change(self, value: Optional[pulumi.Input[bool]]):
409
+ def replace_on_type_change(self, value: Optional[pulumi.Input[_builtins.bool]]):
362
410
  pulumi.set(self, "replace_on_type_change", value)
363
411
 
364
- @property
412
+ @_builtins.property
365
413
  @pulumi.getter(name="rootVolume")
366
414
  def root_volume(self) -> Optional[pulumi.Input['InstanceServerRootVolumeArgs']]:
367
415
  """
@@ -373,45 +421,45 @@ class InstanceServerArgs:
373
421
  def root_volume(self, value: Optional[pulumi.Input['InstanceServerRootVolumeArgs']]):
374
422
  pulumi.set(self, "root_volume", value)
375
423
 
376
- @property
424
+ @_builtins.property
377
425
  @pulumi.getter(name="securityGroupId")
378
- def security_group_id(self) -> Optional[pulumi.Input[str]]:
426
+ def security_group_id(self) -> Optional[pulumi.Input[_builtins.str]]:
379
427
  """
380
428
  The security group the server is attached to
381
429
  """
382
430
  return pulumi.get(self, "security_group_id")
383
431
 
384
432
  @security_group_id.setter
385
- def security_group_id(self, value: Optional[pulumi.Input[str]]):
433
+ def security_group_id(self, value: Optional[pulumi.Input[_builtins.str]]):
386
434
  pulumi.set(self, "security_group_id", value)
387
435
 
388
- @property
436
+ @_builtins.property
389
437
  @pulumi.getter
390
- def state(self) -> Optional[pulumi.Input[str]]:
438
+ def state(self) -> Optional[pulumi.Input[_builtins.str]]:
391
439
  """
392
440
  The state of the server. Possible values are: `started`, `stopped` or `standby`.
393
441
  """
394
442
  return pulumi.get(self, "state")
395
443
 
396
444
  @state.setter
397
- def state(self, value: Optional[pulumi.Input[str]]):
445
+ def state(self, value: Optional[pulumi.Input[_builtins.str]]):
398
446
  pulumi.set(self, "state", value)
399
447
 
400
- @property
448
+ @_builtins.property
401
449
  @pulumi.getter
402
- def tags(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
450
+ def tags(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]:
403
451
  """
404
452
  The tags associated with the server.
405
453
  """
406
454
  return pulumi.get(self, "tags")
407
455
 
408
456
  @tags.setter
409
- def tags(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
457
+ def tags(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]):
410
458
  pulumi.set(self, "tags", value)
411
459
 
412
- @property
460
+ @_builtins.property
413
461
  @pulumi.getter(name="userData")
414
- def user_data(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]:
462
+ def user_data(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]]]:
415
463
  """
416
464
  The user data associated with the server.
417
465
  Use the `cloud-init` key to use [cloud-init](https://cloudinit.readthedocs.io/en/latest/) on your instance.
@@ -423,118 +471,115 @@ class InstanceServerArgs:
423
471
  return pulumi.get(self, "user_data")
424
472
 
425
473
  @user_data.setter
426
- def user_data(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]):
474
+ def user_data(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]]]):
427
475
  pulumi.set(self, "user_data", value)
428
476
 
429
- @property
477
+ @_builtins.property
430
478
  @pulumi.getter
431
- def zone(self) -> Optional[pulumi.Input[str]]:
479
+ def zone(self) -> Optional[pulumi.Input[_builtins.str]]:
432
480
  """
433
481
  `zone`) The zone in which the server should be created.
434
482
  """
435
483
  return pulumi.get(self, "zone")
436
484
 
437
485
  @zone.setter
438
- def zone(self, value: Optional[pulumi.Input[str]]):
486
+ def zone(self, value: Optional[pulumi.Input[_builtins.str]]):
439
487
  pulumi.set(self, "zone", value)
440
488
 
441
489
 
442
490
  @pulumi.input_type
443
491
  class _InstanceServerState:
444
492
  def __init__(__self__, *,
445
- additional_volume_ids: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
446
- boot_type: Optional[pulumi.Input[str]] = None,
447
- bootscript_id: Optional[pulumi.Input[str]] = None,
448
- cloud_init: Optional[pulumi.Input[str]] = None,
449
- enable_dynamic_ip: Optional[pulumi.Input[bool]] = None,
450
- enable_ipv6: Optional[pulumi.Input[bool]] = None,
451
- image: Optional[pulumi.Input[str]] = None,
452
- ip_id: Optional[pulumi.Input[str]] = None,
453
- ip_ids: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
454
- ipv6_address: Optional[pulumi.Input[str]] = None,
455
- ipv6_gateway: Optional[pulumi.Input[str]] = None,
456
- ipv6_prefix_length: Optional[pulumi.Input[int]] = None,
457
- name: Optional[pulumi.Input[str]] = None,
458
- organization_id: Optional[pulumi.Input[str]] = None,
459
- placement_group_id: Optional[pulumi.Input[str]] = None,
460
- placement_group_policy_respected: Optional[pulumi.Input[bool]] = None,
461
- private_ip: Optional[pulumi.Input[str]] = None,
493
+ additional_volume_ids: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
494
+ admin_password_encryption_ssh_key_id: Optional[pulumi.Input[_builtins.str]] = None,
495
+ boot_type: Optional[pulumi.Input[_builtins.str]] = None,
496
+ bootscript_id: Optional[pulumi.Input[_builtins.str]] = None,
497
+ cloud_init: Optional[pulumi.Input[_builtins.str]] = None,
498
+ enable_dynamic_ip: Optional[pulumi.Input[_builtins.bool]] = None,
499
+ filesystems: Optional[pulumi.Input[Sequence[pulumi.Input['InstanceServerFilesystemArgs']]]] = None,
500
+ image: Optional[pulumi.Input[_builtins.str]] = None,
501
+ ip_id: Optional[pulumi.Input[_builtins.str]] = None,
502
+ ip_ids: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
503
+ name: Optional[pulumi.Input[_builtins.str]] = None,
504
+ organization_id: Optional[pulumi.Input[_builtins.str]] = None,
505
+ placement_group_id: Optional[pulumi.Input[_builtins.str]] = None,
506
+ placement_group_policy_respected: Optional[pulumi.Input[_builtins.bool]] = None,
507
+ private_ips: Optional[pulumi.Input[Sequence[pulumi.Input['InstanceServerPrivateIpArgs']]]] = None,
462
508
  private_networks: Optional[pulumi.Input[Sequence[pulumi.Input['InstanceServerPrivateNetworkArgs']]]] = None,
463
- project_id: Optional[pulumi.Input[str]] = None,
464
- public_ip: Optional[pulumi.Input[str]] = None,
509
+ project_id: Optional[pulumi.Input[_builtins.str]] = None,
510
+ protected: Optional[pulumi.Input[_builtins.bool]] = None,
465
511
  public_ips: Optional[pulumi.Input[Sequence[pulumi.Input['InstanceServerPublicIpArgs']]]] = None,
466
- replace_on_type_change: Optional[pulumi.Input[bool]] = None,
512
+ replace_on_type_change: Optional[pulumi.Input[_builtins.bool]] = None,
467
513
  root_volume: Optional[pulumi.Input['InstanceServerRootVolumeArgs']] = None,
468
- security_group_id: Optional[pulumi.Input[str]] = None,
469
- state: Optional[pulumi.Input[str]] = None,
470
- tags: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
471
- type: Optional[pulumi.Input[str]] = None,
472
- user_data: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
473
- zone: Optional[pulumi.Input[str]] = None):
514
+ security_group_id: Optional[pulumi.Input[_builtins.str]] = None,
515
+ state: Optional[pulumi.Input[_builtins.str]] = None,
516
+ tags: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
517
+ type: Optional[pulumi.Input[_builtins.str]] = None,
518
+ user_data: Optional[pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]]] = None,
519
+ zone: Optional[pulumi.Input[_builtins.str]] = None):
474
520
  """
475
521
  Input properties used for looking up and filtering InstanceServer resources.
476
- :param pulumi.Input[Sequence[pulumi.Input[str]]] additional_volume_ids: The [additional volumes](https://www.scaleway.com/en/developers/api/instance/#path-volume-types-list-volume-types)
522
+ :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] additional_volume_ids: The [additional volumes](https://www.scaleway.com/en/developers/api/instance/#path-volume-types-list-volume-types)
477
523
  attached to the server. Updates to this field will trigger a stop/start of the server.
478
524
 
479
525
  > **Important:** If this field contains local volumes, the `state` must be set to `stopped`, otherwise it will fail.
480
526
 
481
527
  > **Important:** If this field contains local volumes, you have to first detach them, in one apply, and then delete the volume in another apply.
482
- :param pulumi.Input[str] boot_type: The boot Type of the server. Possible values are: `local`, `bootscript` or `rescue`.
483
- :param pulumi.Input[str] bootscript_id: ID of the target bootscript (set boot_type to bootscript)
484
- :param pulumi.Input[str] cloud_init: The cloud init script associated with this server
485
- :param pulumi.Input[bool] enable_dynamic_ip: If true a dynamic IP will be attached to the server.
486
- :param pulumi.Input[bool] enable_ipv6: Determines if IPv6 is enabled for the server. Useful only with `routed_ip_enabled` as false, otherwise ipv6 is always supported.
487
- Deprecated: Please use a instance.Ip with a `routed_ipv6` type.
488
- :param pulumi.Input[str] image: The UUID or the label of the base image used by the server. You can use [this endpoint](https://www.scaleway.com/en/developers/api/marketplace/#path-marketplace-images-list-marketplace-images)
528
+ :param pulumi.Input[_builtins.str] admin_password_encryption_ssh_key_id: The ID of the SSH RSA key that will be used to encrypt the initial admin password for OS requiring it.
529
+ Mandatory for Windows OS. The public_key value of this key is used to encrypt the admin password.
530
+ When set to an empty string, it resets this value and admin_password_encrypted_value to an empty string so a new password may be generated.
531
+ :param pulumi.Input[_builtins.str] boot_type: The boot Type of the server. Possible values are: `local`, `bootscript` or `rescue`.
532
+ :param pulumi.Input[_builtins.str] bootscript_id: ID of the target bootscript (set boot_type to bootscript)
533
+ :param pulumi.Input[_builtins.str] cloud_init: The cloud init script associated with this server
534
+ :param pulumi.Input[_builtins.bool] enable_dynamic_ip: If true a dynamic IP will be attached to the server.
535
+ :param pulumi.Input[Sequence[pulumi.Input['InstanceServerFilesystemArgs']]] filesystems: List of filesystems attached to the server.
536
+ :param pulumi.Input[_builtins.str] image: The UUID or the label of the base image used by the server. You can use [this endpoint](https://www.scaleway.com/en/developers/api/marketplace/#path-marketplace-images-list-marketplace-images)
489
537
  to find either the right `label` or the right local image `ID` for a given `type`. Optional when creating an instance with an existing root volume.
490
538
 
491
539
  You can check the available labels with our [CLI](https://www.scaleway.com/en/docs/compute/instances/api-cli/creating-managing-instances-with-cliv2/). ```scw marketplace image list```
492
540
 
493
541
  To retrieve more information by label please use: ```scw marketplace image get label=<LABEL>```
494
- :param pulumi.Input[str] ip_id: The ID of the reserved IP that is attached to the server.
495
- :param pulumi.Input[Sequence[pulumi.Input[str]]] ip_ids: List of ID of reserved IPs that are attached to the server. Cannot be used with `ip_id`.
496
542
 
497
- > `ip_id` to `ip_ids` migration: if moving the ip from the old `ip_id` field to the new `ip_ids`, it should not detach the ip.
498
- :param pulumi.Input[str] ipv6_address: The default ipv6 address routed to the server. ( Only set when enable_ipv6 is set to true )
499
- Deprecated: Please use a instance.Ip with a `routed_ipv6` type.
500
- :param pulumi.Input[str] ipv6_gateway: The ipv6 gateway address. ( Only set when enable_ipv6 is set to true )
501
- Deprecated: Please use a instance.Ip with a `routed_ipv6` type.
502
- :param pulumi.Input[int] ipv6_prefix_length: The prefix length of the ipv6 subnet routed to the server. ( Only set when enable_ipv6 is set to true )
503
- Deprecated: Please use a instance.Ip with a `routed_ipv6` type.
504
- :param pulumi.Input[str] name: The name of the server.
505
- :param pulumi.Input[str] organization_id: The organization ID the server is associated with.
506
- :param pulumi.Input[str] placement_group_id: The [placement group](https://www.scaleway.com/en/developers/api/instance/#path-security-groups-update-a-security-group the server is attached to.
543
+ To obtain a local-image UUID from a label, please use: ```scw marketplace local-image list image-label=<LABEL>```
544
+ :param pulumi.Input[_builtins.str] ip_id: The ID of the reserved IP that is attached to the server.
545
+ :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] ip_ids: List of ID of reserved IPs that are attached to the server. Cannot be used with `ip_id`.
507
546
 
547
+ > `ip_id` to `ip_ids` migration: if moving the ip from the old `ip_id` field to the new `ip_ids`, it should not detach the ip.
548
+ :param pulumi.Input[_builtins.str] name: The name of the server.
549
+ :param pulumi.Input[_builtins.str] organization_id: The organization ID the server is associated with.
550
+ :param pulumi.Input[_builtins.str] placement_group_id: The [placement group](<https://www.scaleway.com/en/developers/api/instance/#path-security-groups-update-a-security-group> the server is attached to.
508
551
 
509
552
  > **Important:** When updating `placement_group_id` the `state` must be set to `stopped`, otherwise it will fail.
510
- :param pulumi.Input[bool] placement_group_policy_respected: (Deprecated) Always false, use instance_placement_group ressource to known when the placement group policy is respected.
511
- :param pulumi.Input[str] private_ip: The Scaleway internal IP address of the server (Deprecated use ipam_ip datasource instead).
553
+ :param pulumi.Input[_builtins.bool] placement_group_policy_respected: (Deprecated) Always false, use instance_placement_group resource to known when the placement group policy is respected.
554
+ :param pulumi.Input[Sequence[pulumi.Input['InstanceServerPrivateIpArgs']]] private_ips: The list of private IPv4 and IPv6 addresses associated with the resource.
512
555
  :param pulumi.Input[Sequence[pulumi.Input['InstanceServerPrivateNetworkArgs']]] private_networks: The private network associated with the server.
513
556
  Use the `pn_id` key to attach a [private_network](https://www.scaleway.com/en/developers/api/instance/#path-private-nics-list-all-private-nics) on your instance.
514
- :param pulumi.Input[str] project_id: `project_id`) The ID of the project the server is associated with.
515
- :param pulumi.Input[str] public_ip: The public IP address of the server (Deprecated use `public_ips` instead).
557
+ :param pulumi.Input[_builtins.str] project_id: `project_id`) The ID of the project the server is associated with.
558
+ :param pulumi.Input[_builtins.bool] protected: Set to true to activate server protection option.
516
559
  :param pulumi.Input[Sequence[pulumi.Input['InstanceServerPublicIpArgs']]] public_ips: The list of public IPs of the server.
517
- :param pulumi.Input[bool] replace_on_type_change: If true, the server will be replaced if `type` is changed. Otherwise, the server will migrate.
560
+ :param pulumi.Input[_builtins.bool] replace_on_type_change: If true, the server will be replaced if `type` is changed. Otherwise, the server will migrate.
518
561
  :param pulumi.Input['InstanceServerRootVolumeArgs'] root_volume: Root [volume](https://www.scaleway.com/en/developers/api/instance/#path-volume-types-list-volume-types) attached to the server on creation.
519
- :param pulumi.Input[str] security_group_id: The security group the server is attached to
520
- :param pulumi.Input[str] state: The state of the server. Possible values are: `started`, `stopped` or `standby`.
521
- :param pulumi.Input[Sequence[pulumi.Input[str]]] tags: The tags associated with the server.
522
- :param pulumi.Input[str] type: The commercial type of the server.
562
+ :param pulumi.Input[_builtins.str] security_group_id: The security group the server is attached to
563
+ :param pulumi.Input[_builtins.str] state: The state of the server. Possible values are: `started`, `stopped` or `standby`.
564
+ :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] tags: The tags associated with the server.
565
+ :param pulumi.Input[_builtins.str] type: The commercial type of the server.
523
566
  You find all the available types on the [pricing page](https://www.scaleway.com/en/pricing/).
524
567
  Updates to this field will migrate the server, local storage constraint must be respected. [More info](https://www.scaleway.com/en/docs/compute/instances/api-cli/migrating-instances/).
525
568
  Use `replace_on_type_change` to trigger replacement instead of migration.
526
569
 
527
570
  > **Important:** If `type` change and migration occurs, the server will be stopped and changed backed to its original state. It will be started again if it was running.
528
- :param pulumi.Input[Mapping[str, pulumi.Input[str]]] user_data: The user data associated with the server.
571
+ :param pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]] user_data: The user data associated with the server.
529
572
  Use the `cloud-init` key to use [cloud-init](https://cloudinit.readthedocs.io/en/latest/) on your instance.
530
573
  You can define values using:
531
574
  - string
532
575
  - UTF-8 encoded file content using file
533
576
  - Binary files using filebase64.
534
- :param pulumi.Input[str] zone: `zone`) The zone in which the server should be created.
577
+ :param pulumi.Input[_builtins.str] zone: `zone`) The zone in which the server should be created.
535
578
  """
536
579
  if additional_volume_ids is not None:
537
580
  pulumi.set(__self__, "additional_volume_ids", additional_volume_ids)
581
+ if admin_password_encryption_ssh_key_id is not None:
582
+ pulumi.set(__self__, "admin_password_encryption_ssh_key_id", admin_password_encryption_ssh_key_id)
538
583
  if boot_type is not None:
539
584
  pulumi.set(__self__, "boot_type", boot_type)
540
585
  if bootscript_id is not None:
@@ -546,32 +591,14 @@ class _InstanceServerState:
546
591
  pulumi.set(__self__, "cloud_init", cloud_init)
547
592
  if enable_dynamic_ip is not None:
548
593
  pulumi.set(__self__, "enable_dynamic_ip", enable_dynamic_ip)
549
- if enable_ipv6 is not None:
550
- warnings.warn("""Please use a instance.Ip with a `routed_ipv6` type""", DeprecationWarning)
551
- pulumi.log.warn("""enable_ipv6 is deprecated: Please use a instance.Ip with a `routed_ipv6` type""")
552
- if enable_ipv6 is not None:
553
- pulumi.set(__self__, "enable_ipv6", enable_ipv6)
594
+ if filesystems is not None:
595
+ pulumi.set(__self__, "filesystems", filesystems)
554
596
  if image is not None:
555
597
  pulumi.set(__self__, "image", image)
556
598
  if ip_id is not None:
557
599
  pulumi.set(__self__, "ip_id", ip_id)
558
600
  if ip_ids is not None:
559
601
  pulumi.set(__self__, "ip_ids", ip_ids)
560
- if ipv6_address is not None:
561
- warnings.warn("""Please use a instance.Ip with a `routed_ipv6` type""", DeprecationWarning)
562
- pulumi.log.warn("""ipv6_address is deprecated: Please use a instance.Ip with a `routed_ipv6` type""")
563
- if ipv6_address is not None:
564
- pulumi.set(__self__, "ipv6_address", ipv6_address)
565
- if ipv6_gateway is not None:
566
- warnings.warn("""Please use a instance.Ip with a `routed_ipv6` type""", DeprecationWarning)
567
- pulumi.log.warn("""ipv6_gateway is deprecated: Please use a instance.Ip with a `routed_ipv6` type""")
568
- if ipv6_gateway is not None:
569
- pulumi.set(__self__, "ipv6_gateway", ipv6_gateway)
570
- if ipv6_prefix_length is not None:
571
- warnings.warn("""Please use a instance.Ip with a `routed_ipv6` type""", DeprecationWarning)
572
- pulumi.log.warn("""ipv6_prefix_length is deprecated: Please use a instance.Ip with a `routed_ipv6` type""")
573
- if ipv6_prefix_length is not None:
574
- pulumi.set(__self__, "ipv6_prefix_length", ipv6_prefix_length)
575
602
  if name is not None:
576
603
  pulumi.set(__self__, "name", name)
577
604
  if organization_id is not None:
@@ -580,20 +607,14 @@ class _InstanceServerState:
580
607
  pulumi.set(__self__, "placement_group_id", placement_group_id)
581
608
  if placement_group_policy_respected is not None:
582
609
  pulumi.set(__self__, "placement_group_policy_respected", placement_group_policy_respected)
583
- if private_ip is not None:
584
- warnings.warn("""Use ipam_ip datasource instead to fetch your server's IP in your private network.""", DeprecationWarning)
585
- pulumi.log.warn("""private_ip is deprecated: Use ipam_ip datasource instead to fetch your server's IP in your private network.""")
586
- if private_ip is not None:
587
- pulumi.set(__self__, "private_ip", private_ip)
610
+ if private_ips is not None:
611
+ pulumi.set(__self__, "private_ips", private_ips)
588
612
  if private_networks is not None:
589
613
  pulumi.set(__self__, "private_networks", private_networks)
590
614
  if project_id is not None:
591
615
  pulumi.set(__self__, "project_id", project_id)
592
- if public_ip is not None:
593
- warnings.warn("""Use public_ips instead""", DeprecationWarning)
594
- pulumi.log.warn("""public_ip is deprecated: Use public_ips instead""")
595
- if public_ip is not None:
596
- pulumi.set(__self__, "public_ip", public_ip)
616
+ if protected is not None:
617
+ pulumi.set(__self__, "protected", protected)
597
618
  if public_ips is not None:
598
619
  pulumi.set(__self__, "public_ips", public_ips)
599
620
  if replace_on_type_change is not None:
@@ -613,9 +634,9 @@ class _InstanceServerState:
613
634
  if zone is not None:
614
635
  pulumi.set(__self__, "zone", zone)
615
636
 
616
- @property
637
+ @_builtins.property
617
638
  @pulumi.getter(name="additionalVolumeIds")
618
- def additional_volume_ids(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
639
+ def additional_volume_ids(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]:
619
640
  """
620
641
  The [additional volumes](https://www.scaleway.com/en/developers/api/instance/#path-volume-types-list-volume-types)
621
642
  attached to the server. Updates to this field will trigger a stop/start of the server.
@@ -627,75 +648,87 @@ class _InstanceServerState:
627
648
  return pulumi.get(self, "additional_volume_ids")
628
649
 
629
650
  @additional_volume_ids.setter
630
- def additional_volume_ids(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
651
+ def additional_volume_ids(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]):
631
652
  pulumi.set(self, "additional_volume_ids", value)
632
653
 
633
- @property
654
+ @_builtins.property
655
+ @pulumi.getter(name="adminPasswordEncryptionSshKeyId")
656
+ def admin_password_encryption_ssh_key_id(self) -> Optional[pulumi.Input[_builtins.str]]:
657
+ """
658
+ The ID of the SSH RSA key that will be used to encrypt the initial admin password for OS requiring it.
659
+ Mandatory for Windows OS. The public_key value of this key is used to encrypt the admin password.
660
+ When set to an empty string, it resets this value and admin_password_encrypted_value to an empty string so a new password may be generated.
661
+ """
662
+ return pulumi.get(self, "admin_password_encryption_ssh_key_id")
663
+
664
+ @admin_password_encryption_ssh_key_id.setter
665
+ def admin_password_encryption_ssh_key_id(self, value: Optional[pulumi.Input[_builtins.str]]):
666
+ pulumi.set(self, "admin_password_encryption_ssh_key_id", value)
667
+
668
+ @_builtins.property
634
669
  @pulumi.getter(name="bootType")
635
- def boot_type(self) -> Optional[pulumi.Input[str]]:
670
+ def boot_type(self) -> Optional[pulumi.Input[_builtins.str]]:
636
671
  """
637
672
  The boot Type of the server. Possible values are: `local`, `bootscript` or `rescue`.
638
673
  """
639
674
  return pulumi.get(self, "boot_type")
640
675
 
641
676
  @boot_type.setter
642
- def boot_type(self, value: Optional[pulumi.Input[str]]):
677
+ def boot_type(self, value: Optional[pulumi.Input[_builtins.str]]):
643
678
  pulumi.set(self, "boot_type", value)
644
679
 
645
- @property
680
+ @_builtins.property
646
681
  @pulumi.getter(name="bootscriptId")
647
682
  @_utilities.deprecated("""bootscript is not supported anymore.""")
648
- def bootscript_id(self) -> Optional[pulumi.Input[str]]:
683
+ def bootscript_id(self) -> Optional[pulumi.Input[_builtins.str]]:
649
684
  """
650
685
  ID of the target bootscript (set boot_type to bootscript)
651
686
  """
652
687
  return pulumi.get(self, "bootscript_id")
653
688
 
654
689
  @bootscript_id.setter
655
- def bootscript_id(self, value: Optional[pulumi.Input[str]]):
690
+ def bootscript_id(self, value: Optional[pulumi.Input[_builtins.str]]):
656
691
  pulumi.set(self, "bootscript_id", value)
657
692
 
658
- @property
693
+ @_builtins.property
659
694
  @pulumi.getter(name="cloudInit")
660
- def cloud_init(self) -> Optional[pulumi.Input[str]]:
695
+ def cloud_init(self) -> Optional[pulumi.Input[_builtins.str]]:
661
696
  """
662
697
  The cloud init script associated with this server
663
698
  """
664
699
  return pulumi.get(self, "cloud_init")
665
700
 
666
701
  @cloud_init.setter
667
- def cloud_init(self, value: Optional[pulumi.Input[str]]):
702
+ def cloud_init(self, value: Optional[pulumi.Input[_builtins.str]]):
668
703
  pulumi.set(self, "cloud_init", value)
669
704
 
670
- @property
705
+ @_builtins.property
671
706
  @pulumi.getter(name="enableDynamicIp")
672
- def enable_dynamic_ip(self) -> Optional[pulumi.Input[bool]]:
707
+ def enable_dynamic_ip(self) -> Optional[pulumi.Input[_builtins.bool]]:
673
708
  """
674
709
  If true a dynamic IP will be attached to the server.
675
710
  """
676
711
  return pulumi.get(self, "enable_dynamic_ip")
677
712
 
678
713
  @enable_dynamic_ip.setter
679
- def enable_dynamic_ip(self, value: Optional[pulumi.Input[bool]]):
714
+ def enable_dynamic_ip(self, value: Optional[pulumi.Input[_builtins.bool]]):
680
715
  pulumi.set(self, "enable_dynamic_ip", value)
681
716
 
682
- @property
683
- @pulumi.getter(name="enableIpv6")
684
- @_utilities.deprecated("""Please use a instance.Ip with a `routed_ipv6` type""")
685
- def enable_ipv6(self) -> Optional[pulumi.Input[bool]]:
717
+ @_builtins.property
718
+ @pulumi.getter
719
+ def filesystems(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['InstanceServerFilesystemArgs']]]]:
686
720
  """
687
- Determines if IPv6 is enabled for the server. Useful only with `routed_ip_enabled` as false, otherwise ipv6 is always supported.
688
- Deprecated: Please use a instance.Ip with a `routed_ipv6` type.
721
+ List of filesystems attached to the server.
689
722
  """
690
- return pulumi.get(self, "enable_ipv6")
723
+ return pulumi.get(self, "filesystems")
691
724
 
692
- @enable_ipv6.setter
693
- def enable_ipv6(self, value: Optional[pulumi.Input[bool]]):
694
- pulumi.set(self, "enable_ipv6", value)
725
+ @filesystems.setter
726
+ def filesystems(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['InstanceServerFilesystemArgs']]]]):
727
+ pulumi.set(self, "filesystems", value)
695
728
 
696
- @property
729
+ @_builtins.property
697
730
  @pulumi.getter
698
- def image(self) -> Optional[pulumi.Input[str]]:
731
+ def image(self) -> Optional[pulumi.Input[_builtins.str]]:
699
732
  """
700
733
  The UUID or the label of the base image used by the server. You can use [this endpoint](https://www.scaleway.com/en/developers/api/marketplace/#path-marketplace-images-list-marketplace-images)
701
734
  to find either the right `label` or the right local image `ID` for a given `type`. Optional when creating an instance with an existing root volume.
@@ -703,28 +736,30 @@ class _InstanceServerState:
703
736
  You can check the available labels with our [CLI](https://www.scaleway.com/en/docs/compute/instances/api-cli/creating-managing-instances-with-cliv2/). ```scw marketplace image list```
704
737
 
705
738
  To retrieve more information by label please use: ```scw marketplace image get label=<LABEL>```
739
+
740
+ To obtain a local-image UUID from a label, please use: ```scw marketplace local-image list image-label=<LABEL>```
706
741
  """
707
742
  return pulumi.get(self, "image")
708
743
 
709
744
  @image.setter
710
- def image(self, value: Optional[pulumi.Input[str]]):
745
+ def image(self, value: Optional[pulumi.Input[_builtins.str]]):
711
746
  pulumi.set(self, "image", value)
712
747
 
713
- @property
748
+ @_builtins.property
714
749
  @pulumi.getter(name="ipId")
715
- def ip_id(self) -> Optional[pulumi.Input[str]]:
750
+ def ip_id(self) -> Optional[pulumi.Input[_builtins.str]]:
716
751
  """
717
752
  The ID of the reserved IP that is attached to the server.
718
753
  """
719
754
  return pulumi.get(self, "ip_id")
720
755
 
721
756
  @ip_id.setter
722
- def ip_id(self, value: Optional[pulumi.Input[str]]):
757
+ def ip_id(self, value: Optional[pulumi.Input[_builtins.str]]):
723
758
  pulumi.set(self, "ip_id", value)
724
759
 
725
- @property
760
+ @_builtins.property
726
761
  @pulumi.getter(name="ipIds")
727
- def ip_ids(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
762
+ def ip_ids(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]:
728
763
  """
729
764
  List of ID of reserved IPs that are attached to the server. Cannot be used with `ip_id`.
730
765
 
@@ -733,116 +768,72 @@ class _InstanceServerState:
733
768
  return pulumi.get(self, "ip_ids")
734
769
 
735
770
  @ip_ids.setter
736
- def ip_ids(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
771
+ def ip_ids(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]):
737
772
  pulumi.set(self, "ip_ids", value)
738
773
 
739
- @property
740
- @pulumi.getter(name="ipv6Address")
741
- @_utilities.deprecated("""Please use a instance.Ip with a `routed_ipv6` type""")
742
- def ipv6_address(self) -> Optional[pulumi.Input[str]]:
743
- """
744
- The default ipv6 address routed to the server. ( Only set when enable_ipv6 is set to true )
745
- Deprecated: Please use a instance.Ip with a `routed_ipv6` type.
746
- """
747
- return pulumi.get(self, "ipv6_address")
748
-
749
- @ipv6_address.setter
750
- def ipv6_address(self, value: Optional[pulumi.Input[str]]):
751
- pulumi.set(self, "ipv6_address", value)
752
-
753
- @property
754
- @pulumi.getter(name="ipv6Gateway")
755
- @_utilities.deprecated("""Please use a instance.Ip with a `routed_ipv6` type""")
756
- def ipv6_gateway(self) -> Optional[pulumi.Input[str]]:
757
- """
758
- The ipv6 gateway address. ( Only set when enable_ipv6 is set to true )
759
- Deprecated: Please use a instance.Ip with a `routed_ipv6` type.
760
- """
761
- return pulumi.get(self, "ipv6_gateway")
762
-
763
- @ipv6_gateway.setter
764
- def ipv6_gateway(self, value: Optional[pulumi.Input[str]]):
765
- pulumi.set(self, "ipv6_gateway", value)
766
-
767
- @property
768
- @pulumi.getter(name="ipv6PrefixLength")
769
- @_utilities.deprecated("""Please use a instance.Ip with a `routed_ipv6` type""")
770
- def ipv6_prefix_length(self) -> Optional[pulumi.Input[int]]:
771
- """
772
- The prefix length of the ipv6 subnet routed to the server. ( Only set when enable_ipv6 is set to true )
773
- Deprecated: Please use a instance.Ip with a `routed_ipv6` type.
774
- """
775
- return pulumi.get(self, "ipv6_prefix_length")
776
-
777
- @ipv6_prefix_length.setter
778
- def ipv6_prefix_length(self, value: Optional[pulumi.Input[int]]):
779
- pulumi.set(self, "ipv6_prefix_length", value)
780
-
781
- @property
774
+ @_builtins.property
782
775
  @pulumi.getter
783
- def name(self) -> Optional[pulumi.Input[str]]:
776
+ def name(self) -> Optional[pulumi.Input[_builtins.str]]:
784
777
  """
785
778
  The name of the server.
786
779
  """
787
780
  return pulumi.get(self, "name")
788
781
 
789
782
  @name.setter
790
- def name(self, value: Optional[pulumi.Input[str]]):
783
+ def name(self, value: Optional[pulumi.Input[_builtins.str]]):
791
784
  pulumi.set(self, "name", value)
792
785
 
793
- @property
786
+ @_builtins.property
794
787
  @pulumi.getter(name="organizationId")
795
- def organization_id(self) -> Optional[pulumi.Input[str]]:
788
+ def organization_id(self) -> Optional[pulumi.Input[_builtins.str]]:
796
789
  """
797
790
  The organization ID the server is associated with.
798
791
  """
799
792
  return pulumi.get(self, "organization_id")
800
793
 
801
794
  @organization_id.setter
802
- def organization_id(self, value: Optional[pulumi.Input[str]]):
795
+ def organization_id(self, value: Optional[pulumi.Input[_builtins.str]]):
803
796
  pulumi.set(self, "organization_id", value)
804
797
 
805
- @property
798
+ @_builtins.property
806
799
  @pulumi.getter(name="placementGroupId")
807
- def placement_group_id(self) -> Optional[pulumi.Input[str]]:
800
+ def placement_group_id(self) -> Optional[pulumi.Input[_builtins.str]]:
808
801
  """
809
- The [placement group](https://www.scaleway.com/en/developers/api/instance/#path-security-groups-update-a-security-group the server is attached to.
810
-
802
+ The [placement group](<https://www.scaleway.com/en/developers/api/instance/#path-security-groups-update-a-security-group> the server is attached to.
811
803
 
812
804
  > **Important:** When updating `placement_group_id` the `state` must be set to `stopped`, otherwise it will fail.
813
805
  """
814
806
  return pulumi.get(self, "placement_group_id")
815
807
 
816
808
  @placement_group_id.setter
817
- def placement_group_id(self, value: Optional[pulumi.Input[str]]):
809
+ def placement_group_id(self, value: Optional[pulumi.Input[_builtins.str]]):
818
810
  pulumi.set(self, "placement_group_id", value)
819
811
 
820
- @property
812
+ @_builtins.property
821
813
  @pulumi.getter(name="placementGroupPolicyRespected")
822
- def placement_group_policy_respected(self) -> Optional[pulumi.Input[bool]]:
814
+ def placement_group_policy_respected(self) -> Optional[pulumi.Input[_builtins.bool]]:
823
815
  """
824
- (Deprecated) Always false, use instance_placement_group ressource to known when the placement group policy is respected.
816
+ (Deprecated) Always false, use instance_placement_group resource to known when the placement group policy is respected.
825
817
  """
826
818
  return pulumi.get(self, "placement_group_policy_respected")
827
819
 
828
820
  @placement_group_policy_respected.setter
829
- def placement_group_policy_respected(self, value: Optional[pulumi.Input[bool]]):
821
+ def placement_group_policy_respected(self, value: Optional[pulumi.Input[_builtins.bool]]):
830
822
  pulumi.set(self, "placement_group_policy_respected", value)
831
823
 
832
- @property
833
- @pulumi.getter(name="privateIp")
834
- @_utilities.deprecated("""Use ipam_ip datasource instead to fetch your server's IP in your private network.""")
835
- def private_ip(self) -> Optional[pulumi.Input[str]]:
824
+ @_builtins.property
825
+ @pulumi.getter(name="privateIps")
826
+ def private_ips(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['InstanceServerPrivateIpArgs']]]]:
836
827
  """
837
- The Scaleway internal IP address of the server (Deprecated use ipam_ip datasource instead).
828
+ The list of private IPv4 and IPv6 addresses associated with the resource.
838
829
  """
839
- return pulumi.get(self, "private_ip")
830
+ return pulumi.get(self, "private_ips")
840
831
 
841
- @private_ip.setter
842
- def private_ip(self, value: Optional[pulumi.Input[str]]):
843
- pulumi.set(self, "private_ip", value)
832
+ @private_ips.setter
833
+ def private_ips(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['InstanceServerPrivateIpArgs']]]]):
834
+ pulumi.set(self, "private_ips", value)
844
835
 
845
- @property
836
+ @_builtins.property
846
837
  @pulumi.getter(name="privateNetworks")
847
838
  def private_networks(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['InstanceServerPrivateNetworkArgs']]]]:
848
839
  """
@@ -855,32 +846,31 @@ class _InstanceServerState:
855
846
  def private_networks(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['InstanceServerPrivateNetworkArgs']]]]):
856
847
  pulumi.set(self, "private_networks", value)
857
848
 
858
- @property
849
+ @_builtins.property
859
850
  @pulumi.getter(name="projectId")
860
- def project_id(self) -> Optional[pulumi.Input[str]]:
851
+ def project_id(self) -> Optional[pulumi.Input[_builtins.str]]:
861
852
  """
862
853
  `project_id`) The ID of the project the server is associated with.
863
854
  """
864
855
  return pulumi.get(self, "project_id")
865
856
 
866
857
  @project_id.setter
867
- def project_id(self, value: Optional[pulumi.Input[str]]):
858
+ def project_id(self, value: Optional[pulumi.Input[_builtins.str]]):
868
859
  pulumi.set(self, "project_id", value)
869
860
 
870
- @property
871
- @pulumi.getter(name="publicIp")
872
- @_utilities.deprecated("""Use public_ips instead""")
873
- def public_ip(self) -> Optional[pulumi.Input[str]]:
861
+ @_builtins.property
862
+ @pulumi.getter
863
+ def protected(self) -> Optional[pulumi.Input[_builtins.bool]]:
874
864
  """
875
- The public IP address of the server (Deprecated use `public_ips` instead).
865
+ Set to true to activate server protection option.
876
866
  """
877
- return pulumi.get(self, "public_ip")
867
+ return pulumi.get(self, "protected")
878
868
 
879
- @public_ip.setter
880
- def public_ip(self, value: Optional[pulumi.Input[str]]):
881
- pulumi.set(self, "public_ip", value)
869
+ @protected.setter
870
+ def protected(self, value: Optional[pulumi.Input[_builtins.bool]]):
871
+ pulumi.set(self, "protected", value)
882
872
 
883
- @property
873
+ @_builtins.property
884
874
  @pulumi.getter(name="publicIps")
885
875
  def public_ips(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['InstanceServerPublicIpArgs']]]]:
886
876
  """
@@ -892,19 +882,19 @@ class _InstanceServerState:
892
882
  def public_ips(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['InstanceServerPublicIpArgs']]]]):
893
883
  pulumi.set(self, "public_ips", value)
894
884
 
895
- @property
885
+ @_builtins.property
896
886
  @pulumi.getter(name="replaceOnTypeChange")
897
- def replace_on_type_change(self) -> Optional[pulumi.Input[bool]]:
887
+ def replace_on_type_change(self) -> Optional[pulumi.Input[_builtins.bool]]:
898
888
  """
899
889
  If true, the server will be replaced if `type` is changed. Otherwise, the server will migrate.
900
890
  """
901
891
  return pulumi.get(self, "replace_on_type_change")
902
892
 
903
893
  @replace_on_type_change.setter
904
- def replace_on_type_change(self, value: Optional[pulumi.Input[bool]]):
894
+ def replace_on_type_change(self, value: Optional[pulumi.Input[_builtins.bool]]):
905
895
  pulumi.set(self, "replace_on_type_change", value)
906
896
 
907
- @property
897
+ @_builtins.property
908
898
  @pulumi.getter(name="rootVolume")
909
899
  def root_volume(self) -> Optional[pulumi.Input['InstanceServerRootVolumeArgs']]:
910
900
  """
@@ -916,45 +906,45 @@ class _InstanceServerState:
916
906
  def root_volume(self, value: Optional[pulumi.Input['InstanceServerRootVolumeArgs']]):
917
907
  pulumi.set(self, "root_volume", value)
918
908
 
919
- @property
909
+ @_builtins.property
920
910
  @pulumi.getter(name="securityGroupId")
921
- def security_group_id(self) -> Optional[pulumi.Input[str]]:
911
+ def security_group_id(self) -> Optional[pulumi.Input[_builtins.str]]:
922
912
  """
923
913
  The security group the server is attached to
924
914
  """
925
915
  return pulumi.get(self, "security_group_id")
926
916
 
927
917
  @security_group_id.setter
928
- def security_group_id(self, value: Optional[pulumi.Input[str]]):
918
+ def security_group_id(self, value: Optional[pulumi.Input[_builtins.str]]):
929
919
  pulumi.set(self, "security_group_id", value)
930
920
 
931
- @property
921
+ @_builtins.property
932
922
  @pulumi.getter
933
- def state(self) -> Optional[pulumi.Input[str]]:
923
+ def state(self) -> Optional[pulumi.Input[_builtins.str]]:
934
924
  """
935
925
  The state of the server. Possible values are: `started`, `stopped` or `standby`.
936
926
  """
937
927
  return pulumi.get(self, "state")
938
928
 
939
929
  @state.setter
940
- def state(self, value: Optional[pulumi.Input[str]]):
930
+ def state(self, value: Optional[pulumi.Input[_builtins.str]]):
941
931
  pulumi.set(self, "state", value)
942
932
 
943
- @property
933
+ @_builtins.property
944
934
  @pulumi.getter
945
- def tags(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
935
+ def tags(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]:
946
936
  """
947
937
  The tags associated with the server.
948
938
  """
949
939
  return pulumi.get(self, "tags")
950
940
 
951
941
  @tags.setter
952
- def tags(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
942
+ def tags(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]):
953
943
  pulumi.set(self, "tags", value)
954
944
 
955
- @property
945
+ @_builtins.property
956
946
  @pulumi.getter
957
- def type(self) -> Optional[pulumi.Input[str]]:
947
+ def type(self) -> Optional[pulumi.Input[_builtins.str]]:
958
948
  """
959
949
  The commercial type of the server.
960
950
  You find all the available types on the [pricing page](https://www.scaleway.com/en/pricing/).
@@ -966,12 +956,12 @@ class _InstanceServerState:
966
956
  return pulumi.get(self, "type")
967
957
 
968
958
  @type.setter
969
- def type(self, value: Optional[pulumi.Input[str]]):
959
+ def type(self, value: Optional[pulumi.Input[_builtins.str]]):
970
960
  pulumi.set(self, "type", value)
971
961
 
972
- @property
962
+ @_builtins.property
973
963
  @pulumi.getter(name="userData")
974
- def user_data(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]:
964
+ def user_data(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]]]:
975
965
  """
976
966
  The user data associated with the server.
977
967
  Use the `cloud-init` key to use [cloud-init](https://cloudinit.readthedocs.io/en/latest/) on your instance.
@@ -983,25 +973,26 @@ class _InstanceServerState:
983
973
  return pulumi.get(self, "user_data")
984
974
 
985
975
  @user_data.setter
986
- def user_data(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]):
976
+ def user_data(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]]]):
987
977
  pulumi.set(self, "user_data", value)
988
978
 
989
- @property
979
+ @_builtins.property
990
980
  @pulumi.getter
991
- def zone(self) -> Optional[pulumi.Input[str]]:
981
+ def zone(self) -> Optional[pulumi.Input[_builtins.str]]:
992
982
  """
993
983
  `zone`) The zone in which the server should be created.
994
984
  """
995
985
  return pulumi.get(self, "zone")
996
986
 
997
987
  @zone.setter
998
- def zone(self, value: Optional[pulumi.Input[str]]):
988
+ def zone(self, value: Optional[pulumi.Input[_builtins.str]]):
999
989
  pulumi.set(self, "zone", value)
1000
990
 
1001
991
 
1002
992
  warnings.warn("""scaleway.index/instanceserver.InstanceServer has been deprecated in favor of scaleway.instance/server.Server""", DeprecationWarning)
1003
993
 
1004
994
 
995
+ @pulumi.type_token("scaleway:index/instanceServer:InstanceServer")
1005
996
  class InstanceServer(pulumi.CustomResource):
1006
997
  warnings.warn("""scaleway.index/instanceserver.InstanceServer has been deprecated in favor of scaleway.instance/server.Server""", DeprecationWarning)
1007
998
 
@@ -1009,28 +1000,31 @@ class InstanceServer(pulumi.CustomResource):
1009
1000
  def __init__(__self__,
1010
1001
  resource_name: str,
1011
1002
  opts: Optional[pulumi.ResourceOptions] = None,
1012
- additional_volume_ids: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
1013
- boot_type: Optional[pulumi.Input[str]] = None,
1014
- bootscript_id: Optional[pulumi.Input[str]] = None,
1015
- cloud_init: Optional[pulumi.Input[str]] = None,
1016
- enable_dynamic_ip: Optional[pulumi.Input[bool]] = None,
1017
- enable_ipv6: Optional[pulumi.Input[bool]] = None,
1018
- image: Optional[pulumi.Input[str]] = None,
1019
- ip_id: Optional[pulumi.Input[str]] = None,
1020
- ip_ids: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
1021
- name: Optional[pulumi.Input[str]] = None,
1022
- placement_group_id: Optional[pulumi.Input[str]] = None,
1003
+ additional_volume_ids: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
1004
+ admin_password_encryption_ssh_key_id: Optional[pulumi.Input[_builtins.str]] = None,
1005
+ boot_type: Optional[pulumi.Input[_builtins.str]] = None,
1006
+ bootscript_id: Optional[pulumi.Input[_builtins.str]] = None,
1007
+ cloud_init: Optional[pulumi.Input[_builtins.str]] = None,
1008
+ enable_dynamic_ip: Optional[pulumi.Input[_builtins.bool]] = None,
1009
+ filesystems: Optional[pulumi.Input[Sequence[pulumi.Input[Union['InstanceServerFilesystemArgs', 'InstanceServerFilesystemArgsDict']]]]] = None,
1010
+ image: Optional[pulumi.Input[_builtins.str]] = None,
1011
+ ip_id: Optional[pulumi.Input[_builtins.str]] = None,
1012
+ ip_ids: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
1013
+ name: Optional[pulumi.Input[_builtins.str]] = None,
1014
+ placement_group_id: Optional[pulumi.Input[_builtins.str]] = None,
1015
+ private_ips: Optional[pulumi.Input[Sequence[pulumi.Input[Union['InstanceServerPrivateIpArgs', 'InstanceServerPrivateIpArgsDict']]]]] = None,
1023
1016
  private_networks: Optional[pulumi.Input[Sequence[pulumi.Input[Union['InstanceServerPrivateNetworkArgs', 'InstanceServerPrivateNetworkArgsDict']]]]] = None,
1024
- project_id: Optional[pulumi.Input[str]] = None,
1017
+ project_id: Optional[pulumi.Input[_builtins.str]] = None,
1018
+ protected: Optional[pulumi.Input[_builtins.bool]] = None,
1025
1019
  public_ips: Optional[pulumi.Input[Sequence[pulumi.Input[Union['InstanceServerPublicIpArgs', 'InstanceServerPublicIpArgsDict']]]]] = None,
1026
- replace_on_type_change: Optional[pulumi.Input[bool]] = None,
1020
+ replace_on_type_change: Optional[pulumi.Input[_builtins.bool]] = None,
1027
1021
  root_volume: Optional[pulumi.Input[Union['InstanceServerRootVolumeArgs', 'InstanceServerRootVolumeArgsDict']]] = None,
1028
- security_group_id: Optional[pulumi.Input[str]] = None,
1029
- state: Optional[pulumi.Input[str]] = None,
1030
- tags: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
1031
- type: Optional[pulumi.Input[str]] = None,
1032
- user_data: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
1033
- zone: Optional[pulumi.Input[str]] = None,
1022
+ security_group_id: Optional[pulumi.Input[_builtins.str]] = None,
1023
+ state: Optional[pulumi.Input[_builtins.str]] = None,
1024
+ tags: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
1025
+ type: Optional[pulumi.Input[_builtins.str]] = None,
1026
+ user_data: Optional[pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]]] = None,
1027
+ zone: Optional[pulumi.Input[_builtins.str]] = None,
1034
1028
  __props__=None):
1035
1029
  """
1036
1030
  Creates and manages Scaleway compute Instances. For more information, see the [API documentation](https://www.scaleway.com/en/developers/api/instance/#path-instances-list-all-instances).
@@ -1074,6 +1068,35 @@ class InstanceServer(pulumi.CustomResource):
1074
1068
  additional_volume_ids=[data.id])
1075
1069
  ```
1076
1070
 
1071
+ ### With filesystem
1072
+
1073
+ ```python
1074
+ import pulumi
1075
+ import pulumiverse_scaleway as scaleway
1076
+
1077
+ volume = scaleway.block.Volume("volume",
1078
+ iops=15000,
1079
+ size_in_gb=15)
1080
+ terraform_instance_filesystem = scaleway.FileFilesystem("terraform_instance_filesystem",
1081
+ name="filesystem-instance-terraform",
1082
+ size_in_gb=100)
1083
+ base = scaleway.instance.Server("base",
1084
+ type="POP2-HM-2C-16G",
1085
+ state="started",
1086
+ tags=[
1087
+ "terraform-test",
1088
+ "scaleway_instance_server",
1089
+ "state",
1090
+ ],
1091
+ root_volume={
1092
+ "volume_type": "sbs_volume",
1093
+ "volume_id": volume.id,
1094
+ },
1095
+ filesystems=[{
1096
+ "filesystem_id": terraform_instance_filesystem.id,
1097
+ }])
1098
+ ```
1099
+
1077
1100
  ### With a reserved IP
1078
1101
 
1079
1102
  ```python
@@ -1215,55 +1238,60 @@ class InstanceServer(pulumi.CustomResource):
1215
1238
 
1216
1239
  :param str resource_name: The name of the resource.
1217
1240
  :param pulumi.ResourceOptions opts: Options for the resource.
1218
- :param pulumi.Input[Sequence[pulumi.Input[str]]] additional_volume_ids: The [additional volumes](https://www.scaleway.com/en/developers/api/instance/#path-volume-types-list-volume-types)
1241
+ :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] additional_volume_ids: The [additional volumes](https://www.scaleway.com/en/developers/api/instance/#path-volume-types-list-volume-types)
1219
1242
  attached to the server. Updates to this field will trigger a stop/start of the server.
1220
1243
 
1221
1244
  > **Important:** If this field contains local volumes, the `state` must be set to `stopped`, otherwise it will fail.
1222
1245
 
1223
1246
  > **Important:** If this field contains local volumes, you have to first detach them, in one apply, and then delete the volume in another apply.
1224
- :param pulumi.Input[str] boot_type: The boot Type of the server. Possible values are: `local`, `bootscript` or `rescue`.
1225
- :param pulumi.Input[str] bootscript_id: ID of the target bootscript (set boot_type to bootscript)
1226
- :param pulumi.Input[str] cloud_init: The cloud init script associated with this server
1227
- :param pulumi.Input[bool] enable_dynamic_ip: If true a dynamic IP will be attached to the server.
1228
- :param pulumi.Input[bool] enable_ipv6: Determines if IPv6 is enabled for the server. Useful only with `routed_ip_enabled` as false, otherwise ipv6 is always supported.
1229
- Deprecated: Please use a instance.Ip with a `routed_ipv6` type.
1230
- :param pulumi.Input[str] image: The UUID or the label of the base image used by the server. You can use [this endpoint](https://www.scaleway.com/en/developers/api/marketplace/#path-marketplace-images-list-marketplace-images)
1247
+ :param pulumi.Input[_builtins.str] admin_password_encryption_ssh_key_id: The ID of the SSH RSA key that will be used to encrypt the initial admin password for OS requiring it.
1248
+ Mandatory for Windows OS. The public_key value of this key is used to encrypt the admin password.
1249
+ When set to an empty string, it resets this value and admin_password_encrypted_value to an empty string so a new password may be generated.
1250
+ :param pulumi.Input[_builtins.str] boot_type: The boot Type of the server. Possible values are: `local`, `bootscript` or `rescue`.
1251
+ :param pulumi.Input[_builtins.str] bootscript_id: ID of the target bootscript (set boot_type to bootscript)
1252
+ :param pulumi.Input[_builtins.str] cloud_init: The cloud init script associated with this server
1253
+ :param pulumi.Input[_builtins.bool] enable_dynamic_ip: If true a dynamic IP will be attached to the server.
1254
+ :param pulumi.Input[Sequence[pulumi.Input[Union['InstanceServerFilesystemArgs', 'InstanceServerFilesystemArgsDict']]]] filesystems: List of filesystems attached to the server.
1255
+ :param pulumi.Input[_builtins.str] image: The UUID or the label of the base image used by the server. You can use [this endpoint](https://www.scaleway.com/en/developers/api/marketplace/#path-marketplace-images-list-marketplace-images)
1231
1256
  to find either the right `label` or the right local image `ID` for a given `type`. Optional when creating an instance with an existing root volume.
1232
1257
 
1233
1258
  You can check the available labels with our [CLI](https://www.scaleway.com/en/docs/compute/instances/api-cli/creating-managing-instances-with-cliv2/). ```scw marketplace image list```
1234
1259
 
1235
1260
  To retrieve more information by label please use: ```scw marketplace image get label=<LABEL>```
1236
- :param pulumi.Input[str] ip_id: The ID of the reserved IP that is attached to the server.
1237
- :param pulumi.Input[Sequence[pulumi.Input[str]]] ip_ids: List of ID of reserved IPs that are attached to the server. Cannot be used with `ip_id`.
1238
1261
 
1239
- > `ip_id` to `ip_ids` migration: if moving the ip from the old `ip_id` field to the new `ip_ids`, it should not detach the ip.
1240
- :param pulumi.Input[str] name: The name of the server.
1241
- :param pulumi.Input[str] placement_group_id: The [placement group](https://www.scaleway.com/en/developers/api/instance/#path-security-groups-update-a-security-group the server is attached to.
1262
+ To obtain a local-image UUID from a label, please use: ```scw marketplace local-image list image-label=<LABEL>```
1263
+ :param pulumi.Input[_builtins.str] ip_id: The ID of the reserved IP that is attached to the server.
1264
+ :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] ip_ids: List of ID of reserved IPs that are attached to the server. Cannot be used with `ip_id`.
1242
1265
 
1266
+ > `ip_id` to `ip_ids` migration: if moving the ip from the old `ip_id` field to the new `ip_ids`, it should not detach the ip.
1267
+ :param pulumi.Input[_builtins.str] name: The name of the server.
1268
+ :param pulumi.Input[_builtins.str] placement_group_id: The [placement group](<https://www.scaleway.com/en/developers/api/instance/#path-security-groups-update-a-security-group> the server is attached to.
1243
1269
 
1244
1270
  > **Important:** When updating `placement_group_id` the `state` must be set to `stopped`, otherwise it will fail.
1271
+ :param pulumi.Input[Sequence[pulumi.Input[Union['InstanceServerPrivateIpArgs', 'InstanceServerPrivateIpArgsDict']]]] private_ips: The list of private IPv4 and IPv6 addresses associated with the resource.
1245
1272
  :param pulumi.Input[Sequence[pulumi.Input[Union['InstanceServerPrivateNetworkArgs', 'InstanceServerPrivateNetworkArgsDict']]]] private_networks: The private network associated with the server.
1246
1273
  Use the `pn_id` key to attach a [private_network](https://www.scaleway.com/en/developers/api/instance/#path-private-nics-list-all-private-nics) on your instance.
1247
- :param pulumi.Input[str] project_id: `project_id`) The ID of the project the server is associated with.
1274
+ :param pulumi.Input[_builtins.str] project_id: `project_id`) The ID of the project the server is associated with.
1275
+ :param pulumi.Input[_builtins.bool] protected: Set to true to activate server protection option.
1248
1276
  :param pulumi.Input[Sequence[pulumi.Input[Union['InstanceServerPublicIpArgs', 'InstanceServerPublicIpArgsDict']]]] public_ips: The list of public IPs of the server.
1249
- :param pulumi.Input[bool] replace_on_type_change: If true, the server will be replaced if `type` is changed. Otherwise, the server will migrate.
1277
+ :param pulumi.Input[_builtins.bool] replace_on_type_change: If true, the server will be replaced if `type` is changed. Otherwise, the server will migrate.
1250
1278
  :param pulumi.Input[Union['InstanceServerRootVolumeArgs', 'InstanceServerRootVolumeArgsDict']] root_volume: Root [volume](https://www.scaleway.com/en/developers/api/instance/#path-volume-types-list-volume-types) attached to the server on creation.
1251
- :param pulumi.Input[str] security_group_id: The security group the server is attached to
1252
- :param pulumi.Input[str] state: The state of the server. Possible values are: `started`, `stopped` or `standby`.
1253
- :param pulumi.Input[Sequence[pulumi.Input[str]]] tags: The tags associated with the server.
1254
- :param pulumi.Input[str] type: The commercial type of the server.
1279
+ :param pulumi.Input[_builtins.str] security_group_id: The security group the server is attached to
1280
+ :param pulumi.Input[_builtins.str] state: The state of the server. Possible values are: `started`, `stopped` or `standby`.
1281
+ :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] tags: The tags associated with the server.
1282
+ :param pulumi.Input[_builtins.str] type: The commercial type of the server.
1255
1283
  You find all the available types on the [pricing page](https://www.scaleway.com/en/pricing/).
1256
1284
  Updates to this field will migrate the server, local storage constraint must be respected. [More info](https://www.scaleway.com/en/docs/compute/instances/api-cli/migrating-instances/).
1257
1285
  Use `replace_on_type_change` to trigger replacement instead of migration.
1258
1286
 
1259
1287
  > **Important:** If `type` change and migration occurs, the server will be stopped and changed backed to its original state. It will be started again if it was running.
1260
- :param pulumi.Input[Mapping[str, pulumi.Input[str]]] user_data: The user data associated with the server.
1288
+ :param pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]] user_data: The user data associated with the server.
1261
1289
  Use the `cloud-init` key to use [cloud-init](https://cloudinit.readthedocs.io/en/latest/) on your instance.
1262
1290
  You can define values using:
1263
1291
  - string
1264
1292
  - UTF-8 encoded file content using file
1265
1293
  - Binary files using filebase64.
1266
- :param pulumi.Input[str] zone: `zone`) The zone in which the server should be created.
1294
+ :param pulumi.Input[_builtins.str] zone: `zone`) The zone in which the server should be created.
1267
1295
  """
1268
1296
  ...
1269
1297
  @overload
@@ -1313,6 +1341,35 @@ class InstanceServer(pulumi.CustomResource):
1313
1341
  additional_volume_ids=[data.id])
1314
1342
  ```
1315
1343
 
1344
+ ### With filesystem
1345
+
1346
+ ```python
1347
+ import pulumi
1348
+ import pulumiverse_scaleway as scaleway
1349
+
1350
+ volume = scaleway.block.Volume("volume",
1351
+ iops=15000,
1352
+ size_in_gb=15)
1353
+ terraform_instance_filesystem = scaleway.FileFilesystem("terraform_instance_filesystem",
1354
+ name="filesystem-instance-terraform",
1355
+ size_in_gb=100)
1356
+ base = scaleway.instance.Server("base",
1357
+ type="POP2-HM-2C-16G",
1358
+ state="started",
1359
+ tags=[
1360
+ "terraform-test",
1361
+ "scaleway_instance_server",
1362
+ "state",
1363
+ ],
1364
+ root_volume={
1365
+ "volume_type": "sbs_volume",
1366
+ "volume_id": volume.id,
1367
+ },
1368
+ filesystems=[{
1369
+ "filesystem_id": terraform_instance_filesystem.id,
1370
+ }])
1371
+ ```
1372
+
1316
1373
  ### With a reserved IP
1317
1374
 
1318
1375
  ```python
@@ -1467,28 +1524,31 @@ class InstanceServer(pulumi.CustomResource):
1467
1524
  def _internal_init(__self__,
1468
1525
  resource_name: str,
1469
1526
  opts: Optional[pulumi.ResourceOptions] = None,
1470
- additional_volume_ids: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
1471
- boot_type: Optional[pulumi.Input[str]] = None,
1472
- bootscript_id: Optional[pulumi.Input[str]] = None,
1473
- cloud_init: Optional[pulumi.Input[str]] = None,
1474
- enable_dynamic_ip: Optional[pulumi.Input[bool]] = None,
1475
- enable_ipv6: Optional[pulumi.Input[bool]] = None,
1476
- image: Optional[pulumi.Input[str]] = None,
1477
- ip_id: Optional[pulumi.Input[str]] = None,
1478
- ip_ids: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
1479
- name: Optional[pulumi.Input[str]] = None,
1480
- placement_group_id: Optional[pulumi.Input[str]] = None,
1527
+ additional_volume_ids: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
1528
+ admin_password_encryption_ssh_key_id: Optional[pulumi.Input[_builtins.str]] = None,
1529
+ boot_type: Optional[pulumi.Input[_builtins.str]] = None,
1530
+ bootscript_id: Optional[pulumi.Input[_builtins.str]] = None,
1531
+ cloud_init: Optional[pulumi.Input[_builtins.str]] = None,
1532
+ enable_dynamic_ip: Optional[pulumi.Input[_builtins.bool]] = None,
1533
+ filesystems: Optional[pulumi.Input[Sequence[pulumi.Input[Union['InstanceServerFilesystemArgs', 'InstanceServerFilesystemArgsDict']]]]] = None,
1534
+ image: Optional[pulumi.Input[_builtins.str]] = None,
1535
+ ip_id: Optional[pulumi.Input[_builtins.str]] = None,
1536
+ ip_ids: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
1537
+ name: Optional[pulumi.Input[_builtins.str]] = None,
1538
+ placement_group_id: Optional[pulumi.Input[_builtins.str]] = None,
1539
+ private_ips: Optional[pulumi.Input[Sequence[pulumi.Input[Union['InstanceServerPrivateIpArgs', 'InstanceServerPrivateIpArgsDict']]]]] = None,
1481
1540
  private_networks: Optional[pulumi.Input[Sequence[pulumi.Input[Union['InstanceServerPrivateNetworkArgs', 'InstanceServerPrivateNetworkArgsDict']]]]] = None,
1482
- project_id: Optional[pulumi.Input[str]] = None,
1541
+ project_id: Optional[pulumi.Input[_builtins.str]] = None,
1542
+ protected: Optional[pulumi.Input[_builtins.bool]] = None,
1483
1543
  public_ips: Optional[pulumi.Input[Sequence[pulumi.Input[Union['InstanceServerPublicIpArgs', 'InstanceServerPublicIpArgsDict']]]]] = None,
1484
- replace_on_type_change: Optional[pulumi.Input[bool]] = None,
1544
+ replace_on_type_change: Optional[pulumi.Input[_builtins.bool]] = None,
1485
1545
  root_volume: Optional[pulumi.Input[Union['InstanceServerRootVolumeArgs', 'InstanceServerRootVolumeArgsDict']]] = None,
1486
- security_group_id: Optional[pulumi.Input[str]] = None,
1487
- state: Optional[pulumi.Input[str]] = None,
1488
- tags: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
1489
- type: Optional[pulumi.Input[str]] = None,
1490
- user_data: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
1491
- zone: Optional[pulumi.Input[str]] = None,
1546
+ security_group_id: Optional[pulumi.Input[_builtins.str]] = None,
1547
+ state: Optional[pulumi.Input[_builtins.str]] = None,
1548
+ tags: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
1549
+ type: Optional[pulumi.Input[_builtins.str]] = None,
1550
+ user_data: Optional[pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]]] = None,
1551
+ zone: Optional[pulumi.Input[_builtins.str]] = None,
1492
1552
  __props__=None):
1493
1553
  pulumi.log.warn("""InstanceServer is deprecated: scaleway.index/instanceserver.InstanceServer has been deprecated in favor of scaleway.instance/server.Server""")
1494
1554
  opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts)
@@ -1500,18 +1560,21 @@ class InstanceServer(pulumi.CustomResource):
1500
1560
  __props__ = InstanceServerArgs.__new__(InstanceServerArgs)
1501
1561
 
1502
1562
  __props__.__dict__["additional_volume_ids"] = additional_volume_ids
1563
+ __props__.__dict__["admin_password_encryption_ssh_key_id"] = admin_password_encryption_ssh_key_id
1503
1564
  __props__.__dict__["boot_type"] = boot_type
1504
1565
  __props__.__dict__["bootscript_id"] = bootscript_id
1505
1566
  __props__.__dict__["cloud_init"] = cloud_init
1506
1567
  __props__.__dict__["enable_dynamic_ip"] = enable_dynamic_ip
1507
- __props__.__dict__["enable_ipv6"] = enable_ipv6
1568
+ __props__.__dict__["filesystems"] = filesystems
1508
1569
  __props__.__dict__["image"] = image
1509
1570
  __props__.__dict__["ip_id"] = ip_id
1510
1571
  __props__.__dict__["ip_ids"] = ip_ids
1511
1572
  __props__.__dict__["name"] = name
1512
1573
  __props__.__dict__["placement_group_id"] = placement_group_id
1574
+ __props__.__dict__["private_ips"] = private_ips
1513
1575
  __props__.__dict__["private_networks"] = private_networks
1514
1576
  __props__.__dict__["project_id"] = project_id
1577
+ __props__.__dict__["protected"] = protected
1515
1578
  __props__.__dict__["public_ips"] = public_ips
1516
1579
  __props__.__dict__["replace_on_type_change"] = replace_on_type_change
1517
1580
  __props__.__dict__["root_volume"] = root_volume
@@ -1523,13 +1586,8 @@ class InstanceServer(pulumi.CustomResource):
1523
1586
  __props__.__dict__["type"] = type
1524
1587
  __props__.__dict__["user_data"] = user_data
1525
1588
  __props__.__dict__["zone"] = zone
1526
- __props__.__dict__["ipv6_address"] = None
1527
- __props__.__dict__["ipv6_gateway"] = None
1528
- __props__.__dict__["ipv6_prefix_length"] = None
1529
1589
  __props__.__dict__["organization_id"] = None
1530
1590
  __props__.__dict__["placement_group_policy_respected"] = None
1531
- __props__.__dict__["private_ip"] = None
1532
- __props__.__dict__["public_ip"] = None
1533
1591
  super(InstanceServer, __self__).__init__(
1534
1592
  'scaleway:index/instanceServer:InstanceServer',
1535
1593
  resource_name,
@@ -1540,35 +1598,33 @@ class InstanceServer(pulumi.CustomResource):
1540
1598
  def get(resource_name: str,
1541
1599
  id: pulumi.Input[str],
1542
1600
  opts: Optional[pulumi.ResourceOptions] = None,
1543
- additional_volume_ids: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
1544
- boot_type: Optional[pulumi.Input[str]] = None,
1545
- bootscript_id: Optional[pulumi.Input[str]] = None,
1546
- cloud_init: Optional[pulumi.Input[str]] = None,
1547
- enable_dynamic_ip: Optional[pulumi.Input[bool]] = None,
1548
- enable_ipv6: Optional[pulumi.Input[bool]] = None,
1549
- image: Optional[pulumi.Input[str]] = None,
1550
- ip_id: Optional[pulumi.Input[str]] = None,
1551
- ip_ids: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
1552
- ipv6_address: Optional[pulumi.Input[str]] = None,
1553
- ipv6_gateway: Optional[pulumi.Input[str]] = None,
1554
- ipv6_prefix_length: Optional[pulumi.Input[int]] = None,
1555
- name: Optional[pulumi.Input[str]] = None,
1556
- organization_id: Optional[pulumi.Input[str]] = None,
1557
- placement_group_id: Optional[pulumi.Input[str]] = None,
1558
- placement_group_policy_respected: Optional[pulumi.Input[bool]] = None,
1559
- private_ip: Optional[pulumi.Input[str]] = None,
1601
+ additional_volume_ids: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
1602
+ admin_password_encryption_ssh_key_id: Optional[pulumi.Input[_builtins.str]] = None,
1603
+ boot_type: Optional[pulumi.Input[_builtins.str]] = None,
1604
+ bootscript_id: Optional[pulumi.Input[_builtins.str]] = None,
1605
+ cloud_init: Optional[pulumi.Input[_builtins.str]] = None,
1606
+ enable_dynamic_ip: Optional[pulumi.Input[_builtins.bool]] = None,
1607
+ filesystems: Optional[pulumi.Input[Sequence[pulumi.Input[Union['InstanceServerFilesystemArgs', 'InstanceServerFilesystemArgsDict']]]]] = None,
1608
+ image: Optional[pulumi.Input[_builtins.str]] = None,
1609
+ ip_id: Optional[pulumi.Input[_builtins.str]] = None,
1610
+ ip_ids: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
1611
+ name: Optional[pulumi.Input[_builtins.str]] = None,
1612
+ organization_id: Optional[pulumi.Input[_builtins.str]] = None,
1613
+ placement_group_id: Optional[pulumi.Input[_builtins.str]] = None,
1614
+ placement_group_policy_respected: Optional[pulumi.Input[_builtins.bool]] = None,
1615
+ private_ips: Optional[pulumi.Input[Sequence[pulumi.Input[Union['InstanceServerPrivateIpArgs', 'InstanceServerPrivateIpArgsDict']]]]] = None,
1560
1616
  private_networks: Optional[pulumi.Input[Sequence[pulumi.Input[Union['InstanceServerPrivateNetworkArgs', 'InstanceServerPrivateNetworkArgsDict']]]]] = None,
1561
- project_id: Optional[pulumi.Input[str]] = None,
1562
- public_ip: Optional[pulumi.Input[str]] = None,
1617
+ project_id: Optional[pulumi.Input[_builtins.str]] = None,
1618
+ protected: Optional[pulumi.Input[_builtins.bool]] = None,
1563
1619
  public_ips: Optional[pulumi.Input[Sequence[pulumi.Input[Union['InstanceServerPublicIpArgs', 'InstanceServerPublicIpArgsDict']]]]] = None,
1564
- replace_on_type_change: Optional[pulumi.Input[bool]] = None,
1620
+ replace_on_type_change: Optional[pulumi.Input[_builtins.bool]] = None,
1565
1621
  root_volume: Optional[pulumi.Input[Union['InstanceServerRootVolumeArgs', 'InstanceServerRootVolumeArgsDict']]] = None,
1566
- security_group_id: Optional[pulumi.Input[str]] = None,
1567
- state: Optional[pulumi.Input[str]] = None,
1568
- tags: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
1569
- type: Optional[pulumi.Input[str]] = None,
1570
- user_data: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
1571
- zone: Optional[pulumi.Input[str]] = None) -> 'InstanceServer':
1622
+ security_group_id: Optional[pulumi.Input[_builtins.str]] = None,
1623
+ state: Optional[pulumi.Input[_builtins.str]] = None,
1624
+ tags: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
1625
+ type: Optional[pulumi.Input[_builtins.str]] = None,
1626
+ user_data: Optional[pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]]] = None,
1627
+ zone: Optional[pulumi.Input[_builtins.str]] = None) -> 'InstanceServer':
1572
1628
  """
1573
1629
  Get an existing InstanceServer resource's state with the given name, id, and optional extra
1574
1630
  properties used to qualify the lookup.
@@ -1576,90 +1632,85 @@ class InstanceServer(pulumi.CustomResource):
1576
1632
  :param str resource_name: The unique name of the resulting resource.
1577
1633
  :param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
1578
1634
  :param pulumi.ResourceOptions opts: Options for the resource.
1579
- :param pulumi.Input[Sequence[pulumi.Input[str]]] additional_volume_ids: The [additional volumes](https://www.scaleway.com/en/developers/api/instance/#path-volume-types-list-volume-types)
1635
+ :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] additional_volume_ids: The [additional volumes](https://www.scaleway.com/en/developers/api/instance/#path-volume-types-list-volume-types)
1580
1636
  attached to the server. Updates to this field will trigger a stop/start of the server.
1581
1637
 
1582
1638
  > **Important:** If this field contains local volumes, the `state` must be set to `stopped`, otherwise it will fail.
1583
1639
 
1584
1640
  > **Important:** If this field contains local volumes, you have to first detach them, in one apply, and then delete the volume in another apply.
1585
- :param pulumi.Input[str] boot_type: The boot Type of the server. Possible values are: `local`, `bootscript` or `rescue`.
1586
- :param pulumi.Input[str] bootscript_id: ID of the target bootscript (set boot_type to bootscript)
1587
- :param pulumi.Input[str] cloud_init: The cloud init script associated with this server
1588
- :param pulumi.Input[bool] enable_dynamic_ip: If true a dynamic IP will be attached to the server.
1589
- :param pulumi.Input[bool] enable_ipv6: Determines if IPv6 is enabled for the server. Useful only with `routed_ip_enabled` as false, otherwise ipv6 is always supported.
1590
- Deprecated: Please use a instance.Ip with a `routed_ipv6` type.
1591
- :param pulumi.Input[str] image: The UUID or the label of the base image used by the server. You can use [this endpoint](https://www.scaleway.com/en/developers/api/marketplace/#path-marketplace-images-list-marketplace-images)
1641
+ :param pulumi.Input[_builtins.str] admin_password_encryption_ssh_key_id: The ID of the SSH RSA key that will be used to encrypt the initial admin password for OS requiring it.
1642
+ Mandatory for Windows OS. The public_key value of this key is used to encrypt the admin password.
1643
+ When set to an empty string, it resets this value and admin_password_encrypted_value to an empty string so a new password may be generated.
1644
+ :param pulumi.Input[_builtins.str] boot_type: The boot Type of the server. Possible values are: `local`, `bootscript` or `rescue`.
1645
+ :param pulumi.Input[_builtins.str] bootscript_id: ID of the target bootscript (set boot_type to bootscript)
1646
+ :param pulumi.Input[_builtins.str] cloud_init: The cloud init script associated with this server
1647
+ :param pulumi.Input[_builtins.bool] enable_dynamic_ip: If true a dynamic IP will be attached to the server.
1648
+ :param pulumi.Input[Sequence[pulumi.Input[Union['InstanceServerFilesystemArgs', 'InstanceServerFilesystemArgsDict']]]] filesystems: List of filesystems attached to the server.
1649
+ :param pulumi.Input[_builtins.str] image: The UUID or the label of the base image used by the server. You can use [this endpoint](https://www.scaleway.com/en/developers/api/marketplace/#path-marketplace-images-list-marketplace-images)
1592
1650
  to find either the right `label` or the right local image `ID` for a given `type`. Optional when creating an instance with an existing root volume.
1593
1651
 
1594
1652
  You can check the available labels with our [CLI](https://www.scaleway.com/en/docs/compute/instances/api-cli/creating-managing-instances-with-cliv2/). ```scw marketplace image list```
1595
1653
 
1596
1654
  To retrieve more information by label please use: ```scw marketplace image get label=<LABEL>```
1597
- :param pulumi.Input[str] ip_id: The ID of the reserved IP that is attached to the server.
1598
- :param pulumi.Input[Sequence[pulumi.Input[str]]] ip_ids: List of ID of reserved IPs that are attached to the server. Cannot be used with `ip_id`.
1599
1655
 
1600
- > `ip_id` to `ip_ids` migration: if moving the ip from the old `ip_id` field to the new `ip_ids`, it should not detach the ip.
1601
- :param pulumi.Input[str] ipv6_address: The default ipv6 address routed to the server. ( Only set when enable_ipv6 is set to true )
1602
- Deprecated: Please use a instance.Ip with a `routed_ipv6` type.
1603
- :param pulumi.Input[str] ipv6_gateway: The ipv6 gateway address. ( Only set when enable_ipv6 is set to true )
1604
- Deprecated: Please use a instance.Ip with a `routed_ipv6` type.
1605
- :param pulumi.Input[int] ipv6_prefix_length: The prefix length of the ipv6 subnet routed to the server. ( Only set when enable_ipv6 is set to true )
1606
- Deprecated: Please use a instance.Ip with a `routed_ipv6` type.
1607
- :param pulumi.Input[str] name: The name of the server.
1608
- :param pulumi.Input[str] organization_id: The organization ID the server is associated with.
1609
- :param pulumi.Input[str] placement_group_id: The [placement group](https://www.scaleway.com/en/developers/api/instance/#path-security-groups-update-a-security-group the server is attached to.
1656
+ To obtain a local-image UUID from a label, please use: ```scw marketplace local-image list image-label=<LABEL>```
1657
+ :param pulumi.Input[_builtins.str] ip_id: The ID of the reserved IP that is attached to the server.
1658
+ :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] ip_ids: List of ID of reserved IPs that are attached to the server. Cannot be used with `ip_id`.
1610
1659
 
1660
+ > `ip_id` to `ip_ids` migration: if moving the ip from the old `ip_id` field to the new `ip_ids`, it should not detach the ip.
1661
+ :param pulumi.Input[_builtins.str] name: The name of the server.
1662
+ :param pulumi.Input[_builtins.str] organization_id: The organization ID the server is associated with.
1663
+ :param pulumi.Input[_builtins.str] placement_group_id: The [placement group](<https://www.scaleway.com/en/developers/api/instance/#path-security-groups-update-a-security-group> the server is attached to.
1611
1664
 
1612
1665
  > **Important:** When updating `placement_group_id` the `state` must be set to `stopped`, otherwise it will fail.
1613
- :param pulumi.Input[bool] placement_group_policy_respected: (Deprecated) Always false, use instance_placement_group ressource to known when the placement group policy is respected.
1614
- :param pulumi.Input[str] private_ip: The Scaleway internal IP address of the server (Deprecated use ipam_ip datasource instead).
1666
+ :param pulumi.Input[_builtins.bool] placement_group_policy_respected: (Deprecated) Always false, use instance_placement_group resource to known when the placement group policy is respected.
1667
+ :param pulumi.Input[Sequence[pulumi.Input[Union['InstanceServerPrivateIpArgs', 'InstanceServerPrivateIpArgsDict']]]] private_ips: The list of private IPv4 and IPv6 addresses associated with the resource.
1615
1668
  :param pulumi.Input[Sequence[pulumi.Input[Union['InstanceServerPrivateNetworkArgs', 'InstanceServerPrivateNetworkArgsDict']]]] private_networks: The private network associated with the server.
1616
1669
  Use the `pn_id` key to attach a [private_network](https://www.scaleway.com/en/developers/api/instance/#path-private-nics-list-all-private-nics) on your instance.
1617
- :param pulumi.Input[str] project_id: `project_id`) The ID of the project the server is associated with.
1618
- :param pulumi.Input[str] public_ip: The public IP address of the server (Deprecated use `public_ips` instead).
1670
+ :param pulumi.Input[_builtins.str] project_id: `project_id`) The ID of the project the server is associated with.
1671
+ :param pulumi.Input[_builtins.bool] protected: Set to true to activate server protection option.
1619
1672
  :param pulumi.Input[Sequence[pulumi.Input[Union['InstanceServerPublicIpArgs', 'InstanceServerPublicIpArgsDict']]]] public_ips: The list of public IPs of the server.
1620
- :param pulumi.Input[bool] replace_on_type_change: If true, the server will be replaced if `type` is changed. Otherwise, the server will migrate.
1673
+ :param pulumi.Input[_builtins.bool] replace_on_type_change: If true, the server will be replaced if `type` is changed. Otherwise, the server will migrate.
1621
1674
  :param pulumi.Input[Union['InstanceServerRootVolumeArgs', 'InstanceServerRootVolumeArgsDict']] root_volume: Root [volume](https://www.scaleway.com/en/developers/api/instance/#path-volume-types-list-volume-types) attached to the server on creation.
1622
- :param pulumi.Input[str] security_group_id: The security group the server is attached to
1623
- :param pulumi.Input[str] state: The state of the server. Possible values are: `started`, `stopped` or `standby`.
1624
- :param pulumi.Input[Sequence[pulumi.Input[str]]] tags: The tags associated with the server.
1625
- :param pulumi.Input[str] type: The commercial type of the server.
1675
+ :param pulumi.Input[_builtins.str] security_group_id: The security group the server is attached to
1676
+ :param pulumi.Input[_builtins.str] state: The state of the server. Possible values are: `started`, `stopped` or `standby`.
1677
+ :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] tags: The tags associated with the server.
1678
+ :param pulumi.Input[_builtins.str] type: The commercial type of the server.
1626
1679
  You find all the available types on the [pricing page](https://www.scaleway.com/en/pricing/).
1627
1680
  Updates to this field will migrate the server, local storage constraint must be respected. [More info](https://www.scaleway.com/en/docs/compute/instances/api-cli/migrating-instances/).
1628
1681
  Use `replace_on_type_change` to trigger replacement instead of migration.
1629
1682
 
1630
1683
  > **Important:** If `type` change and migration occurs, the server will be stopped and changed backed to its original state. It will be started again if it was running.
1631
- :param pulumi.Input[Mapping[str, pulumi.Input[str]]] user_data: The user data associated with the server.
1684
+ :param pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]] user_data: The user data associated with the server.
1632
1685
  Use the `cloud-init` key to use [cloud-init](https://cloudinit.readthedocs.io/en/latest/) on your instance.
1633
1686
  You can define values using:
1634
1687
  - string
1635
1688
  - UTF-8 encoded file content using file
1636
1689
  - Binary files using filebase64.
1637
- :param pulumi.Input[str] zone: `zone`) The zone in which the server should be created.
1690
+ :param pulumi.Input[_builtins.str] zone: `zone`) The zone in which the server should be created.
1638
1691
  """
1639
1692
  opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
1640
1693
 
1641
1694
  __props__ = _InstanceServerState.__new__(_InstanceServerState)
1642
1695
 
1643
1696
  __props__.__dict__["additional_volume_ids"] = additional_volume_ids
1697
+ __props__.__dict__["admin_password_encryption_ssh_key_id"] = admin_password_encryption_ssh_key_id
1644
1698
  __props__.__dict__["boot_type"] = boot_type
1645
1699
  __props__.__dict__["bootscript_id"] = bootscript_id
1646
1700
  __props__.__dict__["cloud_init"] = cloud_init
1647
1701
  __props__.__dict__["enable_dynamic_ip"] = enable_dynamic_ip
1648
- __props__.__dict__["enable_ipv6"] = enable_ipv6
1702
+ __props__.__dict__["filesystems"] = filesystems
1649
1703
  __props__.__dict__["image"] = image
1650
1704
  __props__.__dict__["ip_id"] = ip_id
1651
1705
  __props__.__dict__["ip_ids"] = ip_ids
1652
- __props__.__dict__["ipv6_address"] = ipv6_address
1653
- __props__.__dict__["ipv6_gateway"] = ipv6_gateway
1654
- __props__.__dict__["ipv6_prefix_length"] = ipv6_prefix_length
1655
1706
  __props__.__dict__["name"] = name
1656
1707
  __props__.__dict__["organization_id"] = organization_id
1657
1708
  __props__.__dict__["placement_group_id"] = placement_group_id
1658
1709
  __props__.__dict__["placement_group_policy_respected"] = placement_group_policy_respected
1659
- __props__.__dict__["private_ip"] = private_ip
1710
+ __props__.__dict__["private_ips"] = private_ips
1660
1711
  __props__.__dict__["private_networks"] = private_networks
1661
1712
  __props__.__dict__["project_id"] = project_id
1662
- __props__.__dict__["public_ip"] = public_ip
1713
+ __props__.__dict__["protected"] = protected
1663
1714
  __props__.__dict__["public_ips"] = public_ips
1664
1715
  __props__.__dict__["replace_on_type_change"] = replace_on_type_change
1665
1716
  __props__.__dict__["root_volume"] = root_volume
@@ -1671,9 +1722,9 @@ class InstanceServer(pulumi.CustomResource):
1671
1722
  __props__.__dict__["zone"] = zone
1672
1723
  return InstanceServer(resource_name, opts=opts, __props__=__props__)
1673
1724
 
1674
- @property
1725
+ @_builtins.property
1675
1726
  @pulumi.getter(name="additionalVolumeIds")
1676
- def additional_volume_ids(self) -> pulumi.Output[Optional[Sequence[str]]]:
1727
+ def additional_volume_ids(self) -> pulumi.Output[Optional[Sequence[_builtins.str]]]:
1677
1728
  """
1678
1729
  The [additional volumes](https://www.scaleway.com/en/developers/api/instance/#path-volume-types-list-volume-types)
1679
1730
  attached to the server. Updates to this field will trigger a stop/start of the server.
@@ -1684,52 +1735,60 @@ class InstanceServer(pulumi.CustomResource):
1684
1735
  """
1685
1736
  return pulumi.get(self, "additional_volume_ids")
1686
1737
 
1687
- @property
1738
+ @_builtins.property
1739
+ @pulumi.getter(name="adminPasswordEncryptionSshKeyId")
1740
+ def admin_password_encryption_ssh_key_id(self) -> pulumi.Output[Optional[_builtins.str]]:
1741
+ """
1742
+ The ID of the SSH RSA key that will be used to encrypt the initial admin password for OS requiring it.
1743
+ Mandatory for Windows OS. The public_key value of this key is used to encrypt the admin password.
1744
+ When set to an empty string, it resets this value and admin_password_encrypted_value to an empty string so a new password may be generated.
1745
+ """
1746
+ return pulumi.get(self, "admin_password_encryption_ssh_key_id")
1747
+
1748
+ @_builtins.property
1688
1749
  @pulumi.getter(name="bootType")
1689
- def boot_type(self) -> pulumi.Output[Optional[str]]:
1750
+ def boot_type(self) -> pulumi.Output[Optional[_builtins.str]]:
1690
1751
  """
1691
1752
  The boot Type of the server. Possible values are: `local`, `bootscript` or `rescue`.
1692
1753
  """
1693
1754
  return pulumi.get(self, "boot_type")
1694
1755
 
1695
- @property
1756
+ @_builtins.property
1696
1757
  @pulumi.getter(name="bootscriptId")
1697
1758
  @_utilities.deprecated("""bootscript is not supported anymore.""")
1698
- def bootscript_id(self) -> pulumi.Output[str]:
1759
+ def bootscript_id(self) -> pulumi.Output[_builtins.str]:
1699
1760
  """
1700
1761
  ID of the target bootscript (set boot_type to bootscript)
1701
1762
  """
1702
1763
  return pulumi.get(self, "bootscript_id")
1703
1764
 
1704
- @property
1765
+ @_builtins.property
1705
1766
  @pulumi.getter(name="cloudInit")
1706
- def cloud_init(self) -> pulumi.Output[str]:
1767
+ def cloud_init(self) -> pulumi.Output[_builtins.str]:
1707
1768
  """
1708
1769
  The cloud init script associated with this server
1709
1770
  """
1710
1771
  return pulumi.get(self, "cloud_init")
1711
1772
 
1712
- @property
1773
+ @_builtins.property
1713
1774
  @pulumi.getter(name="enableDynamicIp")
1714
- def enable_dynamic_ip(self) -> pulumi.Output[Optional[bool]]:
1775
+ def enable_dynamic_ip(self) -> pulumi.Output[Optional[_builtins.bool]]:
1715
1776
  """
1716
1777
  If true a dynamic IP will be attached to the server.
1717
1778
  """
1718
1779
  return pulumi.get(self, "enable_dynamic_ip")
1719
1780
 
1720
- @property
1721
- @pulumi.getter(name="enableIpv6")
1722
- @_utilities.deprecated("""Please use a instance.Ip with a `routed_ipv6` type""")
1723
- def enable_ipv6(self) -> pulumi.Output[Optional[bool]]:
1781
+ @_builtins.property
1782
+ @pulumi.getter
1783
+ def filesystems(self) -> pulumi.Output[Sequence['outputs.InstanceServerFilesystem']]:
1724
1784
  """
1725
- Determines if IPv6 is enabled for the server. Useful only with `routed_ip_enabled` as false, otherwise ipv6 is always supported.
1726
- Deprecated: Please use a instance.Ip with a `routed_ipv6` type.
1785
+ List of filesystems attached to the server.
1727
1786
  """
1728
- return pulumi.get(self, "enable_ipv6")
1787
+ return pulumi.get(self, "filesystems")
1729
1788
 
1730
- @property
1789
+ @_builtins.property
1731
1790
  @pulumi.getter
1732
- def image(self) -> pulumi.Output[Optional[str]]:
1791
+ def image(self) -> pulumi.Output[Optional[_builtins.str]]:
1733
1792
  """
1734
1793
  The UUID or the label of the base image used by the server. You can use [this endpoint](https://www.scaleway.com/en/developers/api/marketplace/#path-marketplace-images-list-marketplace-images)
1735
1794
  to find either the right `label` or the right local image `ID` for a given `type`. Optional when creating an instance with an existing root volume.
@@ -1737,20 +1796,22 @@ class InstanceServer(pulumi.CustomResource):
1737
1796
  You can check the available labels with our [CLI](https://www.scaleway.com/en/docs/compute/instances/api-cli/creating-managing-instances-with-cliv2/). ```scw marketplace image list```
1738
1797
 
1739
1798
  To retrieve more information by label please use: ```scw marketplace image get label=<LABEL>```
1799
+
1800
+ To obtain a local-image UUID from a label, please use: ```scw marketplace local-image list image-label=<LABEL>```
1740
1801
  """
1741
1802
  return pulumi.get(self, "image")
1742
1803
 
1743
- @property
1804
+ @_builtins.property
1744
1805
  @pulumi.getter(name="ipId")
1745
- def ip_id(self) -> pulumi.Output[Optional[str]]:
1806
+ def ip_id(self) -> pulumi.Output[Optional[_builtins.str]]:
1746
1807
  """
1747
1808
  The ID of the reserved IP that is attached to the server.
1748
1809
  """
1749
1810
  return pulumi.get(self, "ip_id")
1750
1811
 
1751
- @property
1812
+ @_builtins.property
1752
1813
  @pulumi.getter(name="ipIds")
1753
- def ip_ids(self) -> pulumi.Output[Optional[Sequence[str]]]:
1814
+ def ip_ids(self) -> pulumi.Output[Optional[Sequence[_builtins.str]]]:
1754
1815
  """
1755
1816
  List of ID of reserved IPs that are attached to the server. Cannot be used with `ip_id`.
1756
1817
 
@@ -1758,81 +1819,49 @@ class InstanceServer(pulumi.CustomResource):
1758
1819
  """
1759
1820
  return pulumi.get(self, "ip_ids")
1760
1821
 
1761
- @property
1762
- @pulumi.getter(name="ipv6Address")
1763
- @_utilities.deprecated("""Please use a instance.Ip with a `routed_ipv6` type""")
1764
- def ipv6_address(self) -> pulumi.Output[str]:
1765
- """
1766
- The default ipv6 address routed to the server. ( Only set when enable_ipv6 is set to true )
1767
- Deprecated: Please use a instance.Ip with a `routed_ipv6` type.
1768
- """
1769
- return pulumi.get(self, "ipv6_address")
1770
-
1771
- @property
1772
- @pulumi.getter(name="ipv6Gateway")
1773
- @_utilities.deprecated("""Please use a instance.Ip with a `routed_ipv6` type""")
1774
- def ipv6_gateway(self) -> pulumi.Output[str]:
1775
- """
1776
- The ipv6 gateway address. ( Only set when enable_ipv6 is set to true )
1777
- Deprecated: Please use a instance.Ip with a `routed_ipv6` type.
1778
- """
1779
- return pulumi.get(self, "ipv6_gateway")
1780
-
1781
- @property
1782
- @pulumi.getter(name="ipv6PrefixLength")
1783
- @_utilities.deprecated("""Please use a instance.Ip with a `routed_ipv6` type""")
1784
- def ipv6_prefix_length(self) -> pulumi.Output[int]:
1785
- """
1786
- The prefix length of the ipv6 subnet routed to the server. ( Only set when enable_ipv6 is set to true )
1787
- Deprecated: Please use a instance.Ip with a `routed_ipv6` type.
1788
- """
1789
- return pulumi.get(self, "ipv6_prefix_length")
1790
-
1791
- @property
1822
+ @_builtins.property
1792
1823
  @pulumi.getter
1793
- def name(self) -> pulumi.Output[str]:
1824
+ def name(self) -> pulumi.Output[_builtins.str]:
1794
1825
  """
1795
1826
  The name of the server.
1796
1827
  """
1797
1828
  return pulumi.get(self, "name")
1798
1829
 
1799
- @property
1830
+ @_builtins.property
1800
1831
  @pulumi.getter(name="organizationId")
1801
- def organization_id(self) -> pulumi.Output[str]:
1832
+ def organization_id(self) -> pulumi.Output[_builtins.str]:
1802
1833
  """
1803
1834
  The organization ID the server is associated with.
1804
1835
  """
1805
1836
  return pulumi.get(self, "organization_id")
1806
1837
 
1807
- @property
1838
+ @_builtins.property
1808
1839
  @pulumi.getter(name="placementGroupId")
1809
- def placement_group_id(self) -> pulumi.Output[Optional[str]]:
1840
+ def placement_group_id(self) -> pulumi.Output[Optional[_builtins.str]]:
1810
1841
  """
1811
- The [placement group](https://www.scaleway.com/en/developers/api/instance/#path-security-groups-update-a-security-group the server is attached to.
1812
-
1842
+ The [placement group](<https://www.scaleway.com/en/developers/api/instance/#path-security-groups-update-a-security-group> the server is attached to.
1813
1843
 
1814
1844
  > **Important:** When updating `placement_group_id` the `state` must be set to `stopped`, otherwise it will fail.
1815
1845
  """
1816
1846
  return pulumi.get(self, "placement_group_id")
1817
1847
 
1818
- @property
1848
+ @_builtins.property
1819
1849
  @pulumi.getter(name="placementGroupPolicyRespected")
1820
- def placement_group_policy_respected(self) -> pulumi.Output[bool]:
1850
+ def placement_group_policy_respected(self) -> pulumi.Output[_builtins.bool]:
1821
1851
  """
1822
- (Deprecated) Always false, use instance_placement_group ressource to known when the placement group policy is respected.
1852
+ (Deprecated) Always false, use instance_placement_group resource to known when the placement group policy is respected.
1823
1853
  """
1824
1854
  return pulumi.get(self, "placement_group_policy_respected")
1825
1855
 
1826
- @property
1827
- @pulumi.getter(name="privateIp")
1828
- @_utilities.deprecated("""Use ipam_ip datasource instead to fetch your server's IP in your private network.""")
1829
- def private_ip(self) -> pulumi.Output[str]:
1856
+ @_builtins.property
1857
+ @pulumi.getter(name="privateIps")
1858
+ def private_ips(self) -> pulumi.Output[Sequence['outputs.InstanceServerPrivateIp']]:
1830
1859
  """
1831
- The Scaleway internal IP address of the server (Deprecated use ipam_ip datasource instead).
1860
+ The list of private IPv4 and IPv6 addresses associated with the resource.
1832
1861
  """
1833
- return pulumi.get(self, "private_ip")
1862
+ return pulumi.get(self, "private_ips")
1834
1863
 
1835
- @property
1864
+ @_builtins.property
1836
1865
  @pulumi.getter(name="privateNetworks")
1837
1866
  def private_networks(self) -> pulumi.Output[Optional[Sequence['outputs.InstanceServerPrivateNetwork']]]:
1838
1867
  """
@@ -1841,24 +1870,23 @@ class InstanceServer(pulumi.CustomResource):
1841
1870
  """
1842
1871
  return pulumi.get(self, "private_networks")
1843
1872
 
1844
- @property
1873
+ @_builtins.property
1845
1874
  @pulumi.getter(name="projectId")
1846
- def project_id(self) -> pulumi.Output[str]:
1875
+ def project_id(self) -> pulumi.Output[_builtins.str]:
1847
1876
  """
1848
1877
  `project_id`) The ID of the project the server is associated with.
1849
1878
  """
1850
1879
  return pulumi.get(self, "project_id")
1851
1880
 
1852
- @property
1853
- @pulumi.getter(name="publicIp")
1854
- @_utilities.deprecated("""Use public_ips instead""")
1855
- def public_ip(self) -> pulumi.Output[str]:
1881
+ @_builtins.property
1882
+ @pulumi.getter
1883
+ def protected(self) -> pulumi.Output[Optional[_builtins.bool]]:
1856
1884
  """
1857
- The public IP address of the server (Deprecated use `public_ips` instead).
1885
+ Set to true to activate server protection option.
1858
1886
  """
1859
- return pulumi.get(self, "public_ip")
1887
+ return pulumi.get(self, "protected")
1860
1888
 
1861
- @property
1889
+ @_builtins.property
1862
1890
  @pulumi.getter(name="publicIps")
1863
1891
  def public_ips(self) -> pulumi.Output[Sequence['outputs.InstanceServerPublicIp']]:
1864
1892
  """
@@ -1866,15 +1894,15 @@ class InstanceServer(pulumi.CustomResource):
1866
1894
  """
1867
1895
  return pulumi.get(self, "public_ips")
1868
1896
 
1869
- @property
1897
+ @_builtins.property
1870
1898
  @pulumi.getter(name="replaceOnTypeChange")
1871
- def replace_on_type_change(self) -> pulumi.Output[Optional[bool]]:
1899
+ def replace_on_type_change(self) -> pulumi.Output[Optional[_builtins.bool]]:
1872
1900
  """
1873
1901
  If true, the server will be replaced if `type` is changed. Otherwise, the server will migrate.
1874
1902
  """
1875
1903
  return pulumi.get(self, "replace_on_type_change")
1876
1904
 
1877
- @property
1905
+ @_builtins.property
1878
1906
  @pulumi.getter(name="rootVolume")
1879
1907
  def root_volume(self) -> pulumi.Output['outputs.InstanceServerRootVolume']:
1880
1908
  """
@@ -1882,33 +1910,33 @@ class InstanceServer(pulumi.CustomResource):
1882
1910
  """
1883
1911
  return pulumi.get(self, "root_volume")
1884
1912
 
1885
- @property
1913
+ @_builtins.property
1886
1914
  @pulumi.getter(name="securityGroupId")
1887
- def security_group_id(self) -> pulumi.Output[str]:
1915
+ def security_group_id(self) -> pulumi.Output[_builtins.str]:
1888
1916
  """
1889
1917
  The security group the server is attached to
1890
1918
  """
1891
1919
  return pulumi.get(self, "security_group_id")
1892
1920
 
1893
- @property
1921
+ @_builtins.property
1894
1922
  @pulumi.getter
1895
- def state(self) -> pulumi.Output[Optional[str]]:
1923
+ def state(self) -> pulumi.Output[Optional[_builtins.str]]:
1896
1924
  """
1897
1925
  The state of the server. Possible values are: `started`, `stopped` or `standby`.
1898
1926
  """
1899
1927
  return pulumi.get(self, "state")
1900
1928
 
1901
- @property
1929
+ @_builtins.property
1902
1930
  @pulumi.getter
1903
- def tags(self) -> pulumi.Output[Optional[Sequence[str]]]:
1931
+ def tags(self) -> pulumi.Output[Optional[Sequence[_builtins.str]]]:
1904
1932
  """
1905
1933
  The tags associated with the server.
1906
1934
  """
1907
1935
  return pulumi.get(self, "tags")
1908
1936
 
1909
- @property
1937
+ @_builtins.property
1910
1938
  @pulumi.getter
1911
- def type(self) -> pulumi.Output[str]:
1939
+ def type(self) -> pulumi.Output[_builtins.str]:
1912
1940
  """
1913
1941
  The commercial type of the server.
1914
1942
  You find all the available types on the [pricing page](https://www.scaleway.com/en/pricing/).
@@ -1919,9 +1947,9 @@ class InstanceServer(pulumi.CustomResource):
1919
1947
  """
1920
1948
  return pulumi.get(self, "type")
1921
1949
 
1922
- @property
1950
+ @_builtins.property
1923
1951
  @pulumi.getter(name="userData")
1924
- def user_data(self) -> pulumi.Output[Mapping[str, str]]:
1952
+ def user_data(self) -> pulumi.Output[Mapping[str, _builtins.str]]:
1925
1953
  """
1926
1954
  The user data associated with the server.
1927
1955
  Use the `cloud-init` key to use [cloud-init](https://cloudinit.readthedocs.io/en/latest/) on your instance.
@@ -1932,9 +1960,9 @@ class InstanceServer(pulumi.CustomResource):
1932
1960
  """
1933
1961
  return pulumi.get(self, "user_data")
1934
1962
 
1935
- @property
1963
+ @_builtins.property
1936
1964
  @pulumi.getter
1937
- def zone(self) -> pulumi.Output[str]:
1965
+ def zone(self) -> pulumi.Output[Optional[_builtins.str]]:
1938
1966
  """
1939
1967
  `zone`) The zone in which the server should be created.
1940
1968
  """