pulumiverse-scaleway 1.29.0a1747948949__py3-none-any.whl → 1.30.0__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (490) hide show
  1. pulumiverse_scaleway/__init__.py +11 -2
  2. pulumiverse_scaleway/_inputs.py +2338 -2123
  3. pulumiverse_scaleway/_utilities.py +1 -1
  4. pulumiverse_scaleway/account/__init__.py +4 -1
  5. pulumiverse_scaleway/account/get_availability_zones.py +9 -8
  6. pulumiverse_scaleway/account/get_project.py +21 -20
  7. pulumiverse_scaleway/account/get_projects.py +242 -0
  8. pulumiverse_scaleway/account/get_ssh_key.py +24 -23
  9. pulumiverse_scaleway/account/outputs.py +96 -0
  10. pulumiverse_scaleway/account/project.py +59 -57
  11. pulumiverse_scaleway/account/ssh_key.py +87 -85
  12. pulumiverse_scaleway/account_project.py +59 -57
  13. pulumiverse_scaleway/account_ssh_key.py +87 -85
  14. pulumiverse_scaleway/apple_silicon_server.py +204 -155
  15. pulumiverse_scaleway/applesilicon/__init__.py +2 -1
  16. pulumiverse_scaleway/applesilicon/_inputs.py +89 -34
  17. pulumiverse_scaleway/applesilicon/outputs.py +54 -21
  18. pulumiverse_scaleway/applesilicon/server.py +204 -155
  19. pulumiverse_scaleway/baremetal_server.py +282 -261
  20. pulumiverse_scaleway/billing/__init__.py +2 -1
  21. pulumiverse_scaleway/billing/get_consumptions.py +10 -9
  22. pulumiverse_scaleway/billing/get_invoices.py +19 -18
  23. pulumiverse_scaleway/billing/outputs.py +73 -72
  24. pulumiverse_scaleway/block/__init__.py +4 -1
  25. pulumiverse_scaleway/block/_inputs.py +74 -0
  26. pulumiverse_scaleway/block/get_snapshot.py +42 -29
  27. pulumiverse_scaleway/block/get_volume.py +28 -27
  28. pulumiverse_scaleway/block/outputs.py +80 -0
  29. pulumiverse_scaleway/block/snapshot.py +132 -82
  30. pulumiverse_scaleway/block/volume.py +115 -113
  31. pulumiverse_scaleway/block_snapshot.py +132 -82
  32. pulumiverse_scaleway/block_volume.py +115 -113
  33. pulumiverse_scaleway/cockpit.py +38 -36
  34. pulumiverse_scaleway/cockpit_alert_manager.py +52 -50
  35. pulumiverse_scaleway/cockpit_grafana_user.py +59 -57
  36. pulumiverse_scaleway/cockpit_source.py +115 -113
  37. pulumiverse_scaleway/cockpit_token.py +66 -64
  38. pulumiverse_scaleway/config/__init__.py +2 -1
  39. pulumiverse_scaleway/config/__init__.pyi +2 -1
  40. pulumiverse_scaleway/config/vars.py +2 -1
  41. pulumiverse_scaleway/container.py +575 -345
  42. pulumiverse_scaleway/container_cron.py +80 -78
  43. pulumiverse_scaleway/container_domain.py +52 -50
  44. pulumiverse_scaleway/container_namespace.py +211 -140
  45. pulumiverse_scaleway/container_token.py +80 -78
  46. pulumiverse_scaleway/container_trigger.py +59 -57
  47. pulumiverse_scaleway/containers/__init__.py +2 -1
  48. pulumiverse_scaleway/containers/_inputs.py +72 -71
  49. pulumiverse_scaleway/containers/container.py +575 -345
  50. pulumiverse_scaleway/containers/cron.py +80 -78
  51. pulumiverse_scaleway/containers/domain.py +52 -50
  52. pulumiverse_scaleway/containers/get_container.py +87 -42
  53. pulumiverse_scaleway/containers/get_namespace.py +43 -31
  54. pulumiverse_scaleway/containers/namespace.py +211 -140
  55. pulumiverse_scaleway/containers/outputs.py +62 -61
  56. pulumiverse_scaleway/containers/token.py +80 -78
  57. pulumiverse_scaleway/containers/trigger.py +59 -57
  58. pulumiverse_scaleway/database.py +66 -64
  59. pulumiverse_scaleway/database_acl.py +31 -29
  60. pulumiverse_scaleway/database_backup.py +101 -99
  61. pulumiverse_scaleway/database_instance.py +317 -296
  62. pulumiverse_scaleway/database_privilege.py +73 -71
  63. pulumiverse_scaleway/database_read_replica.py +45 -43
  64. pulumiverse_scaleway/database_user.py +73 -71
  65. pulumiverse_scaleway/databases/__init__.py +2 -1
  66. pulumiverse_scaleway/databases/_inputs.py +191 -190
  67. pulumiverse_scaleway/databases/acl.py +31 -29
  68. pulumiverse_scaleway/databases/database.py +66 -64
  69. pulumiverse_scaleway/databases/database_backup.py +101 -99
  70. pulumiverse_scaleway/databases/get_acl.py +13 -12
  71. pulumiverse_scaleway/databases/get_database.py +19 -18
  72. pulumiverse_scaleway/databases/get_database_backup.py +34 -33
  73. pulumiverse_scaleway/databases/get_instance.py +43 -42
  74. pulumiverse_scaleway/databases/get_privilege.py +24 -23
  75. pulumiverse_scaleway/databases/instance.py +317 -296
  76. pulumiverse_scaleway/databases/outputs.py +188 -187
  77. pulumiverse_scaleway/databases/privilege.py +73 -71
  78. pulumiverse_scaleway/databases/read_replica.py +45 -43
  79. pulumiverse_scaleway/databases/serverless_database.py +80 -78
  80. pulumiverse_scaleway/databases/snapshot.py +101 -99
  81. pulumiverse_scaleway/databases/user.py +73 -71
  82. pulumiverse_scaleway/domain/__init__.py +2 -1
  83. pulumiverse_scaleway/domain/_inputs.py +531 -530
  84. pulumiverse_scaleway/domain/get_record.py +38 -37
  85. pulumiverse_scaleway/domain/get_zone.py +26 -19
  86. pulumiverse_scaleway/domain/outputs.py +358 -357
  87. pulumiverse_scaleway/domain/record.py +129 -127
  88. pulumiverse_scaleway/domain/registration.py +94 -92
  89. pulumiverse_scaleway/domain/zone.py +87 -85
  90. pulumiverse_scaleway/domain_record.py +129 -127
  91. pulumiverse_scaleway/domain_zone.py +87 -85
  92. pulumiverse_scaleway/edge_services_backend_stage.py +45 -43
  93. pulumiverse_scaleway/edge_services_cache_stage.py +115 -113
  94. pulumiverse_scaleway/edge_services_dns_stage.py +108 -106
  95. pulumiverse_scaleway/edge_services_head_stage.py +31 -29
  96. pulumiverse_scaleway/edge_services_pipeline.py +66 -64
  97. pulumiverse_scaleway/edge_services_plan.py +31 -29
  98. pulumiverse_scaleway/edge_services_route_stage.py +59 -57
  99. pulumiverse_scaleway/edge_services_tls_stage.py +122 -120
  100. pulumiverse_scaleway/edge_services_waf_stage.py +87 -85
  101. pulumiverse_scaleway/elasticmetal/__init__.py +3 -2
  102. pulumiverse_scaleway/elasticmetal/_inputs.py +123 -122
  103. pulumiverse_scaleway/elasticmetal/get_ip.py +56 -39
  104. pulumiverse_scaleway/elasticmetal/get_ips.py +24 -23
  105. pulumiverse_scaleway/elasticmetal/get_offer.py +29 -28
  106. pulumiverse_scaleway/elasticmetal/get_option.py +19 -18
  107. pulumiverse_scaleway/elasticmetal/get_os.py +23 -22
  108. pulumiverse_scaleway/elasticmetal/get_partition_schema.py +216 -0
  109. pulumiverse_scaleway/elasticmetal/get_server.py +39 -38
  110. pulumiverse_scaleway/elasticmetal/ip.py +139 -137
  111. pulumiverse_scaleway/elasticmetal/ip_mac_address.py +87 -85
  112. pulumiverse_scaleway/elasticmetal/outputs.py +233 -232
  113. pulumiverse_scaleway/elasticmetal/server.py +282 -261
  114. pulumiverse_scaleway/file_filesystem.py +552 -0
  115. pulumiverse_scaleway/flexible_ip.py +139 -137
  116. pulumiverse_scaleway/flexible_ip_mac_address.py +87 -85
  117. pulumiverse_scaleway/function.py +394 -284
  118. pulumiverse_scaleway/function_cron.py +80 -78
  119. pulumiverse_scaleway/function_domain.py +52 -50
  120. pulumiverse_scaleway/function_namespace.py +197 -126
  121. pulumiverse_scaleway/function_token.py +80 -78
  122. pulumiverse_scaleway/function_trigger.py +59 -57
  123. pulumiverse_scaleway/functions/__init__.py +2 -1
  124. pulumiverse_scaleway/functions/_inputs.py +42 -41
  125. pulumiverse_scaleway/functions/cron.py +80 -78
  126. pulumiverse_scaleway/functions/domain.py +52 -50
  127. pulumiverse_scaleway/functions/function.py +394 -284
  128. pulumiverse_scaleway/functions/get_function.py +69 -46
  129. pulumiverse_scaleway/functions/get_namespace.py +42 -30
  130. pulumiverse_scaleway/functions/namespace.py +197 -126
  131. pulumiverse_scaleway/functions/outputs.py +26 -25
  132. pulumiverse_scaleway/functions/token.py +80 -78
  133. pulumiverse_scaleway/functions/trigger.py +59 -57
  134. pulumiverse_scaleway/get_account_project.py +21 -20
  135. pulumiverse_scaleway/get_account_ssh_key.py +24 -23
  136. pulumiverse_scaleway/get_availability_zones.py +9 -8
  137. pulumiverse_scaleway/get_baremetal_offer.py +29 -28
  138. pulumiverse_scaleway/get_baremetal_option.py +19 -18
  139. pulumiverse_scaleway/get_baremetal_os.py +23 -22
  140. pulumiverse_scaleway/get_baremetal_server.py +39 -38
  141. pulumiverse_scaleway/get_billing_consumptions.py +10 -9
  142. pulumiverse_scaleway/get_billing_invoices.py +19 -18
  143. pulumiverse_scaleway/get_block_snapshot.py +42 -29
  144. pulumiverse_scaleway/get_block_volume.py +28 -27
  145. pulumiverse_scaleway/get_cockpit.py +10 -9
  146. pulumiverse_scaleway/get_cockpit_source.py +33 -32
  147. pulumiverse_scaleway/get_config.py +13 -12
  148. pulumiverse_scaleway/get_container.py +87 -42
  149. pulumiverse_scaleway/get_container_namespace.py +43 -31
  150. pulumiverse_scaleway/get_database.py +19 -18
  151. pulumiverse_scaleway/get_database_acl.py +13 -12
  152. pulumiverse_scaleway/get_database_backup.py +34 -33
  153. pulumiverse_scaleway/get_database_instance.py +43 -42
  154. pulumiverse_scaleway/get_database_privilege.py +24 -23
  155. pulumiverse_scaleway/get_domain_record.py +38 -37
  156. pulumiverse_scaleway/get_domain_zone.py +26 -19
  157. pulumiverse_scaleway/get_flexible_ip.py +56 -39
  158. pulumiverse_scaleway/get_flexible_ips.py +24 -23
  159. pulumiverse_scaleway/get_function.py +69 -46
  160. pulumiverse_scaleway/get_function_namespace.py +42 -30
  161. pulumiverse_scaleway/get_iam_api_key.py +17 -16
  162. pulumiverse_scaleway/get_iam_application.py +23 -22
  163. pulumiverse_scaleway/get_iam_group.py +25 -24
  164. pulumiverse_scaleway/get_iam_ssh_key.py +24 -23
  165. pulumiverse_scaleway/get_iam_user.py +23 -22
  166. pulumiverse_scaleway/get_instance_image.py +42 -41
  167. pulumiverse_scaleway/get_instance_ip.py +20 -19
  168. pulumiverse_scaleway/get_instance_placement_group.py +28 -27
  169. pulumiverse_scaleway/get_instance_private_nic.py +31 -30
  170. pulumiverse_scaleway/get_instance_security_group.py +31 -30
  171. pulumiverse_scaleway/get_instance_server.py +59 -47
  172. pulumiverse_scaleway/get_instance_servers.py +24 -23
  173. pulumiverse_scaleway/get_instance_snapshot.py +29 -28
  174. pulumiverse_scaleway/get_instance_volume.py +30 -29
  175. pulumiverse_scaleway/get_iot_device.py +31 -30
  176. pulumiverse_scaleway/get_iot_hub.py +39 -38
  177. pulumiverse_scaleway/get_ipam_ip.py +51 -50
  178. pulumiverse_scaleway/get_ipam_ips.py +44 -43
  179. pulumiverse_scaleway/get_k8s_version.py +16 -15
  180. pulumiverse_scaleway/get_kubernetes_cluster.py +39 -38
  181. pulumiverse_scaleway/get_kubernetes_node_pool.py +47 -46
  182. pulumiverse_scaleway/get_lb_acls.py +22 -21
  183. pulumiverse_scaleway/get_lb_backend.py +43 -42
  184. pulumiverse_scaleway/get_lb_backends.py +22 -21
  185. pulumiverse_scaleway/get_lb_frontend.py +26 -25
  186. pulumiverse_scaleway/get_lb_frontends.py +22 -21
  187. pulumiverse_scaleway/get_lb_ips.py +29 -28
  188. pulumiverse_scaleway/get_lb_route.py +16 -15
  189. pulumiverse_scaleway/get_lb_routes.py +17 -16
  190. pulumiverse_scaleway/get_lbs.py +24 -23
  191. pulumiverse_scaleway/get_loadbalancer.py +36 -35
  192. pulumiverse_scaleway/get_loadbalancer_certificate.py +24 -23
  193. pulumiverse_scaleway/get_loadbalancer_ip.py +29 -28
  194. pulumiverse_scaleway/get_marketplace_image.py +23 -22
  195. pulumiverse_scaleway/get_mnq_sns.py +14 -13
  196. pulumiverse_scaleway/get_mnq_sqs.py +14 -13
  197. pulumiverse_scaleway/get_mongo_db_instance.py +47 -35
  198. pulumiverse_scaleway/get_object_bucket.py +22 -21
  199. pulumiverse_scaleway/get_object_bucket_policy.py +17 -16
  200. pulumiverse_scaleway/get_redis_cluster.py +34 -33
  201. pulumiverse_scaleway/get_registry_image.py +37 -36
  202. pulumiverse_scaleway/get_registry_image_tag.py +33 -32
  203. pulumiverse_scaleway/get_registry_namespace.py +27 -26
  204. pulumiverse_scaleway/get_secret.py +41 -40
  205. pulumiverse_scaleway/get_secret_version.py +34 -33
  206. pulumiverse_scaleway/get_tem_domain.py +43 -42
  207. pulumiverse_scaleway/get_vpc.py +35 -34
  208. pulumiverse_scaleway/get_vpc_gateway_network.py +28 -27
  209. pulumiverse_scaleway/get_vpc_private_network.py +32 -31
  210. pulumiverse_scaleway/get_vpc_public_gateway.py +36 -35
  211. pulumiverse_scaleway/get_vpc_public_gateway_dhcp.py +24 -23
  212. pulumiverse_scaleway/get_vpc_public_gateway_dhcp_reservation.py +33 -32
  213. pulumiverse_scaleway/get_vpc_public_gateway_ip.py +14 -13
  214. pulumiverse_scaleway/get_vpc_public_pat_rule.py +21 -20
  215. pulumiverse_scaleway/get_vpc_routes.py +38 -37
  216. pulumiverse_scaleway/get_vpcs.py +24 -23
  217. pulumiverse_scaleway/get_web_host_offer.py +25 -24
  218. pulumiverse_scaleway/get_webhosting.py +36 -35
  219. pulumiverse_scaleway/hosting/__init__.py +2 -1
  220. pulumiverse_scaleway/hosting/_inputs.py +61 -60
  221. pulumiverse_scaleway/hosting/get_hosting.py +36 -35
  222. pulumiverse_scaleway/hosting/get_offer.py +25 -24
  223. pulumiverse_scaleway/hosting/hosting.py +164 -162
  224. pulumiverse_scaleway/hosting/outputs.py +139 -138
  225. pulumiverse_scaleway/iam/__init__.py +2 -1
  226. pulumiverse_scaleway/iam/_inputs.py +22 -21
  227. pulumiverse_scaleway/iam/api_key.py +115 -113
  228. pulumiverse_scaleway/iam/application.py +80 -78
  229. pulumiverse_scaleway/iam/get_api_key.py +17 -16
  230. pulumiverse_scaleway/iam/get_application.py +23 -22
  231. pulumiverse_scaleway/iam/get_group.py +25 -24
  232. pulumiverse_scaleway/iam/get_ssh_key.py +24 -23
  233. pulumiverse_scaleway/iam/get_user.py +23 -22
  234. pulumiverse_scaleway/iam/group.py +115 -113
  235. pulumiverse_scaleway/iam/group_membership.py +45 -43
  236. pulumiverse_scaleway/iam/outputs.py +14 -13
  237. pulumiverse_scaleway/iam/policy.py +136 -134
  238. pulumiverse_scaleway/iam/ssh_key.py +87 -85
  239. pulumiverse_scaleway/iam/user.py +573 -108
  240. pulumiverse_scaleway/iam_api_key.py +115 -113
  241. pulumiverse_scaleway/iam_application.py +80 -78
  242. pulumiverse_scaleway/iam_group.py +115 -113
  243. pulumiverse_scaleway/iam_group_membership.py +45 -43
  244. pulumiverse_scaleway/iam_policy.py +136 -134
  245. pulumiverse_scaleway/iam_ssh_key.py +87 -85
  246. pulumiverse_scaleway/iam_user.py +573 -108
  247. pulumiverse_scaleway/inference/__init__.py +2 -1
  248. pulumiverse_scaleway/inference/_inputs.py +116 -61
  249. pulumiverse_scaleway/inference/deployment.py +225 -176
  250. pulumiverse_scaleway/inference/get_model.py +27 -26
  251. pulumiverse_scaleway/inference/model.py +129 -127
  252. pulumiverse_scaleway/inference/outputs.py +82 -49
  253. pulumiverse_scaleway/inference_deployment.py +225 -176
  254. pulumiverse_scaleway/instance/__init__.py +2 -1
  255. pulumiverse_scaleway/instance/_inputs.py +296 -295
  256. pulumiverse_scaleway/instance/get_image.py +42 -41
  257. pulumiverse_scaleway/instance/get_ip.py +20 -19
  258. pulumiverse_scaleway/instance/get_placement_group.py +28 -27
  259. pulumiverse_scaleway/instance/get_private_nic.py +31 -30
  260. pulumiverse_scaleway/instance/get_security_group.py +31 -30
  261. pulumiverse_scaleway/instance/get_server.py +59 -47
  262. pulumiverse_scaleway/instance/get_servers.py +24 -23
  263. pulumiverse_scaleway/instance/get_snapshot.py +29 -28
  264. pulumiverse_scaleway/instance/get_volume.py +30 -29
  265. pulumiverse_scaleway/instance/image.py +150 -148
  266. pulumiverse_scaleway/instance/ip.py +94 -92
  267. pulumiverse_scaleway/instance/ip_reverse_dns.py +45 -43
  268. pulumiverse_scaleway/instance/outputs.py +349 -348
  269. pulumiverse_scaleway/instance/placement_group.py +101 -99
  270. pulumiverse_scaleway/instance/private_nic.py +114 -93
  271. pulumiverse_scaleway/instance/security_group.py +150 -148
  272. pulumiverse_scaleway/instance/security_group_rules.py +17 -15
  273. pulumiverse_scaleway/instance/server.py +413 -331
  274. pulumiverse_scaleway/instance/snapshot.py +132 -109
  275. pulumiverse_scaleway/instance/user_data.py +59 -57
  276. pulumiverse_scaleway/instance/volume.py +153 -130
  277. pulumiverse_scaleway/instance_image.py +150 -148
  278. pulumiverse_scaleway/instance_ip.py +94 -92
  279. pulumiverse_scaleway/instance_ip_reverse_dns.py +45 -43
  280. pulumiverse_scaleway/instance_placement_group.py +101 -99
  281. pulumiverse_scaleway/instance_private_nic.py +114 -93
  282. pulumiverse_scaleway/instance_security_group.py +150 -148
  283. pulumiverse_scaleway/instance_security_group_rules.py +17 -15
  284. pulumiverse_scaleway/instance_server.py +413 -331
  285. pulumiverse_scaleway/instance_snapshot.py +132 -109
  286. pulumiverse_scaleway/instance_user_data.py +59 -57
  287. pulumiverse_scaleway/instance_volume.py +153 -130
  288. pulumiverse_scaleway/iot/__init__.py +2 -1
  289. pulumiverse_scaleway/iot/_inputs.py +98 -97
  290. pulumiverse_scaleway/iot/device.py +122 -120
  291. pulumiverse_scaleway/iot/get_device.py +31 -30
  292. pulumiverse_scaleway/iot/get_hub.py +39 -38
  293. pulumiverse_scaleway/iot/hub.py +206 -204
  294. pulumiverse_scaleway/iot/network.py +94 -92
  295. pulumiverse_scaleway/iot/outputs.py +78 -77
  296. pulumiverse_scaleway/iot/route.py +66 -64
  297. pulumiverse_scaleway/iot_device.py +122 -120
  298. pulumiverse_scaleway/iot_hub.py +206 -204
  299. pulumiverse_scaleway/iot_network.py +94 -92
  300. pulumiverse_scaleway/iot_route.py +66 -64
  301. pulumiverse_scaleway/ipam/__init__.py +2 -1
  302. pulumiverse_scaleway/ipam/_inputs.py +87 -86
  303. pulumiverse_scaleway/ipam/get_ip.py +51 -50
  304. pulumiverse_scaleway/ipam/get_ips.py +44 -43
  305. pulumiverse_scaleway/ipam/ip.py +94 -92
  306. pulumiverse_scaleway/ipam/ip_reverse_dns.py +59 -57
  307. pulumiverse_scaleway/ipam/outputs.py +90 -89
  308. pulumiverse_scaleway/ipam_ip.py +94 -92
  309. pulumiverse_scaleway/ipam_ip_reverse_dns.py +59 -57
  310. pulumiverse_scaleway/job/__init__.py +2 -1
  311. pulumiverse_scaleway/job/_inputs.py +38 -37
  312. pulumiverse_scaleway/job/definition.py +143 -141
  313. pulumiverse_scaleway/job/outputs.py +24 -23
  314. pulumiverse_scaleway/job_definition.py +143 -141
  315. pulumiverse_scaleway/kubernetes/__init__.py +2 -1
  316. pulumiverse_scaleway/kubernetes/_inputs.py +190 -189
  317. pulumiverse_scaleway/kubernetes/acl.py +45 -43
  318. pulumiverse_scaleway/kubernetes/cluster.py +234 -232
  319. pulumiverse_scaleway/kubernetes/get_cluster.py +39 -38
  320. pulumiverse_scaleway/kubernetes/get_pool.py +47 -46
  321. pulumiverse_scaleway/kubernetes/get_version.py +16 -15
  322. pulumiverse_scaleway/kubernetes/outputs.py +217 -216
  323. pulumiverse_scaleway/kubernetes/pool.py +290 -288
  324. pulumiverse_scaleway/kubernetes_cluster.py +234 -232
  325. pulumiverse_scaleway/kubernetes_node_pool.py +290 -288
  326. pulumiverse_scaleway/loadbalancer.py +199 -197
  327. pulumiverse_scaleway/loadbalancer_acl.py +73 -71
  328. pulumiverse_scaleway/loadbalancer_backend.py +381 -379
  329. pulumiverse_scaleway/loadbalancer_certificate.py +73 -71
  330. pulumiverse_scaleway/loadbalancer_frontend.py +136 -134
  331. pulumiverse_scaleway/loadbalancer_ip.py +101 -99
  332. pulumiverse_scaleway/loadbalancer_route.py +101 -99
  333. pulumiverse_scaleway/loadbalancers/__init__.py +2 -1
  334. pulumiverse_scaleway/loadbalancers/_inputs.py +214 -213
  335. pulumiverse_scaleway/loadbalancers/acl.py +73 -71
  336. pulumiverse_scaleway/loadbalancers/backend.py +381 -379
  337. pulumiverse_scaleway/loadbalancers/certificate.py +73 -71
  338. pulumiverse_scaleway/loadbalancers/frontend.py +136 -134
  339. pulumiverse_scaleway/loadbalancers/get_acls.py +22 -21
  340. pulumiverse_scaleway/loadbalancers/get_backend.py +43 -42
  341. pulumiverse_scaleway/loadbalancers/get_backends.py +22 -21
  342. pulumiverse_scaleway/loadbalancers/get_certificate.py +24 -23
  343. pulumiverse_scaleway/loadbalancers/get_frontend.py +26 -25
  344. pulumiverse_scaleway/loadbalancers/get_frontends.py +22 -21
  345. pulumiverse_scaleway/loadbalancers/get_ip.py +29 -28
  346. pulumiverse_scaleway/loadbalancers/get_ips.py +29 -28
  347. pulumiverse_scaleway/loadbalancers/get_load_balancer.py +36 -35
  348. pulumiverse_scaleway/loadbalancers/get_load_balancers.py +24 -23
  349. pulumiverse_scaleway/loadbalancers/get_route.py +16 -15
  350. pulumiverse_scaleway/loadbalancers/get_routes.py +17 -16
  351. pulumiverse_scaleway/loadbalancers/ip.py +101 -99
  352. pulumiverse_scaleway/loadbalancers/load_balancer.py +199 -197
  353. pulumiverse_scaleway/loadbalancers/outputs.py +525 -524
  354. pulumiverse_scaleway/loadbalancers/route.py +101 -99
  355. pulumiverse_scaleway/mnq/__init__.py +2 -1
  356. pulumiverse_scaleway/mnq/_inputs.py +32 -31
  357. pulumiverse_scaleway/mnq/get_sns.py +14 -13
  358. pulumiverse_scaleway/mnq/get_sqs.py +14 -13
  359. pulumiverse_scaleway/mnq/nats_account.py +52 -50
  360. pulumiverse_scaleway/mnq/nats_credentials.py +52 -50
  361. pulumiverse_scaleway/mnq/outputs.py +20 -19
  362. pulumiverse_scaleway/mnq/sns.py +38 -36
  363. pulumiverse_scaleway/mnq/sns_credentials.py +59 -57
  364. pulumiverse_scaleway/mnq/sns_topic.py +143 -141
  365. pulumiverse_scaleway/mnq/sns_topic_subscription.py +150 -148
  366. pulumiverse_scaleway/mnq/sqs.py +38 -36
  367. pulumiverse_scaleway/mnq/sqs_credentials.py +59 -57
  368. pulumiverse_scaleway/mnq/sqs_queue.py +192 -190
  369. pulumiverse_scaleway/mnq_nats_account.py +52 -50
  370. pulumiverse_scaleway/mnq_nats_credentials.py +52 -50
  371. pulumiverse_scaleway/mnq_sns.py +38 -36
  372. pulumiverse_scaleway/mnq_sns_credentials.py +59 -57
  373. pulumiverse_scaleway/mnq_sns_topic.py +143 -141
  374. pulumiverse_scaleway/mnq_sns_topic_subscription.py +150 -148
  375. pulumiverse_scaleway/mnq_sqs.py +38 -36
  376. pulumiverse_scaleway/mnq_sqs_credentials.py +59 -57
  377. pulumiverse_scaleway/mnq_sqs_queue.py +192 -190
  378. pulumiverse_scaleway/mongo_db_instance.py +306 -204
  379. pulumiverse_scaleway/mongo_db_snapshot.py +101 -99
  380. pulumiverse_scaleway/mongodb/__init__.py +2 -1
  381. pulumiverse_scaleway/mongodb/_inputs.py +97 -42
  382. pulumiverse_scaleway/mongodb/get_instance.py +47 -35
  383. pulumiverse_scaleway/mongodb/instance.py +306 -204
  384. pulumiverse_scaleway/mongodb/outputs.py +114 -51
  385. pulumiverse_scaleway/mongodb/snapshot.py +101 -99
  386. pulumiverse_scaleway/network/__init__.py +2 -1
  387. pulumiverse_scaleway/network/_inputs.py +140 -139
  388. pulumiverse_scaleway/network/acl.py +59 -57
  389. pulumiverse_scaleway/network/gateway_network.py +163 -142
  390. pulumiverse_scaleway/network/get_gateway_network.py +28 -27
  391. pulumiverse_scaleway/network/get_private_network.py +32 -31
  392. pulumiverse_scaleway/network/get_public_gateway.py +36 -35
  393. pulumiverse_scaleway/network/get_public_gateway_dhcp.py +24 -23
  394. pulumiverse_scaleway/network/get_public_gateway_dhcp_reservation.py +33 -32
  395. pulumiverse_scaleway/network/get_public_gateway_ip.py +14 -13
  396. pulumiverse_scaleway/network/get_public_gateway_pat_rule.py +21 -20
  397. pulumiverse_scaleway/network/get_routes.py +38 -37
  398. pulumiverse_scaleway/network/get_vpc.py +35 -34
  399. pulumiverse_scaleway/network/get_vpcs.py +24 -23
  400. pulumiverse_scaleway/network/outputs.py +206 -205
  401. pulumiverse_scaleway/network/private_network.py +122 -120
  402. pulumiverse_scaleway/network/public_gateway.py +213 -211
  403. pulumiverse_scaleway/network/public_gateway_dhcp.py +234 -232
  404. pulumiverse_scaleway/network/public_gateway_dhcp_reservation.py +87 -85
  405. pulumiverse_scaleway/network/public_gateway_ip.py +87 -85
  406. pulumiverse_scaleway/network/public_gateway_ip_reverse_dns.py +45 -43
  407. pulumiverse_scaleway/network/public_gateway_pat_rule.py +108 -106
  408. pulumiverse_scaleway/network/route.py +115 -113
  409. pulumiverse_scaleway/network/vpc.py +101 -99
  410. pulumiverse_scaleway/object/__init__.py +2 -1
  411. pulumiverse_scaleway/object/_inputs.py +127 -126
  412. pulumiverse_scaleway/object/bucket.py +115 -113
  413. pulumiverse_scaleway/object/bucket_acl.py +73 -71
  414. pulumiverse_scaleway/object/bucket_lock_configuration.py +45 -43
  415. pulumiverse_scaleway/object/bucket_policy.py +59 -57
  416. pulumiverse_scaleway/object/bucket_website_configuration.py +85 -65
  417. pulumiverse_scaleway/object/get_bucket.py +22 -21
  418. pulumiverse_scaleway/object/get_bucket_policy.py +17 -16
  419. pulumiverse_scaleway/object/item.py +232 -183
  420. pulumiverse_scaleway/object/outputs.py +114 -113
  421. pulumiverse_scaleway/object_bucket.py +115 -113
  422. pulumiverse_scaleway/object_bucket_acl.py +73 -71
  423. pulumiverse_scaleway/object_bucket_lock_configuration.py +45 -43
  424. pulumiverse_scaleway/object_bucket_policy.py +59 -57
  425. pulumiverse_scaleway/object_bucket_website_configuration.py +85 -65
  426. pulumiverse_scaleway/object_item.py +232 -183
  427. pulumiverse_scaleway/observability/__init__.py +2 -2
  428. pulumiverse_scaleway/observability/_inputs.py +89 -88
  429. pulumiverse_scaleway/observability/alert_manager.py +52 -50
  430. pulumiverse_scaleway/observability/cockpit.py +38 -36
  431. pulumiverse_scaleway/observability/get_instance.py +10 -9
  432. pulumiverse_scaleway/observability/get_source.py +33 -32
  433. pulumiverse_scaleway/observability/grafana_user.py +59 -57
  434. pulumiverse_scaleway/observability/outputs.py +77 -76
  435. pulumiverse_scaleway/observability/source.py +115 -113
  436. pulumiverse_scaleway/observability/token.py +66 -64
  437. pulumiverse_scaleway/outputs.py +2895 -2708
  438. pulumiverse_scaleway/provider.py +87 -65
  439. pulumiverse_scaleway/pulumi-plugin.json +1 -1
  440. pulumiverse_scaleway/rdb_snapshot.py +101 -99
  441. pulumiverse_scaleway/redis/__init__.py +2 -1
  442. pulumiverse_scaleway/redis/_inputs.py +63 -62
  443. pulumiverse_scaleway/redis/cluster.py +198 -177
  444. pulumiverse_scaleway/redis/get_cluster.py +34 -33
  445. pulumiverse_scaleway/redis/outputs.py +74 -73
  446. pulumiverse_scaleway/redis_cluster.py +198 -177
  447. pulumiverse_scaleway/registry/__init__.py +2 -1
  448. pulumiverse_scaleway/registry/get_image.py +37 -36
  449. pulumiverse_scaleway/registry/get_image_tag.py +33 -32
  450. pulumiverse_scaleway/registry/get_namespace.py +27 -26
  451. pulumiverse_scaleway/registry/namespace.py +87 -85
  452. pulumiverse_scaleway/registry_namespace.py +87 -85
  453. pulumiverse_scaleway/sdb_database.py +80 -78
  454. pulumiverse_scaleway/secret.py +143 -141
  455. pulumiverse_scaleway/secret_version.py +87 -85
  456. pulumiverse_scaleway/secrets/__init__.py +2 -1
  457. pulumiverse_scaleway/secrets/_inputs.py +53 -52
  458. pulumiverse_scaleway/secrets/get_secret.py +41 -40
  459. pulumiverse_scaleway/secrets/get_version.py +34 -33
  460. pulumiverse_scaleway/secrets/outputs.py +64 -63
  461. pulumiverse_scaleway/secrets/secret.py +143 -141
  462. pulumiverse_scaleway/secrets/version.py +87 -85
  463. pulumiverse_scaleway/tem/__init__.py +2 -1
  464. pulumiverse_scaleway/tem/_inputs.py +28 -27
  465. pulumiverse_scaleway/tem/blocked_list.py +87 -85
  466. pulumiverse_scaleway/tem/domain.py +199 -197
  467. pulumiverse_scaleway/tem/domain_validation.py +52 -50
  468. pulumiverse_scaleway/tem/get_domain.py +43 -42
  469. pulumiverse_scaleway/tem/get_offer_subscription.py +22 -21
  470. pulumiverse_scaleway/tem/outputs.py +34 -33
  471. pulumiverse_scaleway/tem/webhook.py +108 -106
  472. pulumiverse_scaleway/tem_domain.py +199 -197
  473. pulumiverse_scaleway/tem_domain_validation.py +52 -50
  474. pulumiverse_scaleway/tem_webhook.py +108 -106
  475. pulumiverse_scaleway/vpc.py +101 -99
  476. pulumiverse_scaleway/vpc_gateway_network.py +163 -142
  477. pulumiverse_scaleway/vpc_private_network.py +122 -120
  478. pulumiverse_scaleway/vpc_public_gateway.py +213 -211
  479. pulumiverse_scaleway/vpc_public_gateway_dhcp.py +234 -232
  480. pulumiverse_scaleway/vpc_public_gateway_dhcp_reservation.py +87 -85
  481. pulumiverse_scaleway/vpc_public_gateway_ip.py +87 -85
  482. pulumiverse_scaleway/vpc_public_gateway_ip_reverse_dns.py +45 -43
  483. pulumiverse_scaleway/vpc_public_gateway_pat_rule.py +108 -106
  484. pulumiverse_scaleway/vpc_route.py +115 -113
  485. pulumiverse_scaleway/webhosting.py +164 -162
  486. {pulumiverse_scaleway-1.29.0a1747948949.dist-info → pulumiverse_scaleway-1.30.0.dist-info}/METADATA +2 -2
  487. pulumiverse_scaleway-1.30.0.dist-info/RECORD +493 -0
  488. {pulumiverse_scaleway-1.29.0a1747948949.dist-info → pulumiverse_scaleway-1.30.0.dist-info}/WHEEL +1 -1
  489. pulumiverse_scaleway-1.29.0a1747948949.dist-info/RECORD +0 -487
  490. {pulumiverse_scaleway-1.29.0a1747948949.dist-info → pulumiverse_scaleway-1.30.0.dist-info}/top_level.txt +0 -0
