pulumiverse-scaleway 1.30.0a1750140900__py3-none-any.whl → 1.30.0a1752168858__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 -1
  2. pulumiverse_scaleway/_inputs.py +2252 -2143
  3. pulumiverse_scaleway/_utilities.py +1 -1
  4. pulumiverse_scaleway/account/__init__.py +2 -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 +28 -21
  8. pulumiverse_scaleway/account/get_ssh_key.py +24 -23
  9. pulumiverse_scaleway/account/outputs.py +20 -19
  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 +262 -260
  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 +2 -1
  25. pulumiverse_scaleway/block/_inputs.py +12 -11
  26. pulumiverse_scaleway/block/get_snapshot.py +29 -28
  27. pulumiverse_scaleway/block/get_volume.py +28 -27
  28. pulumiverse_scaleway/block/outputs.py +14 -13
  29. pulumiverse_scaleway/block/snapshot.py +73 -71
  30. pulumiverse_scaleway/block/volume.py +115 -113
  31. pulumiverse_scaleway/block_snapshot.py +73 -71
  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 +573 -343
  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 +573 -343
  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 +297 -295
  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 +297 -295
  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 +24 -23
  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 +2 -1
  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 +29 -28
  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 +262 -260
  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 +29 -28
  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 +24 -23
  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 +35 -34
  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 +284 -273
  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 +284 -273
  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 +94 -92
  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 +393 -330
  274. pulumiverse_scaleway/instance/snapshot.py +108 -106
  275. pulumiverse_scaleway/instance/user_data.py +59 -57
  276. pulumiverse_scaleway/instance/volume.py +129 -127
  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 +94 -92
  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 +393 -330
  285. pulumiverse_scaleway/instance_snapshot.py +108 -106
  286. pulumiverse_scaleway/instance_user_data.py +59 -57
  287. pulumiverse_scaleway/instance_volume.py +129 -127
  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 +199 -197
  379. pulumiverse_scaleway/mongo_db_snapshot.py +101 -99
  380. pulumiverse_scaleway/mongodb/__init__.py +2 -1
  381. pulumiverse_scaleway/mongodb/_inputs.py +53 -52
  382. pulumiverse_scaleway/mongodb/get_instance.py +35 -34
  383. pulumiverse_scaleway/mongodb/instance.py +199 -197
  384. pulumiverse_scaleway/mongodb/outputs.py +64 -63
  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 +143 -141
  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 -1
  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 +2797 -2732
  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 +178 -176
  444. pulumiverse_scaleway/redis/get_cluster.py +34 -33
  445. pulumiverse_scaleway/redis/outputs.py +74 -73
  446. pulumiverse_scaleway/redis_cluster.py +178 -176
  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 +143 -141
  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.30.0a1750140900.dist-info → pulumiverse_scaleway-1.30.0a1752168858.dist-info}/METADATA +2 -2
  487. pulumiverse_scaleway-1.30.0a1752168858.dist-info/RECORD +493 -0
  488. pulumiverse_scaleway-1.30.0a1750140900.dist-info/RECORD +0 -492
  489. {pulumiverse_scaleway-1.30.0a1750140900.dist-info → pulumiverse_scaleway-1.30.0a1752168858.dist-info}/WHEEL +0 -0
  490. {pulumiverse_scaleway-1.30.0a1750140900.dist-info → pulumiverse_scaleway-1.30.0a1752168858.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
@@ -19,34 +20,33 @@ __all__ = ['UserArgs', 'User']
19
20
  @pulumi.input_type
20
21
  class UserArgs:
21
22
  def __init__(__self__, *,
22
- email: pulumi.Input[str],
23
- first_name: Optional[pulumi.Input[str]] = None,
24
- last_name: Optional[pulumi.Input[str]] = None,
25
- locale: Optional[pulumi.Input[str]] = None,
26
- organization_id: Optional[pulumi.Input[str]] = None,
27
- password: Optional[pulumi.Input[str]] = None,
28
- phone_number: Optional[pulumi.Input[str]] = None,
29
- send_password_email: Optional[pulumi.Input[bool]] = None,
30
- send_welcome_email: Optional[pulumi.Input[bool]] = None,
31
- tags: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
32
- username: Optional[pulumi.Input[str]] = None):
23
+ email: pulumi.Input[builtins.str],
24
+ username: pulumi.Input[builtins.str],
25
+ first_name: Optional[pulumi.Input[builtins.str]] = None,
26
+ last_name: Optional[pulumi.Input[builtins.str]] = None,
27
+ locale: Optional[pulumi.Input[builtins.str]] = None,
28
+ organization_id: Optional[pulumi.Input[builtins.str]] = None,
29
+ password: Optional[pulumi.Input[builtins.str]] = None,
30
+ phone_number: Optional[pulumi.Input[builtins.str]] = None,
31
+ send_password_email: Optional[pulumi.Input[builtins.bool]] = None,
32
+ send_welcome_email: Optional[pulumi.Input[builtins.bool]] = None,
33
+ tags: Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]] = None):
33
34
  """
34
35
  The set of arguments for constructing a User resource.
35
- :param pulumi.Input[str] email: The email of the IAM user. For Guest users, this argument is not editable.
36
- :param pulumi.Input[str] first_name: The user's first name.
37
- :param pulumi.Input[str] last_name: The user's last name.
38
- :param pulumi.Input[str] locale: The user's locale (e.g., en_US).
39
-
40
- Important: When creating a Guest user, all arguments are ignored, except for `organization_id`, `email` and `tags`.
41
- :param pulumi.Input[str] organization_id: `organization_id`) The ID of the organization the user is associated with.
42
- :param pulumi.Input[str] password: The password for first access.
43
- :param pulumi.Input[str] phone_number: The user's phone number.
44
- :param pulumi.Input[bool] send_password_email: Whether or not to send an email containing the password for first access.
45
- :param pulumi.Input[bool] send_welcome_email: Whether or not to send a welcome email that includes onboarding information.
46
- :param pulumi.Input[Sequence[pulumi.Input[str]]] tags: The tags associated with the user.
47
- :param pulumi.Input[str] username: The username of the IAM user. When it is set, the user is created as a Member. When it is not set, the user is created as a Guest and the username is set as equal to the email.
36
+ :param pulumi.Input[builtins.str] email: The email of the IAM user. For Guest users, this argument is not editable.
37
+ :param pulumi.Input[builtins.str] username: The username of the IAM user.
38
+ :param pulumi.Input[builtins.str] first_name: The user's first name.
39
+ :param pulumi.Input[builtins.str] last_name: The user's last name.
40
+ :param pulumi.Input[builtins.str] locale: The user's locale (e.g., en_US).
41
+ :param pulumi.Input[builtins.str] organization_id: `organization_id`) The ID of the organization the user is associated with.
42
+ :param pulumi.Input[builtins.str] password: The password for first access.
43
+ :param pulumi.Input[builtins.str] phone_number: The user's phone number.
44
+ :param pulumi.Input[builtins.bool] send_password_email: Whether or not to send an email containing the password for first access.
45
+ :param pulumi.Input[builtins.bool] send_welcome_email: Whether or not to send a welcome email that includes onboarding information.
46
+ :param pulumi.Input[Sequence[pulumi.Input[builtins.str]]] tags: The tags associated with the user.
48
47
  """
49
48
  pulumi.set(__self__, "email", email)
49
+ pulumi.set(__self__, "username", username)
50
50
  if first_name is not None:
51
51
  pulumi.set(__self__, "first_name", first_name)
52
52
  if last_name is not None:
@@ -65,191 +65,185 @@ class UserArgs:
65
65
  pulumi.set(__self__, "send_welcome_email", send_welcome_email)
66
66
  if tags is not None:
67
67
  pulumi.set(__self__, "tags", tags)
68
- if username is not None:
69
- pulumi.set(__self__, "username", username)
70
68
 
71
69
  @property
72
70
  @pulumi.getter