@@ -1,7 +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 builtins
5
6
  import copy
6
7
  import warnings
7
8
  import sys
@@ -21,85 +22,93 @@ __all__ = ['ServerArgs', 'Server']
21
22
  @pulumi.input_type
22
23
  class ServerArgs:
23
24
  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,
25
+ type: pulumi.Input[builtins.str],
26
+ additional_volume_ids: Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]] = None,
27
+ admin_password_encryption_ssh_key_id: Optional[pulumi.Input[builtins.str]] = None,
28
+ boot_type: Optional[pulumi.Input[builtins.str]] = None,
29
+ bootscript_id: Optional[pulumi.Input[builtins.str]] = None,
30
+ cloud_init: Optional[pulumi.Input[builtins.str]] = None,
31
+ enable_dynamic_ip: Optional[pulumi.Input[builtins.bool]] = None,
32
+ enable_ipv6: Optional[pulumi.Input[builtins.bool]] = None,
33
+ image: Optional[pulumi.Input[builtins.str]] = None,
34
+ ip_id: Optional[pulumi.Input[builtins.str]] = None,
35
+ ip_ids: Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]] = None,
36
+ name: Optional[pulumi.Input[builtins.str]] = None,
37
+ placement_group_id: Optional[pulumi.Input[builtins.str]] = None,
38
+ private_ips: Optional[pulumi.Input[Sequence[pulumi.Input['ServerPrivateIpArgs']]]] = None,
36
39
  private_networks: Optional[pulumi.Input[Sequence[pulumi.Input['ServerPrivateNetworkArgs']]]] = None,
37
- project_id: Optional[pulumi.Input[str]] = None,
38
- protected: Optional[pulumi.Input[bool]] = None,
40
+ project_id: Optional[pulumi.Input[builtins.str]] = None,
41
+ protected: Optional[pulumi.Input[builtins.bool]] = None,
39
42
  public_ips: Optional[pulumi.Input[Sequence[pulumi.Input['ServerPublicIpArgs']]]] = None,
40
- replace_on_type_change: Optional[pulumi.Input[bool]] = None,
43
+ replace_on_type_change: Optional[pulumi.Input[builtins.bool]] = None,
41
44
  root_volume: Optional[pulumi.Input['ServerRootVolumeArgs']] = None,
42
- security_group_id: Optional[pulumi.Input[str]] = None,
43
- state: Optional[pulumi.Input[str]] = None,
44
- tags: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
45
- user_data: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
46
- zone: Optional[pulumi.Input[str]] = None):
45
+ security_group_id: Optional[pulumi.Input[builtins.str]] = None,
46
+ state: Optional[pulumi.Input[builtins.str]] = None,
47
+ tags: Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]] = None,
48
+ user_data: Optional[pulumi.Input[Mapping[str, pulumi.Input[builtins.str]]]] = None,
49
+ zone: Optional[pulumi.Input[builtins.str]] = None):
47
50
  """
48
51
  The set of arguments for constructing a Server resource.
49
- :param pulumi.Input[str] type: The commercial type of the server.
52
+ :param pulumi.Input[builtins.str] type: The commercial type of the server.
50
53
  You find all the available types on the [pricing page](https://www.scaleway.com/en/pricing/).
51
54
  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/).
52
55
  Use `replace_on_type_change` to trigger replacement instead of migration.
53
56
 
54
57
  > **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.
55
- :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)
58
+ :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)
56
59
  attached to the server. Updates to this field will trigger a stop/start of the server.
57
60
 
58
61
  > **Important:** If this field contains local volumes, the `state` must be set to `stopped`, otherwise it will fail.
59
62
 
60
63
  > **Important:** If this field contains local volumes, you have to first detach them, in one apply, and then delete the volume in another apply.
61
- :param pulumi.Input[str] boot_type: The boot Type of the server. Possible values are: `local`, `bootscript` or `rescue`.
62
- :param pulumi.Input[str] bootscript_id: ID of the target bootscript (set boot_type to bootscript)
63
- :param pulumi.Input[str] cloud_init: The cloud init script associated with this server
64
- :param pulumi.Input[bool] enable_dynamic_ip: If true a dynamic IP will be attached to the server.
65
- :param pulumi.Input[bool] enable_ipv6: Determines if IPv6 is enabled for the server.
64
+ :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.
65
+ Mandatory for Windows OS. The public_key value of this key is used to encrypt the admin password.
66
+ 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.
67
+ :param pulumi.Input[builtins.str] boot_type: The boot Type of the server. Possible values are: `local`, `bootscript` or `rescue`.
68
+ :param pulumi.Input[builtins.str] bootscript_id: ID of the target bootscript (set boot_type to bootscript)
69
+ :param pulumi.Input[builtins.str] cloud_init: The cloud init script associated with this server
70
+ :param pulumi.Input[builtins.bool] enable_dynamic_ip: If true a dynamic IP will be attached to the server.
71
+ :param pulumi.Input[builtins.bool] enable_ipv6: Determines if IPv6 is enabled for the server.
66
72
  Deprecated: Please use a instance.Ip with a `routed_ipv6` type.
67
- :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)
73
+ :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)
68
74
  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.
69
75
 
70
76
  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```
71
77
 
72
78
  To retrieve more information by label please use: ```scw marketplace image get label=<LABEL>```
73
- :param pulumi.Input[str] ip_id: The ID of the reserved IP that is attached to the server.
74
- :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`.
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`.
75
81
 
76
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.
77
- :param pulumi.Input[str] name: The name of the server.
78
- :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.
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
 
81
87
  > **Important:** When updating `placement_group_id` the `state` must be set to `stopped`, otherwise it will fail.
88
+ :param pulumi.Input[Sequence[pulumi.Input['ServerPrivateIpArgs']]] private_ips: The list of private IPv4 and IPv6 addresses associated with the resource.
82
89
  :param pulumi.Input[Sequence[pulumi.Input['ServerPrivateNetworkArgs']]] private_networks: The private network associated with the server.
83
90
  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.
84
- :param pulumi.Input[str] project_id: `project_id`) The ID of the project the server is associated with.
85
- :param pulumi.Input[bool] protected: Set to true to activate server protection option.
91
+ :param pulumi.Input[builtins.str] project_id: `project_id`) The ID of the project the server is associated with.
92
+ :param pulumi.Input[builtins.bool] protected: Set to true to activate server protection option.
86
93
  :param pulumi.Input[Sequence[pulumi.Input['ServerPublicIpArgs']]] public_ips: The list of public IPs of the server.
87
- :param pulumi.Input[bool] replace_on_type_change: If true, the server will be replaced if `type` is changed. Otherwise, the server will migrate.
94
+ :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.
88
95
  :param pulumi.Input['ServerRootVolumeArgs'] root_volume: Root [volume](https://www.scaleway.com/en/developers/api/instance/#path-volume-types-list-volume-types) attached to the server on creation.
89
- :param pulumi.Input[str] security_group_id: The security group the server is attached to
90
- :param pulumi.Input[str] state: The state of the server. Possible values are: `started`, `stopped` or `standby`.
91
- :param pulumi.Input[Sequence[pulumi.Input[str]]] tags: The tags associated with the server.
92
- :param pulumi.Input[Mapping[str, pulumi.Input[str]]] user_data: The user data associated with the server.
96
+ :param pulumi.Input[builtins.str] security_group_id: The security group the server is attached to
97
+ :param pulumi.Input[builtins.str] state: The state of the server. Possible values are: `started`, `stopped` or `standby`.
98
+ :param pulumi.Input[Sequence[pulumi.Input[builtins.str]]] tags: The tags associated with the server.
99
+ :param pulumi.Input[Mapping[str, pulumi.Input[builtins.str]]] user_data: The user data associated with the server.
93
100
  Use the `cloud-init` key to use [cloud-init](https://cloudinit.readthedocs.io/en/latest/) on your instance.
94
101
  You can define values using:
95
102
  - string
96
103
  - UTF-8 encoded file content using file
97
104
  - Binary files using filebase64.
98
- :param pulumi.Input[str] zone: `zone`) The zone in which the server should be created.
105
+ :param pulumi.Input[builtins.str] zone: `zone`) The zone in which the server should be created.
99
106
  """
100
107
  pulumi.set(__self__, "type", type)
101
108
  if additional_volume_ids is not None:
102
109
  pulumi.set(__self__, "additional_volume_ids", additional_volume_ids)
110
+ if admin_password_encryption_ssh_key_id is not None:
111
+ pulumi.set(__self__, "admin_password_encryption_ssh_key_id", admin_password_encryption_ssh_key_id)
103
112
  if boot_type is not None:
104
113
  pulumi.set(__self__, "boot_type", boot_type)
105
114
  if bootscript_id is not None:
@@ -126,6 +135,8 @@ class ServerArgs:
126
135
  pulumi.set(__self__, "name", name)
127
136
  if placement_group_id is not None:
128
137
  pulumi.set(__self__, "placement_group_id", placement_group_id)
138
+ if private_ips is not None:
139
+ pulumi.set(__self__, "private_ips", private_ips)
129
140
  if private_networks is not None:
130
141
  pulumi.set(__self__, "private_networks", private_networks)
131
142
  if project_id is not None:
@@ -151,7 +162,7 @@ class ServerArgs:
151
162
 
152
163
  @property
153
164
  @pulumi.getter
154
- def type(self) -> pulumi.Input[str]:
165
+ def type(self) -> pulumi.Input[builtins.str]:
155
166
  """
156
167
  The commercial type of the server.
157
168
  You find all the available types on the [pricing page](https://www.scaleway.com/en/pricing/).
@@ -163,12 +174,12 @@ class ServerArgs:
163
174
  return pulumi.get(self, "type")
164
175
 
165
176
  @type.setter
166
- def type(self, value: pulumi.Input[str]):
177
+ def type(self, value: pulumi.Input[builtins.str]):
167
178
  pulumi.set(self, "type", value)
168
179
 
169
180
  @property
170
181
  @pulumi.getter(name="additionalVolumeIds")
171
- def additional_volume_ids(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
182
+ def additional_volume_ids(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]]:
172
183
  """
173
184
  The [additional volumes](https://www.scaleway.com/en/developers/api/instance/#path-volume-types-list-volume-types)
174
185
  attached to the server. Updates to this field will trigger a stop/start of the server.
@@ -180,62 +191,76 @@ class ServerArgs:
180
191
  return pulumi.get(self, "additional_volume_ids")
181
192
 
182
193
  @additional_volume_ids.setter
183
- def additional_volume_ids(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
194
+ def additional_volume_ids(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]]):
184
195
  pulumi.set(self, "additional_volume_ids", value)
185
196
 
197
+ @property
198
+ @pulumi.getter(name="adminPasswordEncryptionSshKeyId")
199
+ def admin_password_encryption_ssh_key_id(self) -> Optional[pulumi.Input[builtins.str]]:
200
+ """
201
+ The ID of the SSH RSA key that will be used to encrypt the initial admin password for OS requiring it.
202
+ Mandatory for Windows OS. The public_key value of this key is used to encrypt the admin password.
203
+ 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.
204
+ """
205
+ return pulumi.get(self, "admin_password_encryption_ssh_key_id")
206
+
207
+ @admin_password_encryption_ssh_key_id.setter
208
+ def admin_password_encryption_ssh_key_id(self, value: Optional[pulumi.Input[builtins.str]]):
209
+ pulumi.set(self, "admin_password_encryption_ssh_key_id", value)
210
+
186
211
  @property
187
212
  @pulumi.getter(name="bootType")
188
- def boot_type(self) -> Optional[pulumi.Input[str]]:
213
+ def boot_type(self) -> Optional[pulumi.Input[builtins.str]]:
189
214
  """
190
215
  The boot Type of the server. Possible values are: `local`, `bootscript` or `rescue`.
191
216
  """
192
217
  return pulumi.get(self, "boot_type")
193
218
 
194
219
  @boot_type.setter
195
- def boot_type(self, value: Optional[pulumi.Input[str]]):
220
+ def boot_type(self, value: Optional[pulumi.Input[builtins.str]]):
196
221
  pulumi.set(self, "boot_type", value)
197
222
 
198
223
  @property
199
224
  @pulumi.getter(name="bootscriptId")
200
225
  @_utilities.deprecated("""bootscript is not supported anymore.""")
201
- def bootscript_id(self) -> Optional[pulumi.Input[str]]:
226
+ def bootscript_id(self) -> Optional[pulumi.Input[builtins.str]]:
202
227
  """
203
228
  ID of the target bootscript (set boot_type to bootscript)
204
229
  """
205
230
  return pulumi.get(self, "bootscript_id")
206
231
 
207
232
  @bootscript_id.setter
208
- def bootscript_id(self, value: Optional[pulumi.Input[str]]):
233
+ def bootscript_id(self, value: Optional[pulumi.Input[builtins.str]]):
209
234
  pulumi.set(self, "bootscript_id", value)
210
235
 
211
236
  @property
212
237
  @pulumi.getter(name="cloudInit")
213
- def cloud_init(self) -> Optional[pulumi.Input[str]]:
238
+ def cloud_init(self) -> Optional[pulumi.Input[builtins.str]]:
214
239
  """
215
240
  The cloud init script associated with this server
216
241
  """
217
242
  return pulumi.get(self, "cloud_init")
218
243
 
219
244
  @cloud_init.setter
220
- def cloud_init(self, value: Optional[pulumi.Input[str]]):
245
+ def cloud_init(self, value: Optional[pulumi.Input[builtins.str]]):
221
246
  pulumi.set(self, "cloud_init", value)
222
247
 
223
248
  @property
224
249
  @pulumi.getter(name="enableDynamicIp")
225
- def enable_dynamic_ip(self) -> Optional[pulumi.Input[bool]]:
250
+ def enable_dynamic_ip(self) -> Optional[pulumi.Input[builtins.bool]]:
226
251
  """
227
252
  If true a dynamic IP will be attached to the server.
228
253
  """
229
254
  return pulumi.get(self, "enable_dynamic_ip")
230
255
 
231
256
  @enable_dynamic_ip.setter
232
- def enable_dynamic_ip(self, value: Optional[pulumi.Input[bool]]):
257
+ def enable_dynamic_ip(self, value: Optional[pulumi.Input[builtins.bool]]):
233
258
  pulumi.set(self, "enable_dynamic_ip", value)
234
259
 
235
260
  @property
236
261
  @pulumi.getter(name="enableIpv6")
237
262
  @_utilities.deprecated("""Please use a instance.Ip with a `routed_ipv6` type""")