73
- def email(self) -> pulumi.Input[str]:
71
+ def email(self) -> pulumi.Input[builtins.str]:
74
72
  """
75
73
  The email of the IAM user. For Guest users, this argument is not editable.
76
74
  """
77
75
  return pulumi.get(self, "email")
78
76
 
79
77
  @email.setter
80
- def email(self, value: pulumi.Input[str]):
78
+ def email(self, value: pulumi.Input[builtins.str]):
81
79
  pulumi.set(self, "email", value)
82
80
 
81
+ @property
82
+ @pulumi.getter
83
+ def username(self) -> pulumi.Input[builtins.str]:
84
+ """
85
+ The username of the IAM user.
86
+ """
87
+ return pulumi.get(self, "username")
88
+
89
+ @username.setter
90
+ def username(self, value: pulumi.Input[builtins.str]):
91
+ pulumi.set(self, "username", value)
92
+
83
93
  @property
84
94
  @pulumi.getter(name="firstName")
85
- def first_name(self) -> Optional[pulumi.Input[str]]:
95
+ def first_name(self) -> Optional[pulumi.Input[builtins.str]]:
86
96
  """
87
97
  The user's first name.
88
98
  """
89
99
  return pulumi.get(self, "first_name")
90
100
 
91
101
  @first_name.setter
92
- def first_name(self, value: Optional[pulumi.Input[str]]):
102
+ def first_name(self, value: Optional[pulumi.Input[builtins.str]]):
93
103
  pulumi.set(self, "first_name", value)
94
104
 
95
105
  @property
96
106
  @pulumi.getter(name="lastName")
97
- def last_name(self) -> Optional[pulumi.Input[str]]:
107
+ def last_name(self) -> Optional[pulumi.Input[builtins.str]]:
98
108
  """
99
109
  The user's last name.
100
110
  """
101
111
  return pulumi.get(self, "last_name")
102
112
 
103
113
  @last_name.setter
104
- def last_name(self, value: Optional[pulumi.Input[str]]):
114
+ def last_name(self, value: Optional[pulumi.Input[builtins.str]]):
105
115
  pulumi.set(self, "last_name", value)
106
116
 
107
117
  @property
108
118
  @pulumi.getter
109
- def locale(self) -> Optional[pulumi.Input[str]]:
119
+ def locale(self) -> Optional[pulumi.Input[builtins.str]]:
110
120
  """
111
121
  The user's locale (e.g., en_US).
112
-
113
- Important: When creating a Guest user, all arguments are ignored, except for `organization_id`, `email` and `tags`.
114
122
  """
115
123
  return pulumi.get(self, "locale")
116
124
 
117
125
  @locale.setter
118
- def locale(self, value: Optional[pulumi.Input[str]]):
126
+ def locale(self, value: Optional[pulumi.Input[builtins.str]]):
119
127
  pulumi.set(self, "locale", value)
120
128
 
121
129
  @property
122
130
  @pulumi.getter(name="organizationId")
123
- def organization_id(self) -> Optional[pulumi.Input[str]]:
131
+ def organization_id(self) -> Optional[pulumi.Input[builtins.str]]:
124
132
  """
125
133
  `organization_id`) The ID of the organization the user is associated with.
126
134
  """
127
135
  return pulumi.get(self, "organization_id")
128
136
 
129
137
  @organization_id.setter
130
- def organization_id(self, value: Optional[pulumi.Input[str]]):
138
+ def organization_id(self, value: Optional[pulumi.Input[builtins.str]]):
131
139
  pulumi.set(self, "organization_id", value)
132
140
 
133
141
  @property
134
142
  @pulumi.getter
135
- def password(self) -> Optional[pulumi.Input[str]]:
143
+ def password(self) -> Optional[pulumi.Input[builtins.str]]:
136
144
  """
137
145
  The password for first access.
138
146
  """
139
147
  return pulumi.get(self, "password")
140
148
 
141
149
  @password.setter
142
- def password(self, value: Optional[pulumi.Input[str]]):
150
+ def password(self, value: Optional[pulumi.Input[builtins.str]]):
143
151
  pulumi.set(self, "password", value)
144
152
 
145
153
  @property
146
154
  @pulumi.getter(name="phoneNumber")
147
- def phone_number(self) -> Optional[pulumi.Input[str]]:
155
+ def phone_number(self) -> Optional[pulumi.Input[builtins.str]]:
148
156
  """
149
157
  The user's phone number.
150
158
  """
151
159
  return pulumi.get(self, "phone_number")
152
160
 
153
161
  @phone_number.setter
154
- def phone_number(self, value: Optional[pulumi.Input[str]]):
162
+ def phone_number(self, value: Optional[pulumi.Input[builtins.str]]):
155
163
  pulumi.set(self, "phone_number", value)
156
164
 
157
165
  @property
158
166
  @pulumi.getter(name="sendPasswordEmail")
159
- def send_password_email(self) -> Optional[pulumi.Input[bool]]:
167
+ def send_password_email(self) -> Optional[pulumi.Input[builtins.bool]]:
160
168
  """
161
169
  Whether or not to send an email containing the password for first access.
162
170
  """
163
171
  return pulumi.get(self, "send_password_email")
164
172
 
165
173
  @send_password_email.setter
166
- def send_password_email(self, value: Optional[pulumi.Input[bool]]):
174
+ def send_password_email(self, value: Optional[pulumi.Input[builtins.bool]]):
167
175
  pulumi.set(self, "send_password_email", value)
168
176
 
169
177
  @property
170
178
  @pulumi.getter(name="sendWelcomeEmail")
171
- def send_welcome_email(self) -> Optional[pulumi.Input[bool]]:
179
+ def send_welcome_email(self) -> Optional[pulumi.Input[builtins.bool]]:
172
180
  """
173
181
  Whether or not to send a welcome email that includes onboarding information.
174
182
  """
175
183
  return pulumi.get(self, "send_welcome_email")
176
184
 
177
185
  @send_welcome_email.setter
178
- def send_welcome_email(self, value: Optional[pulumi.Input[bool]]):
186
+ def send_welcome_email(self, value: Optional[pulumi.Input[builtins.bool]]):
179
187
  pulumi.set(self, "send_welcome_email", value)
180
188
 
181
189
  @property
182
190
  @pulumi.getter
183
- def tags(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
191
+ def tags(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]]:
184
192
  """
185
193
  The tags associated with the user.
186
194
  """
187
195
  return pulumi.get(self, "tags")
188
196
 
189
197
  @tags.setter
190
- def tags(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
198
+ def tags(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]]):
191
199
  pulumi.set(self, "tags", value)
192
200
 
193
- @property
194
- @pulumi.getter
195
- def username(self) -> Optional[pulumi.Input[str]]:
196
- """
197
- The username of the IAM user. When it is set, the user is created as a Member. When it is not set, the user is created as a Guest and the username is set as equal to the email.
198
- """
199
- return pulumi.get(self, "username")
200
-
201
- @username.setter
202
- def username(self, value: Optional[pulumi.Input[str]]):
203
- pulumi.set(self, "username", value)
204
-
205
201
 
206
202
  @pulumi.input_type
207
203
  class _UserState:
208
204
  def __init__(__self__, *,
209
- account_root_user_id: Optional[pulumi.Input[str]] = None,
210
- created_at: Optional[pulumi.Input[str]] = None,
211
- deletable: Optional[pulumi.Input[bool]] = None,
212
- email: Optional[pulumi.Input[str]] = None,
213
- first_name: Optional[pulumi.Input[str]] = None,
214
- last_login_at: Optional[pulumi.Input[str]] = None,
215
- last_name: Optional[pulumi.Input[str]] = None,
216
- locale: Optional[pulumi.Input[str]] = None,
217
- locked: Optional[pulumi.Input[bool]] = None,
218
- mfa: Optional[pulumi.Input[bool]] = None,
219
- organization_id: Optional[pulumi.Input[str]] = None,
220
- password: Optional[pulumi.Input[str]] = None,
221
- phone_number: Optional[pulumi.Input[str]] = None,
222
- send_password_email: Optional[pulumi.Input[bool]] = None,
223
- send_welcome_email: Optional[pulumi.Input[bool]] = None,
224
- status: Optional[pulumi.Input[str]] = None,
225
- tags: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
226
- type: Optional[pulumi.Input[str]] = None,
227
- updated_at: Optional[pulumi.Input[str]] = None,
228
- username: Optional[pulumi.Input[str]] = None):
205
+ account_root_user_id: Optional[pulumi.Input[builtins.str]] = None,
206
+ created_at: Optional[pulumi.Input[builtins.str]] = None,
207
+ deletable: Optional[pulumi.Input[builtins.bool]] = None,
208
+ email: Optional[pulumi.Input[builtins.str]] = None,
209
+ first_name: Optional[pulumi.Input[builtins.str]] = None,
210
+ last_login_at: Optional[pulumi.Input[builtins.str]] = None,
211
+ last_name: Optional[pulumi.Input[builtins.str]] = None,
212
+ locale: Optional[pulumi.Input[builtins.str]] = None,
213
+ locked: Optional[pulumi.Input[builtins.bool]] = None,
214
+ mfa: Optional[pulumi.Input[builtins.bool]] = None,
215
+ organization_id: Optional[pulumi.Input[builtins.str]] = None,
216
+ password: Optional[pulumi.Input[builtins.str]] = None,
217
+ phone_number: Optional[pulumi.Input[builtins.str]] = None,
218
+ send_password_email: Optional[pulumi.Input[builtins.bool]] = None,
219
+ send_welcome_email: Optional[pulumi.Input[builtins.bool]] = None,
220
+ status: Optional[pulumi.Input[builtins.str]] = None,
221
+ tags: Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]] = None,
222
+ type: Optional[pulumi.Input[builtins.str]] = None,
223
+ updated_at: Optional[pulumi.Input[builtins.str]] = None,
224
+ username: Optional[pulumi.Input[builtins.str]] = None):
229
225
  """
230
226
  Input properties used for looking up and filtering User resources.
231
- :param pulumi.Input[str] account_root_user_id: The ID of the account root user associated with the user.
232
- :param pulumi.Input[str] created_at: The date and time of the creation of the IAM user.
233
- :param pulumi.Input[bool] deletable: Whether the IAM user is deletable.
234
- :param pulumi.Input[str] email: The email of the IAM user. For Guest users, this argument is not editable.
235
- :param pulumi.Input[str] first_name: The user's first name.
236
- :param pulumi.Input[str] last_login_at: The date of the last login.
237
- :param pulumi.Input[str] last_name: The user's last name.
238
- :param pulumi.Input[str] locale: The user's locale (e.g., en_US).
239
-
240
- Important: When creating a Guest user, all arguments are ignored, except for `organization_id`, `email` and `tags`.
241
- :param pulumi.Input[bool] locked: Whether the user is locked.
242
- :param pulumi.Input[bool] mfa: Whether the MFA is enabled.
243
- :param pulumi.Input[str] organization_id: `organization_id`) The ID of the organization the user is associated with.
244
- :param pulumi.Input[str] password: The password for first access.
245
- :param pulumi.Input[str] phone_number: The user's phone number.
246
- :param pulumi.Input[bool] send_password_email: Whether or not to send an email containing the password for first access.
247
- :param pulumi.Input[bool] send_welcome_email: Whether or not to send a welcome email that includes onboarding information.
248
- :param pulumi.Input[str] status: The status of user invitation. Check the possible values in the [API doc](https://www.scaleway.com/en/developers/api/iam/#path-users-get-a-given-user).
249
- :param pulumi.Input[Sequence[pulumi.Input[str]]] tags: The tags associated with the user.
250
- :param pulumi.Input[str] type: The type of user. Check the possible values in the [API doc](https://www.scaleway.com/en/developers/api/iam/#path-users-get-a-given-user).
251
- :param pulumi.Input[str] updated_at: The date and time of the last update of the IAM user.
252
- :param pulumi.Input[str] username: The username of the IAM user. When it is set, the user is created as a Member. When it is not set, the user is created as a Guest and the username is set as equal to the email.
227
+ :param pulumi.Input[builtins.str] account_root_user_id: The ID of the account root user associated with the user.
228
+ :param pulumi.Input[builtins.str] created_at: The date and time of the creation of the IAM user.
229
+ :param pulumi.Input[builtins.bool] deletable: Whether the IAM user is deletable.
230
+ :param pulumi.Input[builtins.str] email: The email of the IAM user. For Guest users, this argument is not editable.
231
+ :param pulumi.Input[builtins.str] first_name: The user's first name.
232
+ :param pulumi.Input[builtins.str] last_login_at: The date of the last login.
233
+ :param pulumi.Input[builtins.str] last_name: The user's last name.
234
+ :param pulumi.Input[builtins.str] locale: The user's locale (e.g., en_US).
235
+ :param pulumi.Input[builtins.bool] locked: Whether the user is locked.
236
+ :param pulumi.Input[builtins.bool] mfa: Whether the MFA is enabled.
237
+ :param pulumi.Input[builtins.str] organization_id: `organization_id`) The ID of the organization the user is associated with.
238
+ :param pulumi.Input[builtins.str] password: The password for first access.
239
+ :param pulumi.Input[builtins.str] phone_number: The user's phone number.
240
+ :param pulumi.Input[builtins.bool] send_password_email: Whether or not to send an email containing the password for first access.
241
+ :param pulumi.Input[builtins.bool] send_welcome_email: Whether or not to send a welcome email that includes onboarding information.
242
+ :param pulumi.Input[builtins.str] status: The status of user invitation. Check the possible values in the [API doc](https://www.scaleway.com/en/developers/api/iam/#path-users-get-a-given-user).
243
+ :param pulumi.Input[Sequence[pulumi.Input[builtins.str]]] tags: The tags associated with the user.
244
+ :param pulumi.Input[builtins.str] type: The type of user. Check the possible values in the [API doc](https://www.scaleway.com/en/developers/api/iam/#path-users-get-a-given-user).
245
+ :param pulumi.Input[builtins.str] updated_at: The date and time of the last update of the IAM user.
246
+ :param pulumi.Input[builtins.str] username: The username of the IAM user.
253
247
  """
254
248
  if account_root_user_id is not None:
255
249
  pulumi.set(__self__, "account_root_user_id", account_root_user_id)
@@ -294,297 +288,306 @@ class _UserState:
294
288
 
295
289
  @property
296
290
  @pulumi.getter(name="accountRootUserId")
297
- def account_root_user_id(self) -> Optional[pulumi.Input[str]]:
291
+ def account_root_user_id(self) -> Optional[pulumi.Input[builtins.str]]:
298
292
  """
299
293
  The ID of the account root user associated with the user.
300
294
  """
301
295
  return pulumi.get(self, "account_root_user_id")
302
296
 
303
297
  @account_root_user_id.setter
304
- def account_root_user_id(self, value: Optional[pulumi.Input[str]]):
298
+ def account_root_user_id(self, value: Optional[pulumi.Input[builtins.str]]):
305
299
  pulumi.set(self, "account_root_user_id", value)
306
300
 
307
301
  @property
308
302
  @pulumi.getter(name="createdAt")
309
- def created_at(self) -> Optional[pulumi.Input[str]]:
303
+ def created_at(self) -> Optional[pulumi.Input[builtins.str]]:
310
304
  """
311
305
  The date and time of the creation of the IAM user.
312
306
  """
313
307
  return pulumi.get(self, "created_at")
314
308
 
315
309
  @created_at.setter
316
- def created_at(self, value: Optional[pulumi.Input[str]]):
310
+ def created_at(self, value: Optional[pulumi.Input[builtins.str]]):
317
311
  pulumi.set(self, "created_at", value)
318
312
 
319
313
  @property