238
- def enable_ipv6(self) -> Optional[pulumi.Input[bool]]:
263
+ def enable_ipv6(self) -> Optional[pulumi.Input[builtins.bool]]:
239
264
  """
240
265
  Determines if IPv6 is enabled for the server.
241
266
  Deprecated: Please use a instance.Ip with a `routed_ipv6` type.
@@ -243,12 +268,12 @@ class ServerArgs:
243
268
  return pulumi.get(self, "enable_ipv6")
244
269
 
245
270
  @enable_ipv6.setter
246
- def enable_ipv6(self, value: Optional[pulumi.Input[bool]]):
271
+ def enable_ipv6(self, value: Optional[pulumi.Input[builtins.bool]]):
247
272
  pulumi.set(self, "enable_ipv6", value)
248
273
 
249
274
  @property
250
275
  @pulumi.getter
251
- def image(self) -> Optional[pulumi.Input[str]]:
276
+ def image(self) -> Optional[pulumi.Input[builtins.str]]:
252
277
  """
253
278
  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)
254
279
  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.
@@ -260,24 +285,24 @@ class ServerArgs:
260
285
  return pulumi.get(self, "image")
261
286
 
262
287
  @image.setter
263
- def image(self, value: Optional[pulumi.Input[str]]):
288
+ def image(self, value: Optional[pulumi.Input[builtins.str]]):
264
289
  pulumi.set(self, "image", value)
265
290
 
266
291
  @property
267
292
  @pulumi.getter(name="ipId")
268
- def ip_id(self) -> Optional[pulumi.Input[str]]:
293
+ def ip_id(self) -> Optional[pulumi.Input[builtins.str]]:
269
294
  """
270
295
  The ID of the reserved IP that is attached to the server.
271
296
  """
272
297
  return pulumi.get(self, "ip_id")
273
298
 
274
299
  @ip_id.setter
275
- def ip_id(self, value: Optional[pulumi.Input[str]]):
300
+ def ip_id(self, value: Optional[pulumi.Input[builtins.str]]):
276
301
  pulumi.set(self, "ip_id", value)
277
302
 
278
303
  @property
279
304
  @pulumi.getter(name="ipIds")
280
- def ip_ids(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
305
+ def ip_ids(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]]:
281
306
  """
282
307
  List of ID of reserved IPs that are attached to the server. Cannot be used with `ip_id`.
283
308
 
@@ -286,24 +311,24 @@ class ServerArgs:
286
311
  return pulumi.get(self, "ip_ids")
287
312
 
288
313
  @ip_ids.setter
289
- def ip_ids(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
314
+ def ip_ids(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]]):
290
315
  pulumi.set(self, "ip_ids", value)
291
316
 
292
317
  @property
293
318
  @pulumi.getter
294
- def name(self) -> Optional[pulumi.Input[str]]:
319
+ def name(self) -> Optional[pulumi.Input[builtins.str]]:
295
320
  """
296
321
  The name of the server.
297
322
  """
298
323
  return pulumi.get(self, "name")
299
324
 
300
325
  @name.setter
301
- def name(self, value: Optional[pulumi.Input[str]]):
326
+ def name(self, value: Optional[pulumi.Input[builtins.str]]):
302
327
  pulumi.set(self, "name", value)
303
328
 
304
329
  @property
305
330
  @pulumi.getter(name="placementGroupId")
306
- def placement_group_id(self) -> Optional[pulumi.Input[str]]:
331
+ def placement_group_id(self) -> Optional[pulumi.Input[builtins.str]]:
307
332
  """
308
333
  The [placement group](https://www.scaleway.com/en/developers/api/instance/#path-security-groups-update-a-security-group the server is attached to.
309
334
 
@@ -313,9 +338,21 @@ class ServerArgs:
313
338
  return pulumi.get(self, "placement_group_id")
314
339
 
315
340
  @placement_group_id.setter
316
- def placement_group_id(self, value: Optional[pulumi.Input[str]]):
341
+ def placement_group_id(self, value: Optional[pulumi.Input[builtins.str]]):
317
342
  pulumi.set(self, "placement_group_id", value)
318
343
 
344
+ @property
345
+ @pulumi.getter(name="privateIps")
346
+ def private_ips(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['ServerPrivateIpArgs']]]]:
347
+ """
348
+ The list of private IPv4 and IPv6 addresses associated with the resource.
349
+ """
350
+ return pulumi.get(self, "private_ips")
351
+
352
+ @private_ips.setter
353
+ def private_ips(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['ServerPrivateIpArgs']]]]):
354
+ pulumi.set(self, "private_ips", value)
355
+
319
356
  @property
320
357
  @pulumi.getter(name="privateNetworks")
321
358
  def private_networks(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['ServerPrivateNetworkArgs']]]]:
@@ -331,26 +368,26 @@ class ServerArgs:
331
368
 
332
369
  @property
333
370
  @pulumi.getter(name="projectId")
334
- def project_id(self) -> Optional[pulumi.Input[str]]:
371
+ def project_id(self) -> Optional[pulumi.Input[builtins.str]]:
335
372
  """
336
373
  `project_id`) The ID of the project the server is associated with.
337
374
  """
338
375
  return pulumi.get(self, "project_id")
339
376
 
340
377
  @project_id.setter
341
- def project_id(self, value: Optional[pulumi.Input[str]]):
378
+ def project_id(self, value: Optional[pulumi.Input[builtins.str]]):
342
379
  pulumi.set(self, "project_id", value)
343
380
 
344
381
  @property
345
382
  @pulumi.getter
346
- def protected(self) -> Optional[pulumi.Input[bool]]:
383
+ def protected(self) -> Optional[pulumi.Input[builtins.bool]]:
347
384
  """
348
385
  Set to true to activate server protection option.
349
386
  """
350
387
  return pulumi.get(self, "protected")
351
388
 
352
389
  @protected.setter
353
- def protected(self, value: Optional[pulumi.Input[bool]]):
390
+ def protected(self, value: Optional[pulumi.Input[builtins.bool]]):
354
391
  pulumi.set(self, "protected", value)
355
392
 
356
393
  @property
@@ -367,14 +404,14 @@ class ServerArgs:
367
404
 
368
405
  @property
369
406
  @pulumi.getter(name="replaceOnTypeChange")
370
- def replace_on_type_change(self) -> Optional[pulumi.Input[bool]]:
407
+ def replace_on_type_change(self) -> Optional[pulumi.Input[builtins.bool]]:
371
408
  """
372
409
  If true, the server will be replaced if `type` is changed. Otherwise, the server will migrate.
373
410
  """
374
411
  return pulumi.get(self, "replace_on_type_change")
375
412
 
376
413
  @replace_on_type_change.setter
377
- def replace_on_type_change(self, value: Optional[pulumi.Input[bool]]):
414
+ def replace_on_type_change(self, value: Optional[pulumi.Input[builtins.bool]]):
378
415
  pulumi.set(self, "replace_on_type_change", value)
379
416
 
380
417
  @property
@@ -391,43 +428,43 @@ class ServerArgs:
391
428
 
392
429
  @property
393
430
  @pulumi.getter(name="securityGroupId")
394
- def security_group_id(self) -> Optional[pulumi.Input[str]]:
431
+ def security_group_id(self) -> Optional[pulumi.Input[builtins.str]]:
395
432
  """
396
433
  The security group the server is attached to
397
434
  """
398
435
  return pulumi.get(self, "security_group_id")
399
436
 
400
437
  @security_group_id.setter
401
- def security_group_id(self, value: Optional[pulumi.Input[str]]):
438
+ def security_group_id(self, value: Optional[pulumi.Input[builtins.str]]):
402
439
  pulumi.set(self, "security_group_id", value)
403
440
 
404
441
  @property
405
442
  @pulumi.getter
406
- def state(self) -> Optional[pulumi.Input[str]]:
443
+ def state(self) -> Optional[pulumi.Input[builtins.str]]:
407
444
  """
408
445
  The state of the server. Possible values are: `started`, `stopped` or `standby`.
409
446
  """
410
447
  return pulumi.get(self, "state")
411
448
 
412
449
  @state.setter
413
- def state(self, value: Optional[pulumi.Input[str]]):
450
+ def state(self, value: Optional[pulumi.Input[builtins.str]]):
414
451
  pulumi.set(self, "state", value)
415
452
 
416
453
  @property
417
454
  @pulumi.getter
418
- def tags(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
455
+ def tags(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]]:
419
456
  """
420
457
  The tags associated with the server.
421
458
  """
422
459
  return pulumi.get(self, "tags")
423
460
 
424
461
  @tags.setter
425
- def tags(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
462
+ def tags(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]]):
426
463
  pulumi.set(self, "tags", value)
427
464
 
428
465
  @property
429
466
  @pulumi.getter(name="userData")
430
- def user_data(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]:
467
+ def user_data(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[builtins.str]]]]:
431
468
  """
432
469
  The user data associated with the server.
433
470
  Use the `cloud-init` key to use [cloud-init](https://cloudinit.readthedocs.io/en/latest/) on your instance.
@@ -439,122 +476,128 @@ class ServerArgs:
439
476
  return pulumi.get(self, "user_data")
440
477
 
441
478
  @user_data.setter
442
- def user_data(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]):
479
+ def user_data(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[builtins.str]]]]):
443
480
  pulumi.set(self, "user_data", value)
444
481
 
445
482
  @property
446
483
  @pulumi.getter
447
- def zone(self) -> Optional[pulumi.Input[str]]:
484
+ def zone(self) -> Optional[pulumi.Input[builtins.str]]:
448
485
  """
449
486
  `zone`) The zone in which the server should be created.
450
487
  """
451
488
  return pulumi.get(self, "zone")
452
489
 
453
490
  @zone.setter
454
- def zone(self, value: Optional[pulumi.Input[str]]):
491
+ def zone(self, value: Optional[pulumi.Input[builtins.str]]):
455
492
  pulumi.set(self, "zone", value)
456
493
 
457
494
 
458
495
  @pulumi.input_type
459
496
  class _ServerState:
460
497
  def __init__(__self__, *,
461
- additional_volume_ids: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
462
- boot_type: Optional[pulumi.Input[str]] = None,
463
- bootscript_id: Optional[pulumi.Input[str]] = None,
464
- cloud_init: Optional[pulumi.Input[str]] = None,
465
- enable_dynamic_ip: Optional[pulumi.Input[bool]] = None,
466
- enable_ipv6: Optional[pulumi.Input[bool]] = None,
467
- image: Optional[pulumi.Input[str]] = None,
468
- ip_id: Optional[pulumi.Input[str]] = None,
469
- ip_ids: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
470
- ipv6_address: Optional[pulumi.Input[str]] = None,
471
- ipv6_gateway: Optional[pulumi.Input[str]] = None,
472
- ipv6_prefix_length: Optional[pulumi.Input[int]] = None,
473
- name: Optional[pulumi.Input[str]] = None,
474
- organization_id: Optional[pulumi.Input[str]] = None,
475
- placement_group_id: Optional[pulumi.Input[str]] = None,
476
- placement_group_policy_respected: Optional[pulumi.Input[bool]] = None,
477
- private_ip: Optional[pulumi.Input[str]] = None,
498
+ additional_volume_ids: Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]] = None,
499
+ admin_password_encryption_ssh_key_id: Optional[pulumi.Input[builtins.str]] = None,
500
+ boot_type: Optional[pulumi.Input[builtins.str]] = None,
501
+ bootscript_id: Optional[pulumi.Input[builtins.str]] = None,
502
+ cloud_init: Optional[pulumi.Input[builtins.str]] = None,
503
+ enable_dynamic_ip: Optional[pulumi.Input[builtins.bool]] = None,
504
+ enable_ipv6: Optional[pulumi.Input[builtins.bool]] = None,
505
+ image: Optional[pulumi.Input[builtins.str]] = None,
506
+ ip_id: Optional[pulumi.Input[builtins.str]] = None,
507
+ ip_ids: Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]] = None,
508
+ ipv6_address: Optional[pulumi.Input[builtins.str]] = None,
509
+ ipv6_gateway: Optional[pulumi.Input[builtins.str]] = None,
510
+ ipv6_prefix_length: Optional[pulumi.Input[builtins.int]] = None,
511
+ name: Optional[pulumi.Input[builtins.str]] = None,
512
+ organization_id: Optional[pulumi.Input[builtins.str]] = None,
513
+ placement_group_id: Optional[pulumi.Input[builtins.str]] = None,
514
+ placement_group_policy_respected: Optional[pulumi.Input[builtins.bool]] = None,
515
+ private_ip: Optional[pulumi.Input[builtins.str]] = None,
478
516
  private_ips: Optional[pulumi.Input[Sequence[pulumi.Input['ServerPrivateIpArgs']]]] = None,
479
517
  private_networks: Optional[pulumi.Input[Sequence[pulumi.Input['ServerPrivateNetworkArgs']]]] = None,
480
- project_id: Optional[pulumi.Input[str]] = None,
481
- protected: Optional[pulumi.Input[bool]] = None,
482
- public_ip: Optional[pulumi.Input[str]] = None,
518
+ project_id: Optional[pulumi.Input[builtins.str]] = None,
519
+ protected: Optional[pulumi.Input[builtins.bool]] = None,
520
+ public_ip: Optional[pulumi.Input[builtins.str]] = None,
483
521
  public_ips: Optional[pulumi.Input[Sequence[pulumi.Input['ServerPublicIpArgs']]]] = None,
484
- replace_on_type_change: Optional[pulumi.Input[bool]] = None,
522
+ replace_on_type_change: Optional[pulumi.Input[builtins.bool]] = None,
485
523
  root_volume: Optional[pulumi.Input['ServerRootVolumeArgs']] = None,
486
- security_group_id: Optional[pulumi.Input[str]] = None,
487
- state: Optional[pulumi.Input[str]] = None,
488
- tags: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
489
- type: Optional[pulumi.Input[str]] = None,
490
- user_data: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
491
- zone: Optional[pulumi.Input[str]] = None):
524
+ security_group_id: Optional[pulumi.Input[builtins.str]] = None,
525
+ state: Optional[pulumi.Input[builtins.str]] = None,
526
+ tags: Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]] = None,
527
+ type: Optional[pulumi.Input[builtins.str]] = None,
528
+ user_data: Optional[pulumi.Input[Mapping[str, pulumi.Input[builtins.str]]]] = None,
529
+ zone: Optional[pulumi.Input[builtins.str]] = None):
492
530
  """
493
531
  Input properties used for looking up and filtering Server resources.
494
- :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)
532
+ :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)
495
533
  attached to the server. Updates to this field will trigger a stop/start of the server.
496
534
 
497
535
  > **Important:** If this field contains local volumes, the `state` must be set to `stopped`, otherwise it will fail.
498
536
 
499
537
  > **Important:** If this field contains local volumes, you have to first detach them, in one apply, and then delete the volume in another apply.
500
- :param pulumi.Input[str] boot_type: The boot Type of the server. Possible values are: `local`, `bootscript` or `rescue`.
501
- :param pulumi.Input[str] bootscript_id: ID of the target bootscript (set boot_type to bootscript)
502
- :param pulumi.Input[str] cloud_init: The cloud init script associated with this server
503
- :param pulumi.Input[bool] enable_dynamic_ip: If true a dynamic IP will be attached to the server.
504
- :param pulumi.Input[bool] enable_ipv6: Determines if IPv6 is enabled for the server.
538
+ :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.
539
+ Mandatory for Windows OS. The public_key value of this key is used to encrypt the admin password.
540
+ 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.
541
+ :param pulumi.Input[builtins.str] boot_type: The boot Type of the server. Possible values are: `local`, `bootscript` or `rescue`.
542
+ :param pulumi.Input[builtins.str] bootscript_id: ID of the target bootscript (set boot_type to bootscript)
543
+ :param pulumi.Input[builtins.str] cloud_init: The cloud init script associated with this server
544
+ :param pulumi.Input[builtins.bool] enable_dynamic_ip: If true a dynamic IP will be attached to the server.
545
+ :param pulumi.Input[builtins.bool] enable_ipv6: Determines if IPv6 is enabled for the server.
505
546
  Deprecated: Please use a instance.Ip with a `routed_ipv6` type.
506
- :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)
547
+ :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)
507
548
  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.
508
549
 
509
550
  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```
510
551
 
511
552
  To retrieve more information by label please use: ```scw marketplace image get label=<LABEL>```
512
- :param pulumi.Input[str] ip_id: The ID of the reserved IP that is attached to the server.
513
- :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`.
553
+ :param pulumi.Input[builtins.str] ip_id: The ID of the reserved IP that is attached to the server.
554
+ :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`.
514
555
 
515
556
  > `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.
516
- :param pulumi.Input[str] ipv6_address: The default ipv6 address routed to the server. ( Only set when enable_ipv6 is set to true )
557
+ :param pulumi.Input[builtins.str] ipv6_address: The default ipv6 address routed to the server. ( Only set when enable_ipv6 is set to true )
517
558
  Deprecated: Please use a instance.Ip with a `routed_ipv6` type.
518
- :param pulumi.Input[str] ipv6_gateway: The ipv6 gateway address. ( Only set when enable_ipv6 is set to true )
559
+ :param pulumi.Input[builtins.str] ipv6_gateway: The ipv6 gateway address. ( Only set when enable_ipv6 is set to true )
519
560
  Deprecated: Please use a instance.Ip with a `routed_ipv6` type.
520
- :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 )
561
+ :param pulumi.Input[builtins.int] ipv6_prefix_length: The prefix length of the ipv6 subnet routed to the server. ( Only set when enable_ipv6 is set to true )
521
562
  Deprecated: Please use a instance.Ip with a `routed_ipv6` type.
522
- :param pulumi.Input[str] name: The name of the server.
523
- :param pulumi.Input[str] organization_id: The organization ID the server is associated with.
524
- :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.
563
+ :param pulumi.Input[builtins.str] name: The name of the server.
564
+ :param pulumi.Input[builtins.str] organization_id: The organization ID the server is associated with.
565
+ :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.
525
566
 
526
567
 
527
568
  > **Important:** When updating `placement_group_id` the `state` must be set to `stopped`, otherwise it will fail.
528
- :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.
529
- :param pulumi.Input[str] private_ip: The Scaleway internal IP address of the server (Deprecated use ipam_ip datasource instead).
569
+ :param pulumi.Input[builtins.bool] placement_group_policy_respected: (Deprecated) Always false, use instance_placement_group ressource to known when the placement group policy is respected.
570
+ :param pulumi.Input[builtins.str] private_ip: The Scaleway internal IP address of the server (Deprecated use ipam_ip datasource instead).
530
571
  :param pulumi.Input[Sequence[pulumi.Input['ServerPrivateIpArgs']]] private_ips: The list of private IPv4 and IPv6 addresses associated with the resource.
531
572
  :param pulumi.Input[Sequence[pulumi.Input['ServerPrivateNetworkArgs']]] private_networks: The private network associated with the server.
532
573
  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.
533
- :param pulumi.Input[str] project_id: `project_id`) The ID of the project the server is associated with.
534
- :param pulumi.Input[bool] protected: Set to true to activate server protection option.
535
- :param pulumi.Input[str] public_ip: The public IP address of the server (Deprecated use `public_ips` instead).
574
+ :param pulumi.Input[builtins.str] project_id: `project_id`) The ID of the project the server is associated with.
575
+ :param pulumi.Input[builtins.bool] protected: Set to true to activate server protection option.
576
+ :param pulumi.Input[builtins.str] public_ip: The public IP address of the server (Deprecated use `public_ips` instead).
536
577
  :param pulumi.Input[Sequence[pulumi.Input['ServerPublicIpArgs']]] public_ips: The list of public IPs of the server.
537
- :param pulumi.Input[bool] replace_on_type_change: If true, the server will be replaced if `type` is changed. Otherwise, the server will migrate.
578
+ :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.
538
579
  :param pulumi.Input['ServerRootVolumeArgs'] root_volume: Root [volume](https://www.scaleway.com/en/developers/api/instance/#path-volume-types-list-volume-types) attached to the server on creation.
539
- :param pulumi.Input[str] security_group_id: The security group the server is attached to
540
- :param pulumi.Input[str] state: The state of the server. Possible values are: `started`, `stopped` or `standby`.
541
- :param pulumi.Input[Sequence[pulumi.Input[str]]] tags: The tags associated with the server.
542
- :param pulumi.Input[str] type: The commercial type of the server.
580
+ :param pulumi.Input[builtins.str] security_group_id: The security group the server is attached to
581
+ :param pulumi.Input[builtins.str] state: The state of the server. Possible values are: `started`, `stopped` or `standby`.
582
+ :param pulumi.Input[Sequence[pulumi.Input[builtins.str]]] tags: The tags associated with the server.
583
+ :param pulumi.Input[builtins.str] type: The commercial type of the server.
543
584
  You find all the available types on the [pricing page](https://www.scaleway.com/en/pricing/).
544
585
  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/).
545
586
  Use `replace_on_type_change` to trigger replacement instead of migration.
546
587
 
547
588
  > **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.
548
- :param pulumi.Input[Mapping[str, pulumi.Input[str]]] user_data: The user data associated with the server.
589
+ :param pulumi.Input[Mapping[str, pulumi.Input[builtins.str]]] user_data: The user data associated with the server.
549
590
  Use the `cloud-init` key to use [cloud-init](https://cloudinit.readthedocs.io/en/latest/) on your instance.
550
591
  You can define values using:
551
592
  - string
552
593
  - UTF-8 encoded file content using file
553
594
  - Binary files using filebase64.
554
- :param pulumi.Input[str] zone: `zone`) The zone in which the server should be created.
595
+ :param pulumi.Input[builtins.str] zone: `zone`) The zone in which the server should be created.
555
596
  """
556
597
  if additional_volume_ids is not None:
557
598
  pulumi.set(__self__, "additional_volume_ids", additional_volume_ids)
599
+ if admin_password_encryption_ssh_key_id is not None:
600
+ pulumi.set(__self__, "admin_password_encryption_ssh_key_id", admin_password_encryption_ssh_key_id)
558
601
  if boot_type is not None:
559
602
  pulumi.set(__self__, "boot_type", boot_type)
560
603
  if bootscript_id is not None:
@@ -639,7 +682,7 @@ class _ServerState:
639
682
 
640
683
  @property
641
684
  @pulumi.getter(name="additionalVolumeIds")
642
- def additional_volume_ids(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
685
+ def additional_volume_ids(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]]:
643
686
  """
644
687
  The [additional volumes](https://www.scaleway.com/en/developers/api/instance/#path-volume-types-list-volume-types)
645
688
  attached to the server. Updates to this field will trigger a stop/start of the server.
@@ -651,62 +694,76 @@ class _ServerState:
651
694
  return pulumi.get(self, "additional_volume_ids")
652
695
 
653
696
  @additional_volume_ids.setter
654
- def additional_volume_ids(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
697
+ def additional_volume_ids(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]]):
655
698
  pulumi.set(self, "additional_volume_ids", value)
656
699
 
700
+ @property
701
+ @pulumi.getter(name="adminPasswordEncryptionSshKeyId")
702
+ def admin_password_encryption_ssh_key_id(self) -> Optional[pulumi.Input[builtins.str]]:
703
+ """
704
+ The ID of the SSH RSA key that will be used to encrypt the initial admin password for OS requiring it.
705
+ Mandatory for Windows OS. The public_key value of this key is used to encrypt the admin password.
706
+ 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.
707
+ """
708
+ return pulumi.get(self, "admin_password_encryption_ssh_key_id")
709
+
710
+ @admin_password_encryption_ssh_key_id.setter
711
+ def admin_password_encryption_ssh_key_id(self, value: Optional[pulumi.Input[builtins.str]]):
712
+ pulumi.set(self, "admin_password_encryption_ssh_key_id", value)
713
+
657
714
  @property
658
715
  @pulumi.getter(name="bootType")
659
- def boot_type(self) -> Optional[pulumi.Input[str]]:
716
+ def boot_type(self) -> Optional[pulumi.Input[builtins.str]]:
660
717
  """
661
718
  The boot Type of the server. Possible values are: `local`, `bootscript` or `rescue`.
662
719
  """
663
720
  return pulumi.get(self, "boot_type")
664
721
 
665
722
  @boot_type.setter
666
- def boot_type(self, value: Optional[pulumi.Input[str]]):
723
+ def boot_type(self, value: Optional[pulumi.Input[builtins.str]]):
667
724
  pulumi.set(self, "boot_type", value)
668
725
 
669
726
  @property
670
727
  @pulumi.getter(name="bootscriptId")
671
728
  @_utilities.deprecated("""bootscript is not supported anymore.""")
672
- def bootscript_id(self) -> Optional[pulumi.Input[str]]:
729
+ def bootscript_id(self) -> Optional[pulumi.Input[builtins.str]]:
673
730
  """
674
731
  ID of the target bootscript (set boot_type to bootscript)
675
732
  """
676
733
  return pulumi.get(self, "bootscript_id")
677
734
 
678
735
  @bootscript_id.setter
679
- def bootscript_id(self, value: Optional[pulumi.Input[str]]):
736
+ def bootscript_id(self, value: Optional[pulumi.Input[builtins.str]]):
680
737
  pulumi.set(self, "bootscript_id", value)
681
738
 
682
739
  @property
683
740
  @pulumi.getter(name="cloudInit")
684
- def cloud_init(self) -> Optional[pulumi.Input[str]]:
741
+ def cloud_init(self) -> Optional[pulumi.Input[builtins.str]]:
685
742
  """
686
743
  The cloud init script associated with this server
687
744
  """
688
745
  return pulumi.get(self, "cloud_init")
689
746
 
690
747
  @cloud_init.setter
691
- def cloud_init(self, value: Optional[pulumi.Input[str]]):
748
+ def cloud_init(self, value: Optional[pulumi.Input[builtins.str]]):
692
749
  pulumi.set(self, "cloud_init", value)
693
750
 
694
751
  @property
695
752
  @pulumi.getter(name="enableDynamicIp")
696
- def enable_dynamic_ip(self) -> Optional[pulumi.Input[bool]]:
753
+ def enable_dynamic_ip(self) -> Optional[pulumi.Input[builtins.bool]]:
697
754
  """
698
755
  If true a dynamic IP will be attached to the server.
699
756
  """
700
757
  return pulumi.get(self, "enable_dynamic_ip")
701
758
 
702
759
  @enable_dynamic_ip.setter
703
- def enable_dynamic_ip(self, value: Optional[pulumi.Input[bool]]):
760
+ def enable_dynamic_ip(self, value: Optional[pulumi.Input[builtins.bool]]):
704
761
  pulumi.set(self, "enable_dynamic_ip", value)
705
762
 
706
763
  @property
707
764
  @pulumi.getter(name="enableIpv6")
708
765
  @_utilities.deprecated("""Please use a instance.Ip with a `routed_ipv6` type""")
709
- def enable_ipv6(self) -> Optional[pulumi.Input[bool]]:
766
+ def enable_ipv6(self) -> Optional[pulumi.Input[builtins.bool]]:
710
767
  """
711
768
  Determines if IPv6 is enabled for the server.
712
769
  Deprecated: Please use a instance.Ip with a `routed_ipv6` type.
@@ -714,12 +771,12 @@ class _ServerState:
714
771
  return pulumi.get(self, "enable_ipv6")
715
772
 
716
773
  @enable_ipv6.setter
717
- def enable_ipv6(self, value: Optional[pulumi.Input[bool]]):
774
+ def enable_ipv6(self, value: Optional[pulumi.Input[builtins.bool]]):
718
775
  pulumi.set(self, "enable_ipv6", value)
719
776
 
720
777
  @property
721
778
  @pulumi.getter
722
- def image(self) -> Optional[pulumi.Input[str]]:
779
+ def image(self) -> Optional[pulumi.Input[builtins.str]]:
723
780
  """
724
781
  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)
725
782
  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.
@@ -731,24 +788,24 @@ class _ServerState:
731
788
  return pulumi.get(self, "image")
732
789
 
733
790
  @image.setter
734
- def image(self, value: Optional[pulumi.Input[str]]):
791
+ def image(self, value: Optional[pulumi.Input[builtins.str]]):
735
792
  pulumi.set(self, "image", value)
736
793
 
737
794
  @property
738
795
  @pulumi.getter(name="ipId")
739
- def ip_id(self) -> Optional[pulumi.Input[str]]:
796
+ def ip_id(self) -> Optional[pulumi.Input[builtins.str]]:
740
797
  """
741
798
  The ID of the reserved IP that is attached to the server.
742
799
  """
743
800
  return pulumi.get(self, "ip_id")
744
801
 
745
802
  @ip_id.setter
746
- def ip_id(self, value: Optional[pulumi.Input[str]]):
803
+ def ip_id(self, value: Optional[pulumi.Input[builtins.str]]):
747
804
  pulumi.set(self, "ip_id", value)
748
805
 
749
806
  @property
750
807
  @pulumi.getter(name="ipIds")
751
- def ip_ids(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
808
+ def ip_ids(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]]:
752
809
  """
753
810
  List of ID of reserved IPs that are attached to the server. Cannot be used with `ip_id`.
754
811
 
@@ -757,13 +814,13 @@ class _ServerState:
757
814
  return pulumi.get(self, "ip_ids")
758
815
 
759
816
  @ip_ids.setter
760
- def ip_ids(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
817
+ def ip_ids(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]]):
761
818
  pulumi.set(self, "ip_ids", value)
762
819
 
763
820
  @property
764
821
  @pulumi.getter(name="ipv6Address")
765
822
  @_utilities.deprecated("""Please use a instance.Ip with a `routed_ipv6` type""")
766
- def ipv6_address(self) -> Optional[pulumi.Input[str]]:
823
+ def ipv6_address(self) -> Optional[pulumi.Input[builtins.str]]:
767
824
  """
768
825
  The default ipv6 address routed to the server. ( Only set when enable_ipv6 is set to true )
769
826
  Deprecated: Please use a instance.Ip with a `routed_ipv6` type.
@@ -771,13 +828,13 @@ class _ServerState:
771
828
  return pulumi.get(self, "ipv6_address")
772
829
 
773
830
  @ipv6_address.setter
774
- def ipv6_address(self, value: Optional[pulumi.Input[str]]):
831
+ def ipv6_address(self, value: Optional[pulumi.Input[builtins.str]]):
775
832
  pulumi.set(self, "ipv6_address", value)
776
833
 
777
834
  @property
778
835
  @pulumi.getter(name="ipv6Gateway")
779
836
  @_utilities.deprecated("""Please use a instance.Ip with a `routed_ipv6` type""")
780
- def ipv6_gateway(self) -> Optional[pulumi.Input[str]]:
837
+ def ipv6_gateway(self) -> Optional[pulumi.Input[builtins.str]]:
781
838
  """
782
839
  The ipv6 gateway address. ( Only set when enable_ipv6 is set to true )
783
840
  Deprecated: Please use a instance.Ip with a `routed_ipv6` type.
@@ -785,13 +842,13 @@ class _ServerState:
785
842
  return pulumi.get(self, "ipv6_gateway")
786
843
 
787
844
  @ipv6_gateway.setter
788
- def ipv6_gateway(self, value: Optional[pulumi.Input[str]]):
845
+ def ipv6_gateway(self, value: Optional[pulumi.Input[builtins.str]]):
789
846
  pulumi.set(self, "ipv6_gateway", value)
790
847
 
791
848
  @property
792
849
  @pulumi.getter(name="ipv6PrefixLength")
793
850
  @_utilities.deprecated("""Please use a instance.Ip with a `routed_ipv6` type""")
794
- def ipv6_prefix_length(self) -> Optional[pulumi.Input[int]]:
851
+ def ipv6_prefix_length(self) -> Optional[pulumi.Input[builtins.int]]:
795
852
  """
796
853
  The prefix length of the ipv6 subnet routed to the server. ( Only set when enable_ipv6 is set to true )
797
854
  Deprecated: Please use a instance.Ip with a `routed_ipv6` type.
@@ -799,36 +856,36 @@ class _ServerState:
799
856
  return pulumi.get(self, "ipv6_prefix_length")
800
857
 
801
858
  @ipv6_prefix_length.setter
802
- def ipv6_prefix_length(self, value: Optional[pulumi.Input[int]]):
859
+ def ipv6_prefix_length(self, value: Optional[pulumi.Input[builtins.int]]):
803
860
  pulumi.set(self, "ipv6_prefix_length", value)
804
861
 
805
862
  @property
806
863
  @pulumi.getter
807
- def name(self) -> Optional[pulumi.Input[str]]:
864
+ def name(self) -> Optional[pulumi.Input[builtins.str]]:
808
865
  """
809
866
  The name of the server.
810
867
  """
811
868
  return pulumi.get(self, "name")
812
869
 
813
870
  @name.setter
814
- def name(self, value: Optional[pulumi.Input[str]]):
871
+ def name(self, value: Optional[pulumi.Input[builtins.str]]):
815
872
  pulumi.set(self, "name", value)
816
873
 
817
874
  @property
818
875
  @pulumi.getter(name="organizationId")
819
- def organization_id(self) -> Optional[pulumi.Input[str]]:
876
+ def organization_id(self) -> Optional[pulumi.Input[builtins.str]]:
820
877
  """
821
878
  The organization ID the server is associated with.
822
879
  """
823
880
  return pulumi.get(self, "organization_id")
824
881
 
825
882
  @organization_id.setter
826
- def organization_id(self, value: Optional[pulumi.Input[str]]):
883
+ def organization_id(self, value: Optional[pulumi.Input[builtins.str]]):
827
884
  pulumi.set(self, "organization_id", value)
828
885
 
829
886
  @property
830
887
  @pulumi.getter(name="placementGroupId")
831
- def placement_group_id(self) -> Optional[pulumi.Input[str]]:
888
+ def placement_group_id(self) -> Optional[pulumi.Input[builtins.str]]:
832
889
  """
833
890
  The [placement group](https://www.scaleway.com/en/developers/api/instance/#path-security-groups-update-a-security-group the server is attached to.
834
891
 
@@ -838,32 +895,32 @@ class _ServerState:
838
895
  return pulumi.get(self, "placement_group_id")
839
896
 
840
897
  @placement_group_id.setter
841
- def placement_group_id(self, value: Optional[pulumi.Input[str]]):
898
+ def placement_group_id(self, value: Optional[pulumi.Input[builtins.str]]):
842
899
  pulumi.set(self, "placement_group_id", value)
843
900
 
844
901
  @property
845
902
  @pulumi.getter(name="placementGroupPolicyRespected")
846
- def placement_group_policy_respected(self) -> Optional[pulumi.Input[bool]]:
903
+ def placement_group_policy_respected(self) -> Optional[pulumi.Input[builtins.bool]]:
847
904
  """