320
314
  @pulumi.getter
321
- def deletable(self) -> Optional[pulumi.Input[bool]]:
315
+ def deletable(self) -> Optional[pulumi.Input[builtins.bool]]:
322
316
  """
323
317
  Whether the IAM user is deletable.
324
318
  """
325
319
  return pulumi.get(self, "deletable")
326
320
 
327
321
  @deletable.setter
328
- def deletable(self, value: Optional[pulumi.Input[bool]]):
322
+ def deletable(self, value: Optional[pulumi.Input[builtins.bool]]):
329
323
  pulumi.set(self, "deletable", value)
330
324
 
331
325
  @property
332
326
  @pulumi.getter
333
- def email(self) -> Optional[pulumi.Input[str]]:
327
+ def email(self) -> Optional[pulumi.Input[builtins.str]]:
334
328
  """
335
329
  The email of the IAM user. For Guest users, this argument is not editable.
336
330
  """
337
331
  return pulumi.get(self, "email")
338
332
 
339
333
  @email.setter
340
- def email(self, value: Optional[pulumi.Input[str]]):
334
+ def email(self, value: Optional[pulumi.Input[builtins.str]]):
341
335
  pulumi.set(self, "email", value)
342
336
 
343
337
  @property
344
338
  @pulumi.getter(name="firstName")
345
- def first_name(self) -> Optional[pulumi.Input[str]]:
339
+ def first_name(self) -> Optional[pulumi.Input[builtins.str]]:
346
340
  """
347
341
  The user's first name.
348
342
  """
349
343
  return pulumi.get(self, "first_name")
350
344
 
351
345
  @first_name.setter
352
- def first_name(self, value: Optional[pulumi.Input[str]]):
346
+ def first_name(self, value: Optional[pulumi.Input[builtins.str]]):
353
347
  pulumi.set(self, "first_name", value)
354
348
 
355
349
  @property
356
350
  @pulumi.getter(name="lastLoginAt")
357
- def last_login_at(self) -> Optional[pulumi.Input[str]]:
351
+ def last_login_at(self) -> Optional[pulumi.Input[builtins.str]]:
358
352
  """
359
353
  The date of the last login.
360
354
  """
361
355
  return pulumi.get(self, "last_login_at")
362
356
 
363
357
  @last_login_at.setter
364
- def last_login_at(self, value: Optional[pulumi.Input[str]]):
358
+ def last_login_at(self, value: Optional[pulumi.Input[builtins.str]]):
365
359
  pulumi.set(self, "last_login_at", value)
366
360
 
367
361
  @property
368
362
  @pulumi.getter(name="lastName")
369
- def last_name(self) -> Optional[pulumi.Input[str]]:
363
+ def last_name(self) -> Optional[pulumi.Input[builtins.str]]:
370
364
  """
371
365
  The user's last name.
372
366
  """
373
367
  return pulumi.get(self, "last_name")
374
368
 
375
369
  @last_name.setter
376
- def last_name(self, value: Optional[pulumi.Input[str]]):
370
+ def last_name(self, value: Optional[pulumi.Input[builtins.str]]):
377
371
  pulumi.set(self, "last_name", value)
378
372
 
379
373
  @property
380
374
  @pulumi.getter
381
- def locale(self) -> Optional[pulumi.Input[str]]:
375
+ def locale(self) -> Optional[pulumi.Input[builtins.str]]:
382
376
  """
383
377
  The user's locale (e.g., en_US).
384
-
385
- Important: When creating a Guest user, all arguments are ignored, except for `organization_id`, `email` and `tags`.
386
378
  """
387
379
  return pulumi.get(self, "locale")
388
380
 
389
381
  @locale.setter
390
- def locale(self, value: Optional[pulumi.Input[str]]):
382
+ def locale(self, value: Optional[pulumi.Input[builtins.str]]):
391
383
  pulumi.set(self, "locale", value)
392
384
 
393
385
  @property
394
386
  @pulumi.getter
395
- def locked(self) -> Optional[pulumi.Input[bool]]:
387
+ def locked(self) -> Optional[pulumi.Input[builtins.bool]]:
396
388
  """
397
389
  Whether the user is locked.
398
390
  """
399
391
  return pulumi.get(self, "locked")
400
392
 
401
393
  @locked.setter
402
- def locked(self, value: Optional[pulumi.Input[bool]]):
394
+ def locked(self, value: Optional[pulumi.Input[builtins.bool]]):
403
395
  pulumi.set(self, "locked", value)
404
396
 
405
397
  @property
406
398
  @pulumi.getter
407
- def mfa(self) -> Optional[pulumi.Input[bool]]:
399
+ def mfa(self) -> Optional[pulumi.Input[builtins.bool]]:
408
400
  """
409
401
  Whether the MFA is enabled.
410
402
  """
411
403
  return pulumi.get(self, "mfa")
412
404
 
413
405
  @mfa.setter
414
- def mfa(self, value: Optional[pulumi.Input[bool]]):
406
+ def mfa(self, value: Optional[pulumi.Input[builtins.bool]]):
415
407
  pulumi.set(self, "mfa", value)
416
408
 
417
409
  @property
418
410
  @pulumi.getter(name="organizationId")
419
- def organization_id(self) -> Optional[pulumi.Input[str]]:
411
+ def organization_id(self) -> Optional[pulumi.Input[builtins.str]]:
420
412
  """
421
413
  `organization_id`) The ID of the organization the user is associated with.
422
414
  """
423
415
  return pulumi.get(self, "organization_id")
424
416
 
425
417
  @organization_id.setter
426
- def organization_id(self, value: Optional[pulumi.Input[str]]):
418
+ def organization_id(self, value: Optional[pulumi.Input[builtins.str]]):
427
419
  pulumi.set(self, "organization_id", value)
428
420
 
429
421
  @property
430
422
  @pulumi.getter
431
- def password(self) -> Optional[pulumi.Input[str]]:
423
+ def password(self) -> Optional[pulumi.Input[builtins.str]]:
432
424
  """
433
425
  The password for first access.
434
426
  """
435
427
  return pulumi.get(self, "password")
436
428
 
437
429
  @password.setter
438
- def password(self, value: Optional[pulumi.Input[str]]):
430
+ def password(self, value: Optional[pulumi.Input[builtins.str]]):
439
431
  pulumi.set(self, "password", value)
440
432
 
441
433
  @property
442
434
  @pulumi.getter(name="phoneNumber")
443
- def phone_number(self) -> Optional[pulumi.Input[str]]:
435
+ def phone_number(self) -> Optional[pulumi.Input[builtins.str]]:
444
436
  """
445
437
  The user's phone number.
446
438
  """
447
439
  return pulumi.get(self, "phone_number")
448
440
 
449
441
  @phone_number.setter
450
- def phone_number(self, value: Optional[pulumi.Input[str]]):
442
+ def phone_number(self, value: Optional[pulumi.Input[builtins.str]]):
451
443
  pulumi.set(self, "phone_number", value)
452
444
 
453
445
  @property
454
446
  @pulumi.getter(name="sendPasswordEmail")
455
- def send_password_email(self) -> Optional[pulumi.Input[bool]]:
447
+ def send_password_email(self) -> Optional[pulumi.Input[builtins.bool]]:
456
448
  """
457
449
  Whether or not to send an email containing the password for first access.
458
450
  """
459
451
  return pulumi.get(self, "send_password_email")
460
452
 
461
453
  @send_password_email.setter
462
- def send_password_email(self, value: Optional[pulumi.Input[bool]]):
454
+ def send_password_email(self, value: Optional[pulumi.Input[builtins.bool]]):
463
455
  pulumi.set(self, "send_password_email", value)
464
456
 
465
457
  @property
466
458
  @pulumi.getter(name="sendWelcomeEmail")
467
- def send_welcome_email(self) -> Optional[pulumi.Input[bool]]:
459
+ def send_welcome_email(self) -> Optional[pulumi.Input[builtins.bool]]:
468
460
  """
469
461
  Whether or not to send a welcome email that includes onboarding information.
470
462
  """
471
463
  return pulumi.get(self, "send_welcome_email")
472
464
 
473
465
  @send_welcome_email.setter
474
- def send_welcome_email(self, value: Optional[pulumi.Input[bool]]):
466
+ def send_welcome_email(self, value: Optional[pulumi.Input[builtins.bool]]):
475
467
  pulumi.set(self, "send_welcome_email", value)
476
468
 
477
469
  @property
478
470
  @pulumi.getter
479
- def status(self) -> Optional[pulumi.Input[str]]:
471
+ def status(self) -> Optional[pulumi.Input[builtins.str]]:
480
472
  """
481
473
  The status of user invitation. Check the possible values in the [API doc](https://www.scaleway.com/en/developers/api/iam/#path-users-get-a-given-user).
482
474
  """
483
475
  return pulumi.get(self, "status")
484
476
 
485
477
  @status.setter
486
- def status(self, value: Optional[pulumi.Input[str]]):
478
+ def status(self, value: Optional[pulumi.Input[builtins.str]]):
487
479
  pulumi.set(self, "status", value)
488
480
 
489
481
  @property
490
482
  @pulumi.getter
491
- def tags(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
483
+ def tags(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]]:
492
484
  """
493
485
  The tags associated with the user.
494
486
  """
495
487
  return pulumi.get(self, "tags")
496
488
 
497
489
  @tags.setter
498
- def tags(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
490
+ def tags(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]]):
499
491
  pulumi.set(self, "tags", value)
500
492
 
501
493
  @property
502
494
  @pulumi.getter
503
- def type(self) -> Optional[pulumi.Input[str]]:
495
+ def type(self) -> Optional[pulumi.Input[builtins.str]]:
504
496
  """
505
497
  The type of user. Check the possible values in the [API doc](https://www.scaleway.com/en/developers/api/iam/#path-users-get-a-given-user).
506
498
  """
507
499
  return pulumi.get(self, "type")
508
500
 
509
501
  @type.setter
510
- def type(self, value: Optional[pulumi.Input[str]]):
502
+ def type(self, value: Optional[pulumi.Input[builtins.str]]):
511
503
  pulumi.set(self, "type", value)
512
504
 
513
505
  @property
514
506
  @pulumi.getter(name="updatedAt")
515
- def updated_at(self) -> Optional[pulumi.Input[str]]:
507
+ def updated_at(self) -> Optional[pulumi.Input[builtins.str]]:
516
508
  """
517
509
  The date and time of the last update of the IAM user.
518
510
  """
519
511
  return pulumi.get(self, "updated_at")
520
512
 
521
513
  @updated_at.setter
522
- def updated_at(self, value: Optional[pulumi.Input[str]]):
514
+ def updated_at(self, value: Optional[pulumi.Input[builtins.str]]):
523
515
  pulumi.set(self, "updated_at", value)
524
516
 
525
517
  @property
526
518
  @pulumi.getter
527
- def username(self) -> Optional[pulumi.Input[str]]:
519
+ def username(self) -> Optional[pulumi.Input[builtins.str]]:
528
520
  """
529
- The username of the IAM user. When it is set, the user is created as a Member. When it is not set, the user is created as a Guest and the username is set as equal to the email.
521
+ The username of the IAM user.
530
522
  """
531
523
  return pulumi.get(self, "username")
532
524
 
533
525
  @username.setter
534
- def username(self, value: Optional[pulumi.Input[str]]):
526
+ def username(self, value: Optional[pulumi.Input[builtins.str]]):
535
527
  pulumi.set(self, "username", value)
536
528
 
537
529
 
530
+ @pulumi.type_token("scaleway:iam/user:User")
538
531
  class User(pulumi.CustomResource):
539
532
  @overload
540
533
  def __init__(__self__,
541
534
  resource_name: str,
542
535
  opts: Optional[pulumi.ResourceOptions] = None,
543
- email: Optional[pulumi.Input[str]] = None,
544
- first_name: Optional[pulumi.Input[str]] = None,
545
- last_name: Optional[pulumi.Input[str]] = None,
546
- locale: Optional[pulumi.Input[str]] = None,
547
- organization_id: Optional[pulumi.Input[str]] = None,
548
- password: Optional[pulumi.Input[str]] = None,
549
- phone_number: Optional[pulumi.Input[str]] = None,
550
- send_password_email: Optional[pulumi.Input[bool]] = None,
551
- send_welcome_email: Optional[pulumi.Input[bool]] = None,
552
- tags: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
553
- username: Optional[pulumi.Input[str]] = None,
536
+ email: Optional[pulumi.Input[builtins.str]] = None,
537
+ first_name: Optional[pulumi.Input[builtins.str]] = None,
538
+ last_name: Optional[pulumi.Input[builtins.str]] = None,
539
+ locale: Optional[pulumi.Input[builtins.str]] = None,
540
+ organization_id: Optional[pulumi.Input[builtins.str]] = None,
541
+ password: Optional[pulumi.Input[builtins.str]] = None,
542
+ phone_number: Optional[pulumi.Input[builtins.str]] = None,
543
+ send_password_email: Optional[pulumi.Input[builtins.bool]] = None,
544
+ send_welcome_email: Optional[pulumi.Input[builtins.bool]] = None,
545
+ tags: Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]] = None,
546
+ username: Optional[pulumi.Input[builtins.str]] = None,
554
547
  __props__=None):
555
548
  """
556
- Creates and manages Scaleway IAM Users.
549
+ Creates and manages Scaleway IAM [Users](https://www.scaleway.com/en/docs/iam/concepts/#member).
557
550
  For more information, see the [API documentation](https://www.scaleway.com/en/developers/api/iam/#path-users-list-users-of-an-organization).
558
551
 
559
552
  ## Example Usage
560
553
 
561
- ### Guest user
554
+ ### User
562
555
 
563
556
  ```python
564
557
  import pulumi
565
558
  import pulumiverse_scaleway as scaleway
566
559
 
567
- guest = scaleway.iam.User("guest",
560
+ user = scaleway.iam.User("user",
568
561
  email="foo@test.com",
569
- tags=["test-tag"])
562
+ tags=["test-tag"],
563
+ username="foo",
564
+ first_name="Foo",
565
+ last_name="Bar")
570
566
  ```
571
567
 
572
- ### Member user
568
+ ### Multiple users
573
569
 
574
570
  ```python
575
571
  import pulumi
576
572
  import pulumiverse_scaleway as scaleway
577
573
 
578
- member = scaleway.iam.User("member",
579
- email="foo@test.com",
580
- tags=["test-tag"],
581
- username="foo",
582
- first_name="Foo",
583
- last_name="Bar")
574
+ users = [
575
+ {
576
+ "email": "test@test.com",
577
+ "username": "test",
578
+ },
579
+ {
580
+ "email": "test2@test.com",
581
+ "username": "test2",
582
+ },
583
+ ]
584
+ users_user = []
585
+ for range in [{"value": i} for i in range(0, len(users))]:
586
+ users_user.append(scaleway.iam.User(f"users-{range['value']}",
587
+ email=users[range["value"]]["email"],
588
+ username=users[range["value"]]["username"]))
584
589
  ```
585
590
 
586
- When `username` is set, the user is created as a [Member](https://www.scaleway.com/en/docs/iam/concepts/#member). Otherwise, it is created as a [Guest](https://www.scaleway.com/en/docs/iam/concepts/#guest).
587
-
588
591
  ## Import
589
592
 
590
593
  IAM users can be imported using the `{id}`, e.g.
@@ -597,19 +600,17 @@ class User(pulumi.CustomResource):
597
600
 
598
601
  :param str resource_name: The name of the resource.
599
602
  :param pulumi.ResourceOptions opts: Options for the resource.
600
- :param pulumi.Input[str] email: The email of the IAM user. For Guest users, this argument is not editable.
601
- :param pulumi.Input[str] first_name: The user's first name.
602
- :param pulumi.Input[str] last_name: The user's last name.
603
- :param pulumi.Input[str] locale: The user's locale (e.g., en_US).
604
-
605
- Important: When creating a Guest user, all arguments are ignored, except for `organization_id`, `email` and `tags`.
606
- :param pulumi.Input[str] organization_id: `organization_id`) The ID of the organization the user is associated with.
607
- :param pulumi.Input[str] password: The password for first access.
608
- :param pulumi.Input[str] phone_number: The user's phone number.
609
- :param pulumi.Input[bool] send_password_email: Whether or not to send an email containing the password for first access.
610
- :param pulumi.Input[bool] send_welcome_email: Whether or not to send a welcome email that includes onboarding information.
611
- :param pulumi.Input[Sequence[pulumi.Input[str]]] tags: The tags associated with the user.
612
- :param pulumi.Input[str] username: The username of the IAM user. When it is set, the user is created as a Member. When it is not set, the user is created as a Guest and the username is set as equal to the email.
603
+ :param pulumi.Input[builtins.str] email: The email of the IAM user. For Guest users, this argument is not editable.
604
+ :param pulumi.Input[builtins.str] first_name: The user's first name.
605
+ :param pulumi.Input[builtins.str] last_name: The user's last name.
606
+ :param pulumi.Input[builtins.str] locale: The user's locale (e.g., en_US).
607
+ :param pulumi.Input[builtins.str] organization_id: `organization_id`) The ID of the organization the user is associated with.
608
+ :param pulumi.Input[builtins.str] password: The password for first access.
609
+ :param pulumi.Input[builtins.str] phone_number: The user's phone number.
610
+ :param pulumi.Input[builtins.bool] send_password_email: Whether or not to send an email containing the password for first access.
611
+ :param pulumi.Input[builtins.bool] send_welcome_email: Whether or not to send a welcome email that includes onboarding information.
612
+ :param pulumi.Input[Sequence[pulumi.Input[builtins.str]]] tags: The tags associated with the user.
613
+ :param pulumi.Input[builtins.str] username: The username of the IAM user.
613
614
  """