848
905
  (Deprecated) Always false, use instance_placement_group ressource to known when the placement group policy is respected.
849
906
  """
850
907
  return pulumi.get(self, "placement_group_policy_respected")
851
908
 
852
909
  @placement_group_policy_respected.setter
853
- def placement_group_policy_respected(self, value: Optional[pulumi.Input[bool]]):
910
+ def placement_group_policy_respected(self, value: Optional[pulumi.Input[builtins.bool]]):
854
911
  pulumi.set(self, "placement_group_policy_respected", value)
855
912
 
856
913
  @property
857
914
  @pulumi.getter(name="privateIp")
858
915
  @_utilities.deprecated("""Use ipam_ip datasource instead to fetch your server's IP in your private network.""")
859
- def private_ip(self) -> Optional[pulumi.Input[str]]:
916
+ def private_ip(self) -> Optional[pulumi.Input[builtins.str]]:
860
917
  """
861
918
  The Scaleway internal IP address of the server (Deprecated use ipam_ip datasource instead).
862
919
  """
863
920
  return pulumi.get(self, "private_ip")
864
921
 
865
922
  @private_ip.setter
866
- def private_ip(self, value: Optional[pulumi.Input[str]]):
923
+ def private_ip(self, value: Optional[pulumi.Input[builtins.str]]):
867
924
  pulumi.set(self, "private_ip", value)
868
925
 
869
926
  @property
@@ -893,39 +950,39 @@ class _ServerState:
893
950
 
894
951
  @property
895
952
  @pulumi.getter(name="projectId")
896
- def project_id(self) -> Optional[pulumi.Input[str]]:
953
+ def project_id(self) -> Optional[pulumi.Input[builtins.str]]:
897
954
  """
898
955
  `project_id`) The ID of the project the server is associated with.
899
956
  """
900
957
  return pulumi.get(self, "project_id")
901
958
 
902
959
  @project_id.setter
903
- def project_id(self, value: Optional[pulumi.Input[str]]):
960
+ def project_id(self, value: Optional[pulumi.Input[builtins.str]]):
904
961
  pulumi.set(self, "project_id", value)
905
962
 
906
963
  @property
907
964
  @pulumi.getter
908
- def protected(self) -> Optional[pulumi.Input[bool]]:
965
+ def protected(self) -> Optional[pulumi.Input[builtins.bool]]:
909
966
  """
910
967
  Set to true to activate server protection option.
911
968
  """
912
969
  return pulumi.get(self, "protected")
913
970
 
914
971
  @protected.setter
915
- def protected(self, value: Optional[pulumi.Input[bool]]):
972
+ def protected(self, value: Optional[pulumi.Input[builtins.bool]]):
916
973
  pulumi.set(self, "protected", value)
917
974
 
918
975
  @property
919
976
  @pulumi.getter(name="publicIp")
920
977
  @_utilities.deprecated("""Use public_ips instead""")
921
- def public_ip(self) -> Optional[pulumi.Input[str]]:
978
+ def public_ip(self) -> Optional[pulumi.Input[builtins.str]]:
922
979
  """
923
980
  The public IP address of the server (Deprecated use `public_ips` instead).
924
981
  """
925
982
  return pulumi.get(self, "public_ip")
926
983
 
927
984
  @public_ip.setter
928
- def public_ip(self, value: Optional[pulumi.Input[str]]):
985
+ def public_ip(self, value: Optional[pulumi.Input[builtins.str]]):
929
986
  pulumi.set(self, "public_ip", value)
930
987
 
931
988
  @property
@@ -942,14 +999,14 @@ class _ServerState:
942
999
 
943
1000
  @property
944
1001
  @pulumi.getter(name="replaceOnTypeChange")
945
- def replace_on_type_change(self) -> Optional[pulumi.Input[bool]]:
1002
+ def replace_on_type_change(self) -> Optional[pulumi.Input[builtins.bool]]:
946
1003
  """
947
1004
  If true, the server will be replaced if `type` is changed. Otherwise, the server will migrate.
948
1005
  """
949
1006
  return pulumi.get(self, "replace_on_type_change")
950
1007
 
951
1008
  @replace_on_type_change.setter
952
- def replace_on_type_change(self, value: Optional[pulumi.Input[bool]]):
1009
+ def replace_on_type_change(self, value: Optional[pulumi.Input[builtins.bool]]):
953
1010
  pulumi.set(self, "replace_on_type_change", value)
954
1011
 
955
1012
  @property
@@ -966,43 +1023,43 @@ class _ServerState:
966
1023
 
967
1024
  @property
968
1025
  @pulumi.getter(name="securityGroupId")
969
- def security_group_id(self) -> Optional[pulumi.Input[str]]:
1026
+ def security_group_id(self) -> Optional[pulumi.Input[builtins.str]]:
970
1027
  """
971
1028
  The security group the server is attached to
972
1029
  """
973
1030
  return pulumi.get(self, "security_group_id")
974
1031
 
975
1032
  @security_group_id.setter
976
- def security_group_id(self, value: Optional[pulumi.Input[str]]):
1033
+ def security_group_id(self, value: Optional[pulumi.Input[builtins.str]]):
977
1034
  pulumi.set(self, "security_group_id", value)
978
1035
 
979
1036
  @property
980
1037
  @pulumi.getter
981
- def state(self) -> Optional[pulumi.Input[str]]:
1038
+ def state(self) -> Optional[pulumi.Input[builtins.str]]:
982
1039
  """
983
1040
  The state of the server. Possible values are: `started`, `stopped` or `standby`.
984
1041
  """
985
1042
  return pulumi.get(self, "state")
986
1043
 
987
1044
  @state.setter
988
- def state(self, value: Optional[pulumi.Input[str]]):
1045
+ def state(self, value: Optional[pulumi.Input[builtins.str]]):
989
1046
  pulumi.set(self, "state", value)
990
1047
 
991
1048
  @property
992
1049
  @pulumi.getter
993
- def tags(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
1050
+ def tags(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]]:
994
1051
  """
995
1052
  The tags associated with the server.
996
1053
  """
997
1054
  return pulumi.get(self, "tags")
998
1055
 
999
1056
  @tags.setter
1000
- def tags(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
1057
+ def tags(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]]):
1001
1058
  pulumi.set(self, "tags", value)
1002
1059
 
1003
1060
  @property
1004
1061
  @pulumi.getter
1005
- def type(self) -> Optional[pulumi.Input[str]]:
1062
+ def type(self) -> Optional[pulumi.Input[builtins.str]]:
1006
1063
  """
1007
1064
  The commercial type of the server.
1008
1065
  You find all the available types on the [pricing page](https://www.scaleway.com/en/pricing/).
@@ -1014,12 +1071,12 @@ class _ServerState:
1014
1071
  return pulumi.get(self, "type")
1015
1072
 
1016
1073
  @type.setter
1017
- def type(self, value: Optional[pulumi.Input[str]]):
1074
+ def type(self, value: Optional[pulumi.Input[builtins.str]]):
1018
1075
  pulumi.set(self, "type", value)
1019
1076
 
1020
1077
  @property
1021
1078
  @pulumi.getter(name="userData")
1022
- def user_data(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]:
1079
+ def user_data(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[builtins.str]]]]:
1023
1080
  """
1024
1081
  The user data associated with the server.
1025
1082
  Use the `cloud-init` key to use [cloud-init](https://cloudinit.readthedocs.io/en/latest/) on your instance.
@@ -1031,50 +1088,53 @@ class _ServerState:
1031
1088
  return pulumi.get(self, "user_data")
1032
1089
 
1033
1090
  @user_data.setter
1034
- def user_data(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]):
1091
+ def user_data(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[builtins.str]]]]):
1035
1092
  pulumi.set(self, "user_data", value)
1036
1093
 
1037
1094
  @property
1038
1095
  @pulumi.getter
1039
- def zone(self) -> Optional[pulumi.Input[str]]:
1096
+ def zone(self) -> Optional[pulumi.Input[builtins.str]]:
1040
1097
  """
1041
1098
  `zone`) The zone in which the server should be created.
1042
1099
  """
1043
1100
  return pulumi.get(self, "zone")
1044
1101
 
1045
1102
  @zone.setter
1046
- def zone(self, value: Optional[pulumi.Input[str]]):
1103
+ def zone(self, value: Optional[pulumi.Input[builtins.str]]):
1047
1104
  pulumi.set(self, "zone", value)
1048
1105
 
1049
1106
 
1107
+ @pulumi.type_token("scaleway:instance/server:Server")
1050
1108
  class Server(pulumi.CustomResource):
1051
1109
  @overload
1052
1110
  def __init__(__self__,
1053
1111
  resource_name: str,
1054
1112
  opts: Optional[pulumi.ResourceOptions] = None,
1055
- additional_volume_ids: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
1056
- boot_type: Optional[pulumi.Input[str]] = None,
1057
- bootscript_id: Optional[pulumi.Input[str]] = None,
1058
- cloud_init: Optional[pulumi.Input[str]] = None,
1059
- enable_dynamic_ip: Optional[pulumi.Input[bool]] = None,
1060
- enable_ipv6: Optional[pulumi.Input[bool]] = None,
1061
- image: Optional[pulumi.Input[str]] = None,
1062
- ip_id: Optional[pulumi.Input[str]] = None,
1063
- ip_ids: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
1064
- name: Optional[pulumi.Input[str]] = None,
1065
- placement_group_id: Optional[pulumi.Input[str]] = None,
1113
+ additional_volume_ids: Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]] = None,
1114
+ admin_password_encryption_ssh_key_id: Optional[pulumi.Input[builtins.str]] = None,
1115
+ boot_type: Optional[pulumi.Input[builtins.str]] = None,
1116
+ bootscript_id: Optional[pulumi.Input[builtins.str]] = None,
1117
+ cloud_init: Optional[pulumi.Input[builtins.str]] = None,
1118
+ enable_dynamic_ip: Optional[pulumi.Input[builtins.bool]] = None,
1119
+ enable_ipv6: Optional[pulumi.Input[builtins.bool]] = None,
1120
+ image: Optional[pulumi.Input[builtins.str]] = None,
1121
+ ip_id: Optional[pulumi.Input[builtins.str]] = None,
1122
+ ip_ids: Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]] = None,
1123
+ name: Optional[pulumi.Input[builtins.str]] = None,
1124
+ placement_group_id: Optional[pulumi.Input[builtins.str]] = None,
1125
+ private_ips: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ServerPrivateIpArgs', 'ServerPrivateIpArgsDict']]]]] = None,
1066
1126
  private_networks: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ServerPrivateNetworkArgs', 'ServerPrivateNetworkArgsDict']]]]] = None,
1067
- project_id: Optional[pulumi.Input[str]] = None,
1068
- protected: Optional[pulumi.Input[bool]] = None,
1127
+ project_id: Optional[pulumi.Input[builtins.str]] = None,
1128
+ protected: Optional[pulumi.Input[builtins.bool]] = None,
1069
1129
  public_ips: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ServerPublicIpArgs', 'ServerPublicIpArgsDict']]]]] = None,
1070
- replace_on_type_change: Optional[pulumi.Input[bool]] = None,
1130
+ replace_on_type_change: Optional[pulumi.Input[builtins.bool]] = None,
1071
1131
  root_volume: Optional[pulumi.Input[Union['ServerRootVolumeArgs', 'ServerRootVolumeArgsDict']]] = None,
1072
- security_group_id: Optional[pulumi.Input[str]] = None,
1073
- state: Optional[pulumi.Input[str]] = None,
1074
- tags: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
1075
- type: Optional[pulumi.Input[str]] = None,
1076
- user_data: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
1077
- zone: Optional[pulumi.Input[str]] = None,
1132
+ security_group_id: Optional[pulumi.Input[builtins.str]] = None,
1133
+ state: Optional[pulumi.Input[builtins.str]] = None,
1134
+ tags: Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]] = None,
1135
+ type: Optional[pulumi.Input[builtins.str]] = None,
1136
+ user_data: Optional[pulumi.Input[Mapping[str, pulumi.Input[builtins.str]]]] = None,
1137
+ zone: Optional[pulumi.Input[builtins.str]] = None,
1078
1138
  __props__=None):
1079
1139
  """
1080
1140
  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).
@@ -1259,56 +1319,60 @@ class Server(pulumi.CustomResource):
1259
1319
 
1260
1320
  :param str resource_name: The name of the resource.
1261
1321
  :param pulumi.ResourceOptions opts: Options for the resource.
1262
- :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)
1322
+ :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)
1263
1323
  attached to the server. Updates to this field will trigger a stop/start of the server.
1264
1324
 
1265
1325
  > **Important:** If this field contains local volumes, the `state` must be set to `stopped`, otherwise it will fail.
1266
1326
 
1267
1327
  > **Important:** If this field contains local volumes, you have to first detach them, in one apply, and then delete the volume in another apply.
1268
- :param pulumi.Input[str] boot_type: The boot Type of the server. Possible values are: `local`, `bootscript` or `rescue`.
1269
- :param pulumi.Input[str] bootscript_id: ID of the target bootscript (set boot_type to bootscript)
1270
- :param pulumi.Input[str] cloud_init: The cloud init script associated with this server
1271
- :param pulumi.Input[bool] enable_dynamic_ip: If true a dynamic IP will be attached to the server.
1272
- :param pulumi.Input[bool] enable_ipv6: Determines if IPv6 is enabled for the server.
1328
+ :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.
1329
+ Mandatory for Windows OS. The public_key value of this key is used to encrypt the admin password.
1330
+ 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.
1331
+ :param pulumi.Input[builtins.str] boot_type: The boot Type of the server. Possible values are: `local`, `bootscript` or `rescue`.
1332
+ :param pulumi.Input[builtins.str] bootscript_id: ID of the target bootscript (set boot_type to bootscript)
1333
+ :param pulumi.Input[builtins.str] cloud_init: The cloud init script associated with this server
1334
+ :param pulumi.Input[builtins.bool] enable_dynamic_ip: If true a dynamic IP will be attached to the server.
1335
+ :param pulumi.Input[builtins.bool] enable_ipv6: Determines if IPv6 is enabled for the server.
1273
1336
  Deprecated: Please use a instance.Ip with a `routed_ipv6` type.
1274
- :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)
1337
+ :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)
1275
1338
  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.
1276
1339
 
1277
1340
  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```
1278
1341
 
1279
1342
  To retrieve more information by label please use: ```scw marketplace image get label=<LABEL>```
1280
- :param pulumi.Input[str] ip_id: The ID of the reserved IP that is attached to the server.
1281
- :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`.
1343
+ :param pulumi.Input[builtins.str] ip_id: The ID of the reserved IP that is attached to the server.
1344
+ :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`.
1282
1345
 
1283
1346
  > `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.
1284
- :param pulumi.Input[str] name: The name of the server.
1285
- :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.
1347
+ :param pulumi.Input[builtins.str] name: The name of the server.
1348
+ :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.
1286
1349
 
1287
1350
 
1288
1351
  > **Important:** When updating `placement_group_id` the `state` must be set to `stopped`, otherwise it will fail.
1352
+ :param pulumi.Input[Sequence[pulumi.Input[Union['ServerPrivateIpArgs', 'ServerPrivateIpArgsDict']]]] private_ips: The list of private IPv4 and IPv6 addresses associated with the resource.
1289
1353
  :param pulumi.Input[Sequence[pulumi.Input[Union['ServerPrivateNetworkArgs', 'ServerPrivateNetworkArgsDict']]]] private_networks: The private network associated with the server.
1290
1354
  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.
1291
- :param pulumi.Input[str] project_id: `project_id`) The ID of the project the server is associated with.
1292
- :param pulumi.Input[bool] protected: Set to true to activate server protection option.
1355
+ :param pulumi.Input[builtins.str] project_id: `project_id`) The ID of the project the server is associated with.
1356
+ :param pulumi.Input[builtins.bool] protected: Set to true to activate server protection option.
1293
1357
  :param pulumi.Input[Sequence[pulumi.Input[Union['ServerPublicIpArgs', 'ServerPublicIpArgsDict']]]] public_ips: The list of public IPs of the server.
1294
- :param pulumi.Input[bool] replace_on_type_change: If true, the server will be replaced if `type` is changed. Otherwise, the server will migrate.
1358
+ :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.
1295
1359
  :param pulumi.Input[Union['ServerRootVolumeArgs', 'ServerRootVolumeArgsDict']] root_volume: Root [volume](https://www.scaleway.com/en/developers/api/instance/#path-volume-types-list-volume-types) attached to the server on creation.
1296
- :param pulumi.Input[str] security_group_id: The security group the server is attached to
1297
- :param pulumi.Input[str] state: The state of the server. Possible values are: `started`, `stopped` or `standby`.
1298
- :param pulumi.Input[Sequence[pulumi.Input[str]]] tags: The tags associated with the server.
1299
- :param pulumi.Input[str] type: The commercial type of the server.
1360
+ :param pulumi.Input[builtins.str] security_group_id: The security group the server is attached to
1361
+ :param pulumi.Input[builtins.str] state: The state of the server. Possible values are: `started`, `stopped` or `standby`.
1362
+ :param pulumi.Input[Sequence[pulumi.Input[builtins.str]]] tags: The tags associated with the server.
1363
+ :param pulumi.Input[builtins.str] type: The commercial type of the server.
1300
1364
  You find all the available types on the [pricing page](https://www.scaleway.com/en/pricing/).
1301
1365
  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/).
1302
1366
  Use `replace_on_type_change` to trigger replacement instead of migration.
1303
1367
 
1304
1368
  > **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.
1305
- :param pulumi.Input[Mapping[str, pulumi.Input[str]]] user_data: The user data associated with the server.
1369
+ :param pulumi.Input[Mapping[str, pulumi.Input[builtins.str]]] user_data: The user data associated with the server.
1306
1370
  Use the `cloud-init` key to use [cloud-init](https://cloudinit.readthedocs.io/en/latest/) on your instance.
1307
1371
  You can define values using:
1308
1372
  - string
1309
1373
  - UTF-8 encoded file content using file
1310
1374
  - Binary files using filebase64.
1311
- :param pulumi.Input[str] zone: `zone`) The zone in which the server should be created.
1375
+ :param pulumi.Input[builtins.str] zone: `zone`) The zone in which the server should be created.
1312
1376
  """