614
615
  ...
615
616
  @overload
@@ -618,38 +619,48 @@ class User(pulumi.CustomResource):
618
619
  args: UserArgs,
619
620
  opts: Optional[pulumi.ResourceOptions] = None):
620
621
  """
621
- Creates and manages Scaleway IAM Users.
622
+ Creates and manages Scaleway IAM [Users](https://www.scaleway.com/en/docs/iam/concepts/#member).
622
623
  For more information, see the [API documentation](https://www.scaleway.com/en/developers/api/iam/#path-users-list-users-of-an-organization).
623
624
 
624
625
  ## Example Usage
625
626
 
626
- ### Guest user
627
+ ### User
627
628
 
628
629
  ```python
629
630
  import pulumi
630
631
  import pulumiverse_scaleway as scaleway
631
632
 
632
- guest = scaleway.iam.User("guest",
633
+ user = scaleway.iam.User("user",
633
634
  email="foo@test.com",
634
- tags=["test-tag"])
635
+ tags=["test-tag"],
636
+ username="foo",
637
+ first_name="Foo",
638
+ last_name="Bar")
635
639
  ```
636
640
 
637
- ### Member user
641
+ ### Multiple users
638
642
 
639
643
  ```python
640
644
  import pulumi
641
645
  import pulumiverse_scaleway as scaleway
642
646
 
643
- member = scaleway.iam.User("member",
644
- email="foo@test.com",
645
- tags=["test-tag"],
646
- username="foo",
647
- first_name="Foo",
648
- last_name="Bar")
647
+ users = [
648
+ {
649
+ "email": "test@test.com",
650
+ "username": "test",
651
+ },
652
+ {
653
+ "email": "test2@test.com",
654
+ "username": "test2",
655
+ },
656
+ ]
657
+ users_user = []
658
+ for range in [{"value": i} for i in range(0, len(users))]:
659
+ users_user.append(scaleway.iam.User(f"users-{range['value']}",
660
+ email=users[range["value"]]["email"],
661
+ username=users[range["value"]]["username"]))
649
662
  ```
650
663
 
651
- When `username` is set, the user is created as a [Member](https://www.scaleway.com/en/docs/iam/concepts/#member). Otherwise, it is created as a [Guest](https://www.scaleway.com/en/docs/iam/concepts/#guest).
652
-
653
664
  ## Import
654
665
 
655
666
  IAM users can be imported using the `{id}`, e.g.
@@ -675,17 +686,17 @@ class User(pulumi.CustomResource):
675
686
  def _internal_init(__self__,
676
687
  resource_name: str,
677
688
  opts: Optional[pulumi.ResourceOptions] = None,
678
- email: Optional[pulumi.Input[str]] = None,
679
- first_name: Optional[pulumi.Input[str]] = None,
680
- last_name: Optional[pulumi.Input[str]] = None,
681
- locale: Optional[pulumi.Input[str]] = None,
682
- organization_id: Optional[pulumi.Input[str]] = None,
683
- password: Optional[pulumi.Input[str]] = None,
684
- phone_number: Optional[pulumi.Input[str]] = None,
685
- send_password_email: Optional[pulumi.Input[bool]] = None,
686
- send_welcome_email: Optional[pulumi.Input[bool]] = None,
687
- tags: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
688
- username: Optional[pulumi.Input[str]] = None,
689
+ email: Optional[pulumi.Input[builtins.str]] = None,
690
+ first_name: Optional[pulumi.Input[builtins.str]] = None,
691
+ last_name: Optional[pulumi.Input[builtins.str]] = None,
692
+ locale: Optional[pulumi.Input[builtins.str]] = None,
693
+ organization_id: Optional[pulumi.Input[builtins.str]] = None,
694
+ password: Optional[pulumi.Input[builtins.str]] = None,
695
+ phone_number: Optional[pulumi.Input[builtins.str]] = None,
696
+ send_password_email: Optional[pulumi.Input[builtins.bool]] = None,
697
+ send_welcome_email: Optional[pulumi.Input[builtins.bool]] = None,
698
+ tags: Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]] = None,
699
+ username: Optional[pulumi.Input[builtins.str]] = None,
689
700
  __props__=None):
690
701
  opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts)
691
702
  if not isinstance(opts, pulumi.ResourceOptions):
@@ -702,11 +713,13 @@ class User(pulumi.CustomResource):
702
713
  __props__.__dict__["last_name"] = last_name
703
714
  __props__.__dict__["locale"] = locale
704
715
  __props__.__dict__["organization_id"] = organization_id
705
- __props__.__dict__["password"] = password
716
+ __props__.__dict__["password"] = None if password is None else pulumi.Output.secret(password)
706
717
  __props__.__dict__["phone_number"] = phone_number
707
718
  __props__.__dict__["send_password_email"] = send_password_email
708
719
  __props__.__dict__["send_welcome_email"] = send_welcome_email
709
720
  __props__.__dict__["tags"] = tags
721
+ if username is None and not opts.urn:
722
+ raise TypeError("Missing required property 'username'")
710
723
  __props__.__dict__["username"] = username
711
724
  __props__.__dict__["account_root_user_id"] = None
712
725
  __props__.__dict__["created_at"] = None
@@ -719,6 +732,8 @@ class User(pulumi.CustomResource):
719
732
  __props__.__dict__["updated_at"] = None
720
733
  alias_opts = pulumi.ResourceOptions(aliases=[pulumi.Alias(type_="scaleway:index/iamUser:IamUser")])
721
734
  opts = pulumi.ResourceOptions.merge(opts, alias_opts)
735
+ secret_opts = pulumi.ResourceOptions(additional_secret_outputs=["password"])
736
+ opts = pulumi.ResourceOptions.merge(opts, secret_opts)
722
737
  super(User, __self__).__init__(
723
738
  'scaleway:iam/user:User',
724
739
  resource_name,
@@ -729,26 +744,26 @@ class User(pulumi.CustomResource):
729
744
  def get(resource_name: str,
730
745
  id: pulumi.Input[str],
731
746
  opts: Optional[pulumi.ResourceOptions] = None,
732
- account_root_user_id: Optional[pulumi.Input[str]] = None,
733
- created_at: Optional[pulumi.Input[str]] = None,
734
- deletable: Optional[pulumi.Input[bool]] = None,
735
- email: Optional[pulumi.Input[str]] = None,
736
- first_name: Optional[pulumi.Input[str]] = None,
737
- last_login_at: Optional[pulumi.Input[str]] = None,
738
- last_name: Optional[pulumi.Input[str]] = None,
739
- locale: Optional[pulumi.Input[str]] = None,
740
- locked: Optional[pulumi.Input[bool]] = None,
741
- mfa: Optional[pulumi.Input[bool]] = None,
742
- organization_id: Optional[pulumi.Input[str]] = None,
743
- password: Optional[pulumi.Input[str]] = None,
744
- phone_number: Optional[pulumi.Input[str]] = None,
745
- send_password_email: Optional[pulumi.Input[bool]] = None,
746
- send_welcome_email: Optional[pulumi.Input[bool]] = None,
747
- status: Optional[pulumi.Input[str]] = None,
748
- tags: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
749
- type: Optional[pulumi.Input[str]] = None,
750
- updated_at: Optional[pulumi.Input[str]] = None,
751
- username: Optional[pulumi.Input[str]] = None) -> 'User':
747
+ account_root_user_id: Optional[pulumi.Input[builtins.str]] = None,
748
+ created_at: Optional[pulumi.Input[builtins.str]] = None,
749
+ deletable: Optional[pulumi.Input[builtins.bool]] = None,
750
+ email: Optional[pulumi.Input[builtins.str]] = None,
751
+ first_name: Optional[pulumi.Input[builtins.str]] = None,
752
+ last_login_at: Optional[pulumi.Input[builtins.str]] = None,
753
+ last_name: Optional[pulumi.Input[builtins.str]] = None,
754
+ locale: Optional[pulumi.Input[builtins.str]] = None,
755
+ locked: Optional[pulumi.Input[builtins.bool]] = None,
756
+ mfa: Optional[pulumi.Input[builtins.bool]] = None,
757
+ organization_id: Optional[pulumi.Input[builtins.str]] = None,
758
+ password: Optional[pulumi.Input[builtins.str]] = None,
759
+ phone_number: Optional[pulumi.Input[builtins.str]] = None,
760
+ send_password_email: Optional[pulumi.Input[builtins.bool]] = None,
761
+ send_welcome_email: Optional[pulumi.Input[builtins.bool]] = None,
762
+ status: Optional[pulumi.Input[builtins.str]] = None,
763
+ tags: Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]] = None,
764
+ type: Optional[pulumi.Input[builtins.str]] = None,
765
+ updated_at: Optional[pulumi.Input[builtins.str]] = None,
766
+ username: Optional[pulumi.Input[builtins.str]] = None) -> 'User':
752
767
  """
753
768
  Get an existing User resource's state with the given name, id, and optional extra
754
769
  properties used to qualify the lookup.
@@ -756,28 +771,26 @@ class User(pulumi.CustomResource):
756
771
  :param str resource_name: The unique name of the resulting resource.
757
772
  :param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
758
773
  :param pulumi.ResourceOptions opts: Options for the resource.
759
- :param pulumi.Input[str] account_root_user_id: The ID of the account root user associated with the user.
760
- :param pulumi.Input[str] created_at: The date and time of the creation of the IAM user.
761
- :param pulumi.Input[bool] deletable: Whether the IAM user is deletable.
762
- :param pulumi.Input[str] email: The email of the IAM user. For Guest users, this argument is not editable.
763
- :param pulumi.Input[str] first_name: The user's first name.
764
- :param pulumi.Input[str] last_login_at: The date of the last login.
765
- :param pulumi.Input[str] last_name: The user's last name.
766
- :param pulumi.Input[str] locale: The user's locale (e.g., en_US).
767
-
768
- Important: When creating a Guest user, all arguments are ignored, except for `organization_id`, `email` and `tags`.
769
- :param pulumi.Input[bool] locked: Whether the user is locked.
770
- :param pulumi.Input[bool] mfa: Whether the MFA is enabled.
771
- :param pulumi.Input[str] organization_id: `organization_id`) The ID of the organization the user is associated with.
772
- :param pulumi.Input[str] password: The password for first access.
773
- :param pulumi.Input[str] phone_number: The user's phone number.
774
- :param pulumi.Input[bool] send_password_email: Whether or not to send an email containing the password for first access.
775
- :param pulumi.Input[bool] send_welcome_email: Whether or not to send a welcome email that includes onboarding information.
776
- :param pulumi.Input[str] status: The status of user invitation. Check the possible values in the [API doc](https://www.scaleway.com/en/developers/api/iam/#path-users-get-a-given-user).
777
- :param pulumi.Input[Sequence[pulumi.Input[str]]] tags: The tags associated with the user.
778
- :param pulumi.Input[str] type: The type of user. Check the possible values in the [API doc](https://www.scaleway.com/en/developers/api/iam/#path-users-get-a-given-user).
779
- :param pulumi.Input[str] updated_at: The date and time of the last update of the IAM user.
780
- :param pulumi.Input[str] username: The username of the IAM user. When it is set, the user is created as a Member. When it is not set, the user is created as a Guest and the username is set as equal to the email.
774
+ :param pulumi.Input[builtins.str] account_root_user_id: The ID of the account root user associated with the user.
775
+ :param pulumi.Input[builtins.str] created_at: The date and time of the creation of the IAM user.
776
+ :param pulumi.Input[builtins.bool] deletable: Whether the IAM user is deletable.
777
+ :param pulumi.Input[builtins.str] email: The email of the IAM user. For Guest users, this argument is not editable.
778
+ :param pulumi.Input[builtins.str] first_name: The user's first name.
779
+ :param pulumi.Input[builtins.str] last_login_at: The date of the last login.
780
+ :param pulumi.Input[builtins.str] last_name: The user's last name.
781
+ :param pulumi.Input[builtins.str] locale: The user's locale (e.g., en_US).
782
+ :param pulumi.Input[builtins.bool] locked: Whether the user is locked.
783
+ :param pulumi.Input[builtins.bool] mfa: Whether the MFA is enabled.
784
+ :param pulumi.Input[builtins.str] organization_id: `organization_id`) The ID of the organization the user is associated with.
785
+ :param pulumi.Input[builtins.str] password: The password for first access.
786
+ :param pulumi.Input[builtins.str] phone_number: The user's phone number.
787
+ :param pulumi.Input[builtins.bool] send_password_email: Whether or not to send an email containing the password for first access.
788
+ :param pulumi.Input[builtins.bool] send_welcome_email: Whether or not to send a welcome email that includes onboarding information.
789
+ :param pulumi.Input[builtins.str] status: The status of user invitation. Check the possible values in the [API doc](https://www.scaleway.com/en/developers/api/iam/#path-users-get-a-given-user).
790
+ :param pulumi.Input[Sequence[pulumi.Input[builtins.str]]] tags: The tags associated with the user.
791
+ :param pulumi.Input[builtins.str] type: The type of user. Check the possible values in the [API doc](https://www.scaleway.com/en/developers/api/iam/#path-users-get-a-given-user).
792
+ :param pulumi.Input[builtins.str] updated_at: The date and time of the last update of the IAM user.
793
+ :param pulumi.Input[builtins.str] username: The username of the IAM user.
781
794
  """
782
795
  opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
783
796
 
@@ -807,7 +820,7 @@ class User(pulumi.CustomResource):
807
820
 
808
821
  @property
809
822
  @pulumi.getter(name="accountRootUserId")
810
- def account_root_user_id(self) -> pulumi.Output[str]:
823
+ def account_root_user_id(self) -> pulumi.Output[builtins.str]:
811
824
  """
812
825
  The ID of the account root user associated with the user.
813
826
  """
@@ -815,7 +828,7 @@ class User(pulumi.CustomResource):
815
828
 
816
829
  @property
817
830
  @pulumi.getter(name="createdAt")
818
- def created_at(self) -> pulumi.Output[str]:
831
+ def created_at(self) -> pulumi.Output[builtins.str]:
819
832
  """
820
833
  The date and time of the creation of the IAM user.
821
834
  """
@@ -823,7 +836,7 @@ class User(pulumi.CustomResource):
823
836
 
824
837
  @property
825
838
  @pulumi.getter
826
- def deletable(self) -> pulumi.Output[bool]:
839
+ def deletable(self) -> pulumi.Output[builtins.bool]:
827
840
  """
828
841
  Whether the IAM user is deletable.
829
842
  """
@@ -831,7 +844,7 @@ class User(pulumi.CustomResource):
831
844
 
832
845
  @property
833
846
  @pulumi.getter
834
- def email(self) -> pulumi.Output[str]:
847
+ def email(self) -> pulumi.Output[builtins.str]:
835
848
  """
836
849
  The email of the IAM user. For Guest users, this argument is not editable.
837
850
  """
@@ -839,7 +852,7 @@ class User(pulumi.CustomResource):
839
852
 
840
853
  @property
841
854
  @pulumi.getter(name="firstName")
842
- def first_name(self) -> pulumi.Output[Optional[str]]:
855
+ def first_name(self) -> pulumi.Output[Optional[builtins.str]]:
843
856
  """
844
857
  The user's first name.
845
858
  """
@@ -847,7 +860,7 @@ class User(pulumi.CustomResource):
847
860
 
848
861
  @property
849
862
  @pulumi.getter(name="lastLoginAt")
850
- def last_login_at(self) -> pulumi.Output[str]:
863
+ def last_login_at(self) -> pulumi.Output[builtins.str]:
851
864
  """
852
865
  The date of the last login.
853
866
  """
@@ -855,7 +868,7 @@ class User(pulumi.CustomResource):
855
868
 
856
869
  @property
857
870
  @pulumi.getter(name="lastName")
858
- def last_name(self) -> pulumi.Output[Optional[str]]:
871
+ def last_name(self) -> pulumi.Output[Optional[builtins.str]]:
859
872
  """
860
873
  The user's last name.
861
874
  """
@@ -863,17 +876,15 @@ class User(pulumi.CustomResource):
863
876
 
864
877
  @property
865
878
  @pulumi.getter
866
- def locale(self) -> pulumi.Output[str]:
879
+ def locale(self) -> pulumi.Output[builtins.str]:
867
880
  """
868
881
  The user's locale (e.g., en_US).
869
-
870
- Important: When creating a Guest user, all arguments are ignored, except for `organization_id`, `email` and `tags`.
871
882
  """
872
883
  return pulumi.get(self, "locale")
873
884
 
874
885
  @property
875
886
  @pulumi.getter
876
- def locked(self) -> pulumi.Output[bool]:
887
+ def locked(self) -> pulumi.Output[builtins.bool]:
877
888
  """
878
889
  Whether the user is locked.
879
890
  """
@@ -881,7 +892,7 @@ class User(pulumi.CustomResource):
881
892
 
882
893
  @property
883
894
  @pulumi.getter
884
- def mfa(self) -> pulumi.Output[bool]:
895
+ def mfa(self) -> pulumi.Output[builtins.bool]:
885
896
  """
886
897
  Whether the MFA is enabled.
887
898
  """
@@ -889,7 +900,7 @@ class User(pulumi.CustomResource):
889
900
 
890
901
  @property
891
902
  @pulumi.getter(name="organizationId")
892
- def organization_id(self) -> pulumi.Output[str]:
903
+ def organization_id(self) -> pulumi.Output[builtins.str]:
893
904
  """
894
905
  `organization_id`) The ID of the organization the user is associated with.
895
906
  """
@@ -897,7 +908,7 @@ class User(pulumi.CustomResource):
897
908
 
898
909
  @property
899
910
  @pulumi.getter
900
- def password(self) -> pulumi.Output[Optional[str]]:
911
+ def password(self) -> pulumi.Output[Optional[builtins.str]]:
901
912
  """
902
913
  The password for first access.
903
914
  """
@@ -905,7 +916,7 @@ class User(pulumi.CustomResource):
905
916
 
906
917
  @property
907
918
  @pulumi.getter(name="phoneNumber")
908
- def phone_number(self) -> pulumi.Output[Optional[str]]:
919
+ def phone_number(self) -> pulumi.Output[Optional[builtins.str]]:
909
920
  """
910
921
  The user's phone number.
911
922
  """
@@ -913,7 +924,7 @@ class User(pulumi.CustomResource):
913
924
 
914
925
  @property
915
926
  @pulumi.getter(name="sendPasswordEmail")
916
- def send_password_email(self) -> pulumi.Output[Optional[bool]]:
927
+ def send_password_email(self) -> pulumi.Output[Optional[builtins.bool]]:
917
928
  """
918
929
  Whether or not to send an email containing the password for first access.
919
930
  """
@@ -921,7 +932,7 @@ class User(pulumi.CustomResource):
921
932
 
922
933
  @property
923
934
  @pulumi.getter(name="sendWelcomeEmail")
924
- def send_welcome_email(self) -> pulumi.Output[Optional[bool]]:
935
+ def send_welcome_email(self) -> pulumi.Output[Optional[builtins.bool]]:
925
936
  """
926
937
  Whether or not to send a welcome email that includes onboarding information.
927
938
  """
@@ -929,7 +940,7 @@ class User(pulumi.CustomResource):
929
940
 
930
941
  @property
931
942
  @pulumi.getter
932
- def status(self) -> pulumi.Output[str]:
943
+ def status(self) -> pulumi.Output[builtins.str]:
933
944
  """
934
945
  The status of user invitation. Check the possible values in the [API doc](https://www.scaleway.com/en/developers/api/iam/#path-users-get-a-given-user).
935
946
  """
@@ -937,7 +948,7 @@ class User(pulumi.CustomResource):
937
948
 
938
949
  @property
939
950
  @pulumi.getter
940
- def tags(self) -> pulumi.Output[Optional[Sequence[str]]]:
951
+ def tags(self) -> pulumi.Output[Optional[Sequence[builtins.str]]]:
941
952
  """
942
953
  The tags associated with the user.
943
954
  """
@@ -945,7 +956,7 @@ class User(pulumi.CustomResource):
945
956
 
946
957
  @property
947
958
  @pulumi.getter
948
- def type(self) -> pulumi.Output[str]:
959
+ def type(self) -> pulumi.Output[builtins.str]:
949
960
  """
950
961
  The type of user. Check the possible values in the [API doc](https://www.scaleway.com/en/developers/api/iam/#path-users-get-a-given-user).
951
962
  """
@@ -953,7 +964,7 @@ class User(pulumi.CustomResource):
953
964
 
954
965
  @property
955
966
  @pulumi.getter(name="updatedAt")
956
- def updated_at(self) -> pulumi.Output[str]:
967
+ def updated_at(self) -> pulumi.Output[builtins.str]:
957
968
  """
958
969
  The date and time of the last update of the IAM user.
959
970
  """
@@ -961,9 +972,9 @@ class User(pulumi.CustomResource):
961
972
 
962
973
  @property
963
974
  @pulumi.getter
964
- def username(self) -> pulumi.Output[str]:
975
+ def username(self) -> pulumi.Output[builtins.str]:
965
976
  """
966
- The username of the IAM user. When it is set, the user is created as a Member. When it is not set, the user is created as a Guest and the username is set as equal to the email.
977
+ The username of the IAM user.
967
978
  """
968
979
  return pulumi.get(self, "username")
969
980