1313
1377
  ...
1314
1378
  @overload
@@ -1512,29 +1576,31 @@ class Server(pulumi.CustomResource):
1512
1576
  def _internal_init(__self__,
1513
1577
  resource_name: str,
1514
1578
  opts: Optional[pulumi.ResourceOptions] = None,
1515
- additional_volume_ids: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
1516
- boot_type: Optional[pulumi.Input[str]] = None,
1517
- bootscript_id: Optional[pulumi.Input[str]] = None,
1518
- cloud_init: Optional[pulumi.Input[str]] = None,
1519
- enable_dynamic_ip: Optional[pulumi.Input[bool]] = None,
1520
- enable_ipv6: Optional[pulumi.Input[bool]] = None,
1521
- image: Optional[pulumi.Input[str]] = None,
1522
- ip_id: Optional[pulumi.Input[str]] = None,
1523
- ip_ids: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
1524
- name: Optional[pulumi.Input[str]] = None,
1525
- placement_group_id: Optional[pulumi.Input[str]] = None,
1579
+ additional_volume_ids: Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]] = None,
1580
+ admin_password_encryption_ssh_key_id: Optional[pulumi.Input[builtins.str]] = None,
1581
+ boot_type: Optional[pulumi.Input[builtins.str]] = None,
1582
+ bootscript_id: Optional[pulumi.Input[builtins.str]] = None,
1583
+ cloud_init: Optional[pulumi.Input[builtins.str]] = None,
1584
+ enable_dynamic_ip: Optional[pulumi.Input[builtins.bool]] = None,
1585
+ enable_ipv6: Optional[pulumi.Input[builtins.bool]] = None,
1586
+ image: Optional[pulumi.Input[builtins.str]] = None,
1587
+ ip_id: Optional[pulumi.Input[builtins.str]] = None,
1588
+ ip_ids: Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]] = None,
1589
+ name: Optional[pulumi.Input[builtins.str]] = None,
1590
+ placement_group_id: Optional[pulumi.Input[builtins.str]] = None,
1591
+ private_ips: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ServerPrivateIpArgs', 'ServerPrivateIpArgsDict']]]]] = None,
1526
1592
  private_networks: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ServerPrivateNetworkArgs', 'ServerPrivateNetworkArgsDict']]]]] = None,
1527
- project_id: Optional[pulumi.Input[str]] = None,
1528
- protected: Optional[pulumi.Input[bool]] = None,
1593
+ project_id: Optional[pulumi.Input[builtins.str]] = None,
1594
+ protected: Optional[pulumi.Input[builtins.bool]] = None,
1529
1595
  public_ips: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ServerPublicIpArgs', 'ServerPublicIpArgsDict']]]]] = None,
1530
- replace_on_type_change: Optional[pulumi.Input[bool]] = None,
1596
+ replace_on_type_change: Optional[pulumi.Input[builtins.bool]] = None,
1531
1597
  root_volume: Optional[pulumi.Input[Union['ServerRootVolumeArgs', 'ServerRootVolumeArgsDict']]] = None,
1532
- security_group_id: Optional[pulumi.Input[str]] = None,
1533
- state: Optional[pulumi.Input[str]] = None,
1534
- tags: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
1535
- type: Optional[pulumi.Input[str]] = None,
1536
- user_data: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
1537
- zone: Optional[pulumi.Input[str]] = None,
1598
+ security_group_id: Optional[pulumi.Input[builtins.str]] = None,
1599
+ state: Optional[pulumi.Input[builtins.str]] = None,
1600
+ tags: Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]] = None,
1601
+ type: Optional[pulumi.Input[builtins.str]] = None,
1602
+ user_data: Optional[pulumi.Input[Mapping[str, pulumi.Input[builtins.str]]]] = None,
1603
+ zone: Optional[pulumi.Input[builtins.str]] = None,
1538
1604
  __props__=None):
1539
1605
  opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts)
1540
1606
  if not isinstance(opts, pulumi.ResourceOptions):
@@ -1545,6 +1611,7 @@ class Server(pulumi.CustomResource):
1545
1611
  __props__ = ServerArgs.__new__(ServerArgs)
1546
1612
 
1547
1613
  __props__.__dict__["additional_volume_ids"] = additional_volume_ids
1614
+ __props__.__dict__["admin_password_encryption_ssh_key_id"] = admin_password_encryption_ssh_key_id
1548
1615
  __props__.__dict__["boot_type"] = boot_type
1549
1616
  __props__.__dict__["bootscript_id"] = bootscript_id
1550
1617
  __props__.__dict__["cloud_init"] = cloud_init
@@ -1555,6 +1622,7 @@ class Server(pulumi.CustomResource):
1555
1622
  __props__.__dict__["ip_ids"] = ip_ids
1556
1623
  __props__.__dict__["name"] = name
1557
1624
  __props__.__dict__["placement_group_id"] = placement_group_id
1625
+ __props__.__dict__["private_ips"] = private_ips
1558
1626
  __props__.__dict__["private_networks"] = private_networks
1559
1627
  __props__.__dict__["project_id"] = project_id
1560
1628
  __props__.__dict__["protected"] = protected
@@ -1575,7 +1643,6 @@ class Server(pulumi.CustomResource):
1575
1643
  __props__.__dict__["organization_id"] = None
1576
1644
  __props__.__dict__["placement_group_policy_respected"] = None
1577
1645
  __props__.__dict__["private_ip"] = None
1578
- __props__.__dict__["private_ips"] = None
1579
1646
  __props__.__dict__["public_ip"] = None
1580
1647
  alias_opts = pulumi.ResourceOptions(aliases=[pulumi.Alias(type_="scaleway:index/instanceServer:InstanceServer")])
1581
1648
  opts = pulumi.ResourceOptions.merge(opts, alias_opts)
@@ -1589,37 +1656,38 @@ class Server(pulumi.CustomResource):
1589
1656
  def get(resource_name: str,
1590
1657
  id: pulumi.Input[str],
1591
1658
  opts: Optional[pulumi.ResourceOptions] = None,
1592
- additional_volume_ids: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
1593
- boot_type: Optional[pulumi.Input[str]] = None,
1594
- bootscript_id: Optional[pulumi.Input[str]] = None,
1595
- cloud_init: Optional[pulumi.Input[str]] = None,
1596
- enable_dynamic_ip: Optional[pulumi.Input[bool]] = None,
1597
- enable_ipv6: Optional[pulumi.Input[bool]] = None,
1598
- image: Optional[pulumi.Input[str]] = None,
1599
- ip_id: Optional[pulumi.Input[str]] = None,
1600
- ip_ids: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
1601
- ipv6_address: Optional[pulumi.Input[str]] = None,
1602
- ipv6_gateway: Optional[pulumi.Input[str]] = None,
1603
- ipv6_prefix_length: Optional[pulumi.Input[int]] = None,
1604
- name: Optional[pulumi.Input[str]] = None,
1605
- organization_id: Optional[pulumi.Input[str]] = None,
1606
- placement_group_id: Optional[pulumi.Input[str]] = None,
1607
- placement_group_policy_respected: Optional[pulumi.Input[bool]] = None,
1608
- private_ip: Optional[pulumi.Input[str]] = None,
1659
+ additional_volume_ids: Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]] = None,
1660
+ admin_password_encryption_ssh_key_id: Optional[pulumi.Input[builtins.str]] = None,
1661
+ boot_type: Optional[pulumi.Input[builtins.str]] = None,
1662
+ bootscript_id: Optional[pulumi.Input[builtins.str]] = None,
1663
+ cloud_init: Optional[pulumi.Input[builtins.str]] = None,
1664
+ enable_dynamic_ip: Optional[pulumi.Input[builtins.bool]] = None,
1665
+ enable_ipv6: Optional[pulumi.Input[builtins.bool]] = None,
1666
+ image: Optional[pulumi.Input[builtins.str]] = None,
1667
+ ip_id: Optional[pulumi.Input[builtins.str]] = None,
1668
+ ip_ids: Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]] = None,
1669
+ ipv6_address: Optional[pulumi.Input[builtins.str]] = None,
1670
+ ipv6_gateway: Optional[pulumi.Input[builtins.str]] = None,
1671
+ ipv6_prefix_length: Optional[pulumi.Input[builtins.int]] = None,
1672
+ name: Optional[pulumi.Input[builtins.str]] = None,
1673
+ organization_id: Optional[pulumi.Input[builtins.str]] = None,
1674
+ placement_group_id: Optional[pulumi.Input[builtins.str]] = None,
1675
+ placement_group_policy_respected: Optional[pulumi.Input[builtins.bool]] = None,
1676
+ private_ip: Optional[pulumi.Input[builtins.str]] = None,
1609
1677
  private_ips: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ServerPrivateIpArgs', 'ServerPrivateIpArgsDict']]]]] = None,
1610
1678
  private_networks: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ServerPrivateNetworkArgs', 'ServerPrivateNetworkArgsDict']]]]] = None,
1611
- project_id: Optional[pulumi.Input[str]] = None,
1612
- protected: Optional[pulumi.Input[bool]] = None,
1613
- public_ip: Optional[pulumi.Input[str]] = None,
1679
+ project_id: Optional[pulumi.Input[builtins.str]] = None,
1680
+ protected: Optional[pulumi.Input[builtins.bool]] = None,
1681
+ public_ip: Optional[pulumi.Input[builtins.str]] = None,
1614
1682
  public_ips: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ServerPublicIpArgs', 'ServerPublicIpArgsDict']]]]] = None,
1615
- replace_on_type_change: Optional[pulumi.Input[bool]] = None,
1683
+ replace_on_type_change: Optional[pulumi.Input[builtins.bool]] = None,
1616
1684
  root_volume: Optional[pulumi.Input[Union['ServerRootVolumeArgs', 'ServerRootVolumeArgsDict']]] = None,
1617
- security_group_id: Optional[pulumi.Input[str]] = None,
1618
- state: Optional[pulumi.Input[str]] = None,
1619
- tags: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
1620
- type: Optional[pulumi.Input[str]] = None,
1621
- user_data: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
1622
- zone: Optional[pulumi.Input[str]] = None) -> 'Server':
1685
+ security_group_id: Optional[pulumi.Input[builtins.str]] = None,
1686
+ state: Optional[pulumi.Input[builtins.str]] = None,
1687
+ tags: Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]] = None,
1688
+ type: Optional[pulumi.Input[builtins.str]] = None,
1689
+ user_data: Optional[pulumi.Input[Mapping[str, pulumi.Input[builtins.str]]]] = None,
1690
+ zone: Optional[pulumi.Input[builtins.str]] = None) -> 'Server':
1623
1691
  """
1624
1692
  Get an existing Server resource's state with the given name, id, and optional extra
1625
1693
  properties used to qualify the lookup.
@@ -1627,73 +1695,77 @@ class Server(pulumi.CustomResource):
1627
1695
  :param str resource_name: The unique name of the resulting resource.
1628
1696
  :param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
1629
1697
  :param pulumi.ResourceOptions opts: Options for the resource.
1630
- :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)
1698
+ :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)
1631
1699
  attached to the server. Updates to this field will trigger a stop/start of the server.
1632
1700
 
1633
1701
  > **Important:** If this field contains local volumes, the `state` must be set to `stopped`, otherwise it will fail.
1634
1702
 
1635
1703
  > **Important:** If this field contains local volumes, you have to first detach them, in one apply, and then delete the volume in another apply.
1636
- :param pulumi.Input[str] boot_type: The boot Type of the server. Possible values are: `local`, `bootscript` or `rescue`.
1637
- :param pulumi.Input[str] bootscript_id: ID of the target bootscript (set boot_type to bootscript)
1638
- :param pulumi.Input[str] cloud_init: The cloud init script associated with this server
1639
- :param pulumi.Input[bool] enable_dynamic_ip: If true a dynamic IP will be attached to the server.
1640
- :param pulumi.Input[bool] enable_ipv6: Determines if IPv6 is enabled for the server.
1704
+ :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.
1705
+ Mandatory for Windows OS. The public_key value of this key is used to encrypt the admin password.
1706
+ 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.
1707
+ :param pulumi.Input[builtins.str] boot_type: The boot Type of the server. Possible values are: `local`, `bootscript` or `rescue`.
1708
+ :param pulumi.Input[builtins.str] bootscript_id: ID of the target bootscript (set boot_type to bootscript)
1709
+ :param pulumi.Input[builtins.str] cloud_init: The cloud init script associated with this server
1710
+ :param pulumi.Input[builtins.bool] enable_dynamic_ip: If true a dynamic IP will be attached to the server.
1711
+ :param pulumi.Input[builtins.bool] enable_ipv6: Determines if IPv6 is enabled for the server.
1641
1712
  Deprecated: Please use a instance.Ip with a `routed_ipv6` type.
1642
- :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)
1713
+ :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)
1643
1714
  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.
1644
1715
 
1645
1716
  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```
1646
1717
 
1647
1718
  To retrieve more information by label please use: ```scw marketplace image get label=<LABEL>```
1648
- :param pulumi.Input[str] ip_id: The ID of the reserved IP that is attached to the server.
1649
- :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`.
1719
+ :param pulumi.Input[builtins.str] ip_id: The ID of the reserved IP that is attached to the server.
1720
+ :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`.
1650
1721
 
1651
1722
  > `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.
1652
- :param pulumi.Input[str] ipv6_address: The default ipv6 address routed to the server. ( Only set when enable_ipv6 is set to true )
1723
+ :param pulumi.Input[builtins.str] ipv6_address: The default ipv6 address routed to the server. ( Only set when enable_ipv6 is set to true )
1653
1724
  Deprecated: Please use a instance.Ip with a `routed_ipv6` type.
1654
- :param pulumi.Input[str] ipv6_gateway: The ipv6 gateway address. ( Only set when enable_ipv6 is set to true )
1725
+ :param pulumi.Input[builtins.str] ipv6_gateway: The ipv6 gateway address. ( Only set when enable_ipv6 is set to true )
1655
1726
  Deprecated: Please use a instance.Ip with a `routed_ipv6` type.
1656
- :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 )
1727
+ :param pulumi.Input[builtins.int] ipv6_prefix_length: The prefix length of the ipv6 subnet routed to the server. ( Only set when enable_ipv6 is set to true )
1657
1728
  Deprecated: Please use a instance.Ip with a `routed_ipv6` type.
1658
- :param pulumi.Input[str] name: The name of the server.
1659
- :param pulumi.Input[str] organization_id: The organization ID the server is associated with.
1660
- :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.
1729
+ :param pulumi.Input[builtins.str] name: The name of the server.
1730
+ :param pulumi.Input[builtins.str] organization_id: The organization ID the server is associated with.
1731
+ :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.
1661
1732
 
1662
1733
 
1663
1734
  > **Important:** When updating `placement_group_id` the `state` must be set to `stopped`, otherwise it will fail.
1664
- :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.
1665
- :param pulumi.Input[str] private_ip: The Scaleway internal IP address of the server (Deprecated use ipam_ip datasource instead).
1735
+ :param pulumi.Input[builtins.bool] placement_group_policy_respected: (Deprecated) Always false, use instance_placement_group ressource to known when the placement group policy is respected.
1736
+ :param pulumi.Input[builtins.str] private_ip: The Scaleway internal IP address of the server (Deprecated use ipam_ip datasource instead).
1666
1737
  :param pulumi.Input[Sequence[pulumi.Input[Union['ServerPrivateIpArgs', 'ServerPrivateIpArgsDict']]]] private_ips: The list of private IPv4 and IPv6 addresses associated with the resource.
1667
1738
  :param pulumi.Input[Sequence[pulumi.Input[Union['ServerPrivateNetworkArgs', 'ServerPrivateNetworkArgsDict']]]] private_networks: The private network associated with the server.
1668
1739
  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.
1669
- :param pulumi.Input[str] project_id: `project_id`) The ID of the project the server is associated with.
1670
- :param pulumi.Input[bool] protected: Set to true to activate server protection option.
1671
- :param pulumi.Input[str] public_ip: The public IP address of the server (Deprecated use `public_ips` instead).
1740
+ :param pulumi.Input[builtins.str] project_id: `project_id`) The ID of the project the server is associated with.
1741
+ :param pulumi.Input[builtins.bool] protected: Set to true to activate server protection option.
1742
+ :param pulumi.Input[builtins.str] public_ip: The public IP address of the server (Deprecated use `public_ips` instead).
1672
1743
  :param pulumi.Input[Sequence[pulumi.Input[Union['ServerPublicIpArgs', 'ServerPublicIpArgsDict']]]] public_ips: The list of public IPs of the server.
1673
- :param pulumi.Input[bool] replace_on_type_change: If true, the server will be replaced if `type` is changed. Otherwise, the server will migrate.
1744
+ :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.
1674
1745
  :param pulumi.Input[Union['ServerRootVolumeArgs', 'ServerRootVolumeArgsDict']] root_volume: Root [volume](https://www.scaleway.com/en/developers/api/instance/#path-volume-types-list-volume-types) attached to the server on creation.
1675
- :param pulumi.Input[str] security_group_id: The security group the server is attached to
1676
- :param pulumi.Input[str] state: The state of the server. Possible values are: `started`, `stopped` or `standby`.
1677
- :param pulumi.Input[Sequence[pulumi.Input[str]]] tags: The tags associated with the server.
1678
- :param pulumi.Input[str] type: The commercial type of the server.
1746
+ :param pulumi.Input[builtins.str] security_group_id: The security group the server is attached to
1747
+ :param pulumi.Input[builtins.str] state: The state of the server. Possible values are: `started`, `stopped` or `standby`.
1748
+ :param pulumi.Input[Sequence[pulumi.Input[builtins.str]]] tags: The tags associated with the server.
1749
+ :param pulumi.Input[builtins.str] type: The commercial type of the server.
1679
1750
  You find all the available types on the [pricing page](https://www.scaleway.com/en/pricing/).
1680
1751
  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/).
1681
1752
  Use `replace_on_type_change` to trigger replacement instead of migration.
1682
1753
 
1683
1754
  > **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.
1684
- :param pulumi.Input[Mapping[str, pulumi.Input[str]]] user_data: The user data associated with the server.
1755
+ :param pulumi.Input[Mapping[str, pulumi.Input[builtins.str]]] user_data: The user data associated with the server.
1685
1756
  Use the `cloud-init` key to use [cloud-init](https://cloudinit.readthedocs.io/en/latest/) on your instance.
1686
1757
  You can define values using:
1687
1758
  - string
1688
1759
  - UTF-8 encoded file content using file
1689
1760
  - Binary files using filebase64.
1690
- :param pulumi.Input[str] zone: `zone`) The zone in which the server should be created.
1761
+ :param pulumi.Input[builtins.str] zone: `zone`) The zone in which the server should be created.
1691
1762
  """
1692
1763
  opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
1693
1764
 
1694
1765
  __props__ = _ServerState.__new__(_ServerState)
1695
1766
 
1696
1767
  __props__.__dict__["additional_volume_ids"] = additional_volume_ids
1768
+ __props__.__dict__["admin_password_encryption_ssh_key_id"] = admin_password_encryption_ssh_key_id
1697
1769
  __props__.__dict__["boot_type"] = boot_type
1698
1770
  __props__.__dict__["bootscript_id"] = bootscript_id
1699
1771
  __props__.__dict__["cloud_init"] = cloud_init
@@ -1728,7 +1800,7 @@ class Server(pulumi.CustomResource):
1728
1800
 
1729
1801
  @property
1730
1802
  @pulumi.getter(name="additionalVolumeIds")
1731
- def additional_volume_ids(self) -> pulumi.Output[Optional[Sequence[str]]]:
1803
+ def additional_volume_ids(self) -> pulumi.Output[Optional[Sequence[builtins.str]]]:
1732
1804
  """
1733
1805
  The [additional volumes](https://www.scaleway.com/en/developers/api/instance/#path-volume-types-list-volume-types)
1734
1806
  attached to the server. Updates to this field will trigger a stop/start of the server.
@@ -1739,9 +1811,19 @@ class Server(pulumi.CustomResource):
1739
1811
  """
1740
1812
  return pulumi.get(self, "additional_volume_ids")
1741
1813
 
1814
+ @property
1815
+ @pulumi.getter(name="adminPasswordEncryptionSshKeyId")
1816
+ def admin_password_encryption_ssh_key_id(self) -> pulumi.Output[Optional[builtins.str]]:
1817
+ """
1818
+ The ID of the SSH RSA key that will be used to encrypt the initial admin password for OS requiring it.
1819
+ Mandatory for Windows OS. The public_key value of this key is used to encrypt the admin password.
1820
+ 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.
1821
+ """
1822
+ return pulumi.get(self, "admin_password_encryption_ssh_key_id")
1823
+
1742
1824
  @property
1743
1825
  @pulumi.getter(name="bootType")
1744
- def boot_type(self) -> pulumi.Output[Optional[str]]:
1826
+ def boot_type(self) -> pulumi.Output[Optional[builtins.str]]:
1745
1827
  """
1746
1828
  The boot Type of the server. Possible values are: `local`, `bootscript` or `rescue`.
1747
1829
  """
@@ -1750,7 +1832,7 @@ class Server(pulumi.CustomResource):
1750
1832
  @property
1751
1833
  @pulumi.getter(name="bootscriptId")
1752
1834
  @_utilities.deprecated("""bootscript is not supported anymore.""")
1753
- def bootscript_id(self) -> pulumi.Output[str]:
1835
+ def bootscript_id(self) -> pulumi.Output[builtins.str]:
1754
1836
  """
1755
1837
  ID of the target bootscript (set boot_type to bootscript)
1756
1838
  """
@@ -1758,7 +1840,7 @@ class Server(pulumi.CustomResource):
1758
1840
 
1759
1841
  @property
1760
1842
  @pulumi.getter(name="cloudInit")
1761
- def cloud_init(self) -> pulumi.Output[str]:
1843
+ def cloud_init(self) -> pulumi.Output[builtins.str]:
1762
1844
  """
1763
1845
  The cloud init script associated with this server
1764
1846
  """
@@ -1766,7 +1848,7 @@ class Server(pulumi.CustomResource):
1766
1848
 
1767
1849
  @property
1768
1850
  @pulumi.getter(name="enableDynamicIp")
1769
- def enable_dynamic_ip(self) -> pulumi.Output[Optional[bool]]:
1851
+ def enable_dynamic_ip(self) -> pulumi.Output[Optional[builtins.bool]]:
1770
1852
  """
1771
1853
  If true a dynamic IP will be attached to the server.
1772
1854
  """
@@ -1775,7 +1857,7 @@ class Server(pulumi.CustomResource):
1775
1857
  @property
1776
1858
  @pulumi.getter(name="enableIpv6")
1777
1859
  @_utilities.deprecated("""Please use a instance.Ip with a `routed_ipv6` type""")
1778
- def enable_ipv6(self) -> pulumi.Output[Optional[bool]]:
1860
+ def enable_ipv6(self) -> pulumi.Output[Optional[builtins.bool]]:
1779
1861
  """
1780
1862
  Determines if IPv6 is enabled for the server.
1781
1863
  Deprecated: Please use a instance.Ip with a `routed_ipv6` type.
@@ -1784,7 +1866,7 @@ class Server(pulumi.CustomResource):
1784
1866
 
1785
1867
  @property
1786
1868
  @pulumi.getter
1787
- def image(self) -> pulumi.Output[Optional[str]]:
1869
+ def image(self) -> pulumi.Output[Optional[builtins.str]]:
1788
1870
  """
1789
1871
  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)
1790
1872
  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.
@@ -1797,7 +1879,7 @@ class Server(pulumi.CustomResource):
1797
1879
 
1798
1880
  @property
1799
1881
  @pulumi.getter(name="ipId")
1800
- def ip_id(self) -> pulumi.Output[Optional[str]]:
1882
+ def ip_id(self) -> pulumi.Output[Optional[builtins.str]]:
1801
1883
  """
1802
1884
  The ID of the reserved IP that is attached to the server.
1803
1885
  """
@@ -1805,7 +1887,7 @@ class Server(pulumi.CustomResource):
1805
1887
 
1806
1888
  @property
1807
1889
  @pulumi.getter(name="ipIds")
1808
- def ip_ids(self) -> pulumi.Output[Optional[Sequence[str]]]:
1890
+ def ip_ids(self) -> pulumi.Output[Optional[Sequence[builtins.str]]]:
1809
1891
  """
1810
1892
  List of ID of reserved IPs that are attached to the server. Cannot be used with `ip_id`.
1811
1893
 
@@ -1816,7 +1898,7 @@ class Server(pulumi.CustomResource):
1816
1898
  @property
1817
1899
  @pulumi.getter(name="ipv6Address")
1818
1900
  @_utilities.deprecated("""Please use a instance.Ip with a `routed_ipv6` type""")
1819
- def ipv6_address(self) -> pulumi.Output[str]:
1901
+ def ipv6_address(self) -> pulumi.Output[builtins.str]:
1820
1902
  """
1821
1903
  The default ipv6 address routed to the server. ( Only set when enable_ipv6 is set to true )
1822
1904
  Deprecated: Please use a instance.Ip with a `routed_ipv6` type.
@@ -1826,7 +1908,7 @@ class Server(pulumi.CustomResource):
1826
1908
  @property
1827
1909
  @pulumi.getter(name="ipv6Gateway")
1828
1910
  @_utilities.deprecated("""Please use a instance.Ip with a `routed_ipv6` type""")
1829
- def ipv6_gateway(self) -> pulumi.Output[str]:
1911
+ def ipv6_gateway(self) -> pulumi.Output[builtins.str]:
1830
1912
  """
1831
1913
  The ipv6 gateway address. ( Only set when enable_ipv6 is set to true )
1832
1914
  Deprecated: Please use a instance.Ip with a `routed_ipv6` type.
@@ -1836,7 +1918,7 @@ class Server(pulumi.CustomResource):
1836
1918
  @property
1837
1919
  @pulumi.getter(name="ipv6PrefixLength")
1838
1920
  @_utilities.deprecated("""Please use a instance.Ip with a `routed_ipv6` type""")
1839
- def ipv6_prefix_length(self) -> pulumi.Output[int]:
1921
+ def ipv6_prefix_length(self) -> pulumi.Output[builtins.int]:
1840
1922
  """
1841
1923
  The prefix length of the ipv6 subnet routed to the server. ( Only set when enable_ipv6 is set to true )
1842
1924
  Deprecated: Please use a instance.Ip with a `routed_ipv6` type.
@@ -1845,7 +1927,7 @@ class Server(pulumi.CustomResource):
1845
1927
 
1846
1928
  @property
1847
1929
  @pulumi.getter
1848
- def name(self) -> pulumi.Output[str]:
1930
+ def name(self) -> pulumi.Output[builtins.str]:
1849
1931
  """
1850
1932
  The name of the server.
1851
1933
  """
@@ -1853,7 +1935,7 @@ class Server(pulumi.CustomResource):
1853
1935
 
1854
1936
  @property
1855
1937
  @pulumi.getter(name="organizationId")
1856
- def organization_id(self) -> pulumi.Output[str]:
1938
+ def organization_id(self) -> pulumi.Output[builtins.str]:
1857
1939
  """
1858
1940
  The organization ID the server is associated with.
1859
1941
  """
@@ -1861,7 +1943,7 @@ class Server(pulumi.CustomResource):
1861
1943
 
1862
1944
  @property
1863
1945
  @pulumi.getter(name="placementGroupId")
1864
- def placement_group_id(self) -> pulumi.Output[Optional[str]]:
1946
+ def placement_group_id(self) -> pulumi.Output[Optional[builtins.str]]:
1865
1947
  """
1866
1948
  The [placement group](https://www.scaleway.com/en/developers/api/instance/#path-security-groups-update-a-security-group the server is attached to.
1867
1949
 
@@ -1872,7 +1954,7 @@ class Server(pulumi.CustomResource):
1872
1954
 
1873
1955
  @property
1874
1956
  @pulumi.getter(name="placementGroupPolicyRespected")
1875
- def placement_group_policy_respected(self) -> pulumi.Output[bool]:
1957
+ def placement_group_policy_respected(self) -> pulumi.Output[builtins.bool]:
1876
1958
  """
1877
1959
  (Deprecated) Always false, use instance_placement_group ressource to known when the placement group policy is respected.
1878
1960
  """
@@ -1881,7 +1963,7 @@ class Server(pulumi.CustomResource):
1881
1963
  @property
1882
1964
  @pulumi.getter(name="privateIp")
1883
1965
  @_utilities.deprecated("""Use ipam_ip datasource instead to fetch your server's IP in your private network.""")
1884
- def private_ip(self) -> pulumi.Output[str]:
1966
+ def private_ip(self) -> pulumi.Output[builtins.str]:
1885
1967
  """
1886
1968
  The Scaleway internal IP address of the server (Deprecated use ipam_ip datasource instead).
1887
1969
  """
@@ -1906,7 +1988,7 @@ class Server(pulumi.CustomResource):
1906
1988
 
1907
1989
  @property
1908
1990
  @pulumi.getter(name="projectId")
1909
- def project_id(self) -> pulumi.Output[str]:
1991
+ def project_id(self) -> pulumi.Output[builtins.str]:
1910
1992
  """
1911
1993
  `project_id`) The ID of the project the server is associated with.
1912
1994
  """
@@ -1914,7 +1996,7 @@ class Server(pulumi.CustomResource):
1914
1996
 
1915
1997
  @property
1916
1998
  @pulumi.getter
1917
- def protected(self) -> pulumi.Output[Optional[bool]]:
1999
+ def protected(self) -> pulumi.Output[Optional[builtins.bool]]:
1918
2000
  """
1919
2001
  Set to true to activate server protection option.
1920
2002
  """
@@ -1923,7 +2005,7 @@ class Server(pulumi.CustomResource):
1923
2005
  @property
1924
2006
  @pulumi.getter(name="publicIp")
1925
2007
  @_utilities.deprecated("""Use public_ips instead""")
1926
- def public_ip(self) -> pulumi.Output[str]:
2008
+ def public_ip(self) -> pulumi.Output[builtins.str]:
1927
2009
  """
1928
2010
  The public IP address of the server (Deprecated use `public_ips` instead).
1929
2011
  """
@@ -1939,7 +2021,7 @@ class Server(pulumi.CustomResource):
1939
2021
 
1940
2022
  @property
1941
2023
  @pulumi.getter(name="replaceOnTypeChange")
1942
- def replace_on_type_change(self) -> pulumi.Output[Optional[bool]]:
2024
+ def replace_on_type_change(self) -> pulumi.Output[Optional[builtins.bool]]:
1943
2025
  """
1944
2026
  If true, the server will be replaced if `type` is changed. Otherwise, the server will migrate.
1945
2027
  """
@@ -1955,7 +2037,7 @@ class Server(pulumi.CustomResource):
1955
2037
 
1956
2038
  @property
1957
2039
  @pulumi.getter(name="securityGroupId")
1958
- def security_group_id(self) -> pulumi.Output[str]:
2040
+ def security_group_id(self) -> pulumi.Output[builtins.str]:
1959
2041
  """
1960
2042
  The security group the server is attached to
1961
2043
  """
@@ -1963,7 +2045,7 @@ class Server(pulumi.CustomResource):
1963
2045
 
1964
2046
  @property
1965
2047
  @pulumi.getter
1966
- def state(self) -> pulumi.Output[Optional[str]]:
2048
+ def state(self) -> pulumi.Output[Optional[builtins.str]]:
1967
2049
  """
1968
2050
  The state of the server. Possible values are: `started`, `stopped` or `standby`.
1969
2051
  """
@@ -1971,7 +2053,7 @@ class Server(pulumi.CustomResource):
1971
2053
 
1972
2054
  @property
1973
2055
  @pulumi.getter
1974
- def tags(self) -> pulumi.Output[Optional[Sequence[str]]]:
2056
+ def tags(self) -> pulumi.Output[Optional[Sequence[builtins.str]]]:
1975
2057
  """
1976
2058
  The tags associated with the server.
1977
2059
  """
@@ -1979,7 +2061,7 @@ class Server(pulumi.CustomResource):
1979
2061
 
1980
2062
  @property
1981
2063
  @pulumi.getter
1982
- def type(self) -> pulumi.Output[str]:
2064
+ def type(self) -> pulumi.Output[builtins.str]:
1983
2065
  """
1984
2066
  The commercial type of the server.
1985
2067
  You find all the available types on the [pricing page](https://www.scaleway.com/en/pricing/).
@@ -1992,7 +2074,7 @@ class Server(pulumi.CustomResource):
1992
2074
 
1993
2075
  @property
1994
2076
  @pulumi.getter(name="userData")
1995
- def user_data(self) -> pulumi.Output[Mapping[str, str]]:
2077
+ def user_data(self) -> pulumi.Output[Mapping[str, builtins.str]]:
1996
2078
  """
1997
2079
  The user data associated with the server.
1998
2080
  Use the `cloud-init` key to use [cloud-init](https://cloudinit.readthedocs.io/en/latest/) on your instance.
@@ -2005,7 +2087,7 @@ class Server(pulumi.CustomResource):
2005
2087
 
2006
2088
  @property
2007
2089
  @pulumi.getter
2008
- def zone(self) -> pulumi.Output[str]:
2090
+ def zone(self) -> pulumi.Output[builtins.str]:
2009
2091
  """
2010
2092
  `zone`) The zone in which the server should be created.
2011
2093
  """