pulumiverse-scaleway 1.16.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.

Potentially problematic release.


This version of pulumiverse-scaleway might be problematic. Click here for more details.

Files changed (205) hide show
  1. pulumiverse_scaleway/__init__.py +1073 -0
  2. pulumiverse_scaleway/_inputs.py +8665 -0
  3. pulumiverse_scaleway/_utilities.py +327 -0
  4. pulumiverse_scaleway/account_project.py +316 -0
  5. pulumiverse_scaleway/account_ssh_key.py +450 -0
  6. pulumiverse_scaleway/apple_silicon_server.py +564 -0
  7. pulumiverse_scaleway/baremetal_server.py +1390 -0
  8. pulumiverse_scaleway/block_snapshot.py +391 -0
  9. pulumiverse_scaleway/block_volume.py +521 -0
  10. pulumiverse_scaleway/cockpit.py +299 -0
  11. pulumiverse_scaleway/cockpit_alert_manager.py +345 -0
  12. pulumiverse_scaleway/cockpit_grafana_user.py +326 -0
  13. pulumiverse_scaleway/cockpit_source.py +481 -0
  14. pulumiverse_scaleway/cockpit_token.py +461 -0
  15. pulumiverse_scaleway/config/__init__.py +8 -0
  16. pulumiverse_scaleway/config/__init__.pyi +56 -0
  17. pulumiverse_scaleway/config/vars.py +78 -0
  18. pulumiverse_scaleway/container.py +1387 -0
  19. pulumiverse_scaleway/container_cron.py +493 -0
  20. pulumiverse_scaleway/container_domain.py +400 -0
  21. pulumiverse_scaleway/container_namespace.py +589 -0
  22. pulumiverse_scaleway/container_token.py +454 -0
  23. pulumiverse_scaleway/container_trigger.py +478 -0
  24. pulumiverse_scaleway/database.py +407 -0
  25. pulumiverse_scaleway/database_acl.py +332 -0
  26. pulumiverse_scaleway/database_backup.py +574 -0
  27. pulumiverse_scaleway/database_instance.py +1636 -0
  28. pulumiverse_scaleway/database_privilege.py +422 -0
  29. pulumiverse_scaleway/database_read_replica.py +528 -0
  30. pulumiverse_scaleway/database_user.py +446 -0
  31. pulumiverse_scaleway/documentdb_database.py +450 -0
  32. pulumiverse_scaleway/documentdb_instance.py +812 -0
  33. pulumiverse_scaleway/documentdb_private_network_endpoint.py +352 -0
  34. pulumiverse_scaleway/documentdb_privilege.py +402 -0
  35. pulumiverse_scaleway/documentdb_read_replica.py +405 -0
  36. pulumiverse_scaleway/documentdb_user.py +442 -0
  37. pulumiverse_scaleway/domain_record.py +1074 -0
  38. pulumiverse_scaleway/domain_zone.py +458 -0
  39. pulumiverse_scaleway/flexible_ip.py +702 -0
  40. pulumiverse_scaleway/flexible_ip_mac_address.py +510 -0
  41. pulumiverse_scaleway/function.py +1145 -0
  42. pulumiverse_scaleway/function_cron.py +480 -0
  43. pulumiverse_scaleway/function_domain.py +361 -0
  44. pulumiverse_scaleway/function_namespace.py +533 -0
  45. pulumiverse_scaleway/function_token.py +462 -0
  46. pulumiverse_scaleway/function_trigger.py +478 -0
  47. pulumiverse_scaleway/get_account_project.py +164 -0
  48. pulumiverse_scaleway/get_account_ssh_key.py +201 -0
  49. pulumiverse_scaleway/get_availability_zones.py +131 -0
  50. pulumiverse_scaleway/get_baremetal_offer.py +245 -0
  51. pulumiverse_scaleway/get_baremetal_option.py +168 -0
  52. pulumiverse_scaleway/get_baremetal_os.py +174 -0
  53. pulumiverse_scaleway/get_baremetal_server.py +411 -0
  54. pulumiverse_scaleway/get_billing_consumptions.py +134 -0
  55. pulumiverse_scaleway/get_billing_invoices.py +154 -0
  56. pulumiverse_scaleway/get_block_snapshot.py +170 -0
  57. pulumiverse_scaleway/get_block_volume.py +186 -0
  58. pulumiverse_scaleway/get_cockpit.py +179 -0
  59. pulumiverse_scaleway/get_cockpit_plan.py +113 -0
  60. pulumiverse_scaleway/get_config.py +180 -0
  61. pulumiverse_scaleway/get_container.py +502 -0
  62. pulumiverse_scaleway/get_container_namespace.py +262 -0
  63. pulumiverse_scaleway/get_database.py +187 -0
  64. pulumiverse_scaleway/get_database_acl.py +143 -0
  65. pulumiverse_scaleway/get_database_backup.py +253 -0
  66. pulumiverse_scaleway/get_database_instance.py +404 -0
  67. pulumiverse_scaleway/get_database_privilege.py +181 -0
  68. pulumiverse_scaleway/get_documentdb_database.py +198 -0
  69. pulumiverse_scaleway/get_documentdb_instance.py +245 -0
  70. pulumiverse_scaleway/get_documentdb_load_balancer_endpoint.py +198 -0
  71. pulumiverse_scaleway/get_domain_record.py +334 -0
  72. pulumiverse_scaleway/get_domain_zone.py +225 -0
  73. pulumiverse_scaleway/get_flexible_ip.py +247 -0
  74. pulumiverse_scaleway/get_flexible_ips.py +240 -0
  75. pulumiverse_scaleway/get_function.py +357 -0
  76. pulumiverse_scaleway/get_function_namespace.py +227 -0
  77. pulumiverse_scaleway/get_iam_api_key.py +210 -0
  78. pulumiverse_scaleway/get_iam_application.py +210 -0
  79. pulumiverse_scaleway/get_iam_group.py +236 -0
  80. pulumiverse_scaleway/get_iam_ssh_key.py +212 -0
  81. pulumiverse_scaleway/get_iam_user.py +157 -0
  82. pulumiverse_scaleway/get_instance_image.py +305 -0
  83. pulumiverse_scaleway/get_instance_ip.py +204 -0
  84. pulumiverse_scaleway/get_instance_placement_group.py +212 -0
  85. pulumiverse_scaleway/get_instance_private_nic.py +215 -0
  86. pulumiverse_scaleway/get_instance_security_group.py +268 -0
  87. pulumiverse_scaleway/get_instance_server.py +502 -0
  88. pulumiverse_scaleway/get_instance_servers.py +187 -0
  89. pulumiverse_scaleway/get_instance_snapshot.py +248 -0
  90. pulumiverse_scaleway/get_instance_volume.py +215 -0
  91. pulumiverse_scaleway/get_iot_device.py +257 -0
  92. pulumiverse_scaleway/get_iot_hub.py +322 -0
  93. pulumiverse_scaleway/get_ipam_ip.py +419 -0
  94. pulumiverse_scaleway/get_ipam_ips.py +358 -0
  95. pulumiverse_scaleway/get_k8s_version.py +196 -0
  96. pulumiverse_scaleway/get_kubernetes_cluster.py +417 -0
  97. pulumiverse_scaleway/get_kubernetes_node_pool.py +436 -0
  98. pulumiverse_scaleway/get_lb_acls.py +198 -0
  99. pulumiverse_scaleway/get_lb_backend.py +486 -0
  100. pulumiverse_scaleway/get_lb_backends.py +196 -0
  101. pulumiverse_scaleway/get_lb_frontend.py +274 -0
  102. pulumiverse_scaleway/get_lb_frontends.py +196 -0
  103. pulumiverse_scaleway/get_lb_ips.py +198 -0
  104. pulumiverse_scaleway/get_lb_route.py +217 -0
  105. pulumiverse_scaleway/get_lb_routes.py +179 -0
  106. pulumiverse_scaleway/get_lbs.py +187 -0
  107. pulumiverse_scaleway/get_loadbalancer.py +339 -0
  108. pulumiverse_scaleway/get_loadbalancer_certificate.py +230 -0
  109. pulumiverse_scaleway/get_loadbalancer_ip.py +222 -0
  110. pulumiverse_scaleway/get_marketplace_image.py +147 -0
  111. pulumiverse_scaleway/get_mnq_sqs.py +150 -0
  112. pulumiverse_scaleway/get_object_bucket.py +278 -0
  113. pulumiverse_scaleway/get_object_bucket_policy.py +157 -0
  114. pulumiverse_scaleway/get_redis_cluster.py +347 -0
  115. pulumiverse_scaleway/get_registry_image.py +239 -0
  116. pulumiverse_scaleway/get_registry_namespace.py +199 -0
  117. pulumiverse_scaleway/get_secret.py +290 -0
  118. pulumiverse_scaleway/get_secret_version.py +303 -0
  119. pulumiverse_scaleway/get_tem_domain.py +367 -0
  120. pulumiverse_scaleway/get_vpc.py +246 -0
  121. pulumiverse_scaleway/get_vpc_gateway_network.py +287 -0
  122. pulumiverse_scaleway/get_vpc_private_network.py +282 -0
  123. pulumiverse_scaleway/get_vpc_public_gateway.py +304 -0
  124. pulumiverse_scaleway/get_vpc_public_gateway_dhcp.py +305 -0
  125. pulumiverse_scaleway/get_vpc_public_gateway_dhcp_reservation.py +382 -0
  126. pulumiverse_scaleway/get_vpc_public_gateway_ip.py +199 -0
  127. pulumiverse_scaleway/get_vpc_public_pat_rule.py +313 -0
  128. pulumiverse_scaleway/get_vpc_routes.py +208 -0
  129. pulumiverse_scaleway/get_vpcs.py +174 -0
  130. pulumiverse_scaleway/get_web_host_offer.py +192 -0
  131. pulumiverse_scaleway/get_webhosting.py +332 -0
  132. pulumiverse_scaleway/iam_api_key.py +620 -0
  133. pulumiverse_scaleway/iam_application.py +417 -0
  134. pulumiverse_scaleway/iam_group.py +566 -0
  135. pulumiverse_scaleway/iam_group_membership.py +323 -0
  136. pulumiverse_scaleway/iam_policy.py +727 -0
  137. pulumiverse_scaleway/iam_ssh_key.py +455 -0
  138. pulumiverse_scaleway/iam_user.py +466 -0
  139. pulumiverse_scaleway/instance_image.py +750 -0
  140. pulumiverse_scaleway/instance_ip.py +483 -0
  141. pulumiverse_scaleway/instance_ip_reverse_dns.py +308 -0
  142. pulumiverse_scaleway/instance_placement_group.py +479 -0
  143. pulumiverse_scaleway/instance_private_nic.py +454 -0
  144. pulumiverse_scaleway/instance_security_group.py +720 -0
  145. pulumiverse_scaleway/instance_security_group_rules.py +439 -0
  146. pulumiverse_scaleway/instance_server.py +1907 -0
  147. pulumiverse_scaleway/instance_snapshot.py +669 -0
  148. pulumiverse_scaleway/instance_user_data.py +435 -0
  149. pulumiverse_scaleway/instance_volume.py +535 -0
  150. pulumiverse_scaleway/iot_device.py +750 -0
  151. pulumiverse_scaleway/iot_hub.py +896 -0
  152. pulumiverse_scaleway/iot_network.py +425 -0
  153. pulumiverse_scaleway/iot_route.py +660 -0
  154. pulumiverse_scaleway/ipam_ip.py +666 -0
  155. pulumiverse_scaleway/ipam_ip_reverse_dns.py +318 -0
  156. pulumiverse_scaleway/job_definition.py +692 -0
  157. pulumiverse_scaleway/kubernetes_cluster.py +1538 -0
  158. pulumiverse_scaleway/kubernetes_node_pool.py +1255 -0
  159. pulumiverse_scaleway/loadbalancer.py +1095 -0
  160. pulumiverse_scaleway/loadbalancer_acl.py +520 -0
  161. pulumiverse_scaleway/loadbalancer_backend.py +1588 -0
  162. pulumiverse_scaleway/loadbalancer_certificate.py +460 -0
  163. pulumiverse_scaleway/loadbalancer_frontend.py +829 -0
  164. pulumiverse_scaleway/loadbalancer_ip.py +514 -0
  165. pulumiverse_scaleway/loadbalancer_route.py +523 -0
  166. pulumiverse_scaleway/mnq_nats_account.py +334 -0
  167. pulumiverse_scaleway/mnq_nats_credentials.py +328 -0
  168. pulumiverse_scaleway/mnq_sns.py +306 -0
  169. pulumiverse_scaleway/mnq_sns_credentials.py +413 -0
  170. pulumiverse_scaleway/mnq_sns_topic.py +659 -0
  171. pulumiverse_scaleway/mnq_sns_topic_subscription.py +699 -0
  172. pulumiverse_scaleway/mnq_sqs.py +304 -0
  173. pulumiverse_scaleway/mnq_sqs_credentials.py +413 -0
  174. pulumiverse_scaleway/mnq_sqs_queue.py +800 -0
  175. pulumiverse_scaleway/object_bucket.py +888 -0
  176. pulumiverse_scaleway/object_bucket_acl.py +592 -0
  177. pulumiverse_scaleway/object_bucket_lock_configuration.py +393 -0
  178. pulumiverse_scaleway/object_bucket_policy.py +671 -0
  179. pulumiverse_scaleway/object_bucket_website_configuration.py +532 -0
  180. pulumiverse_scaleway/object_item.py +711 -0
  181. pulumiverse_scaleway/outputs.py +11663 -0
  182. pulumiverse_scaleway/provider.py +327 -0
  183. pulumiverse_scaleway/pulumi-plugin.json +6 -0
  184. pulumiverse_scaleway/py.typed +0 -0
  185. pulumiverse_scaleway/redis_cluster.py +1166 -0
  186. pulumiverse_scaleway/registry_namespace.py +458 -0
  187. pulumiverse_scaleway/sdb_database.py +428 -0
  188. pulumiverse_scaleway/secret.py +560 -0
  189. pulumiverse_scaleway/secret_version.py +482 -0
  190. pulumiverse_scaleway/tem_domain.py +950 -0
  191. pulumiverse_scaleway/tem_domain_validation.py +303 -0
  192. pulumiverse_scaleway/vpc.py +536 -0
  193. pulumiverse_scaleway/vpc_gateway_network.py +866 -0
  194. pulumiverse_scaleway/vpc_private_network.py +734 -0
  195. pulumiverse_scaleway/vpc_public_gateway.py +789 -0
  196. pulumiverse_scaleway/vpc_public_gateway_dhcp.py +933 -0
  197. pulumiverse_scaleway/vpc_public_gateway_dhcp_reservation.py +514 -0
  198. pulumiverse_scaleway/vpc_public_gateway_ip.py +457 -0
  199. pulumiverse_scaleway/vpc_public_gateway_ip_reverse_dns.py +306 -0
  200. pulumiverse_scaleway/vpc_public_gateway_pat_rule.py +591 -0
  201. pulumiverse_scaleway/webhosting.py +805 -0
  202. pulumiverse_scaleway-1.16.0.dist-info/METADATA +69 -0
  203. pulumiverse_scaleway-1.16.0.dist-info/RECORD +205 -0
  204. pulumiverse_scaleway-1.16.0.dist-info/WHEEL +5 -0
  205. pulumiverse_scaleway-1.16.0.dist-info/top_level.txt +1 -0
@@ -0,0 +1,466 @@
1
+ # coding=utf-8
2
+ # *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. ***
3
+ # *** Do not edit by hand unless you're certain you know what you are doing! ***
4
+
5
+ import copy
6
+ import warnings
7
+ import sys
8
+ import pulumi
9
+ import pulumi.runtime
10
+ from typing import Any, Mapping, Optional, Sequence, Union, overload
11
+ if sys.version_info >= (3, 11):
12
+ from typing import NotRequired, TypedDict, TypeAlias
13
+ else:
14
+ from typing_extensions import NotRequired, TypedDict, TypeAlias
15
+ from . import _utilities
16
+
17
+ __all__ = ['IamUserArgs', 'IamUser']
18
+
19
+ @pulumi.input_type
20
+ class IamUserArgs:
21
+ def __init__(__self__, *,
22
+ email: pulumi.Input[str],
23
+ organization_id: Optional[pulumi.Input[str]] = None):
24
+ """
25
+ The set of arguments for constructing a IamUser resource.
26
+ :param pulumi.Input[str] email: The email of the IAM user.
27
+ :param pulumi.Input[str] organization_id: `organization_id`) The ID of the organization the user is associated with.
28
+ """
29
+ pulumi.set(__self__, "email", email)
30
+ if organization_id is not None:
31
+ pulumi.set(__self__, "organization_id", organization_id)
32
+
33
+ @property
34
+ @pulumi.getter
35
+ def email(self) -> pulumi.Input[str]:
36
+ """
37
+ The email of the IAM user.
38
+ """
39
+ return pulumi.get(self, "email")
40
+
41
+ @email.setter
42
+ def email(self, value: pulumi.Input[str]):
43
+ pulumi.set(self, "email", value)
44
+
45
+ @property
46
+ @pulumi.getter(name="organizationId")
47
+ def organization_id(self) -> Optional[pulumi.Input[str]]:
48
+ """
49
+ `organization_id`) The ID of the organization the user is associated with.
50
+ """
51
+ return pulumi.get(self, "organization_id")
52
+
53
+ @organization_id.setter
54
+ def organization_id(self, value: Optional[pulumi.Input[str]]):
55
+ pulumi.set(self, "organization_id", value)
56
+
57
+
58
+ @pulumi.input_type
59
+ class _IamUserState:
60
+ def __init__(__self__, *,
61
+ account_root_user_id: Optional[pulumi.Input[str]] = None,
62
+ created_at: Optional[pulumi.Input[str]] = None,
63
+ deletable: Optional[pulumi.Input[bool]] = None,
64
+ email: Optional[pulumi.Input[str]] = None,
65
+ last_login_at: Optional[pulumi.Input[str]] = None,
66
+ mfa: Optional[pulumi.Input[bool]] = None,
67
+ organization_id: Optional[pulumi.Input[str]] = None,
68
+ status: Optional[pulumi.Input[str]] = None,
69
+ type: Optional[pulumi.Input[str]] = None,
70
+ updated_at: Optional[pulumi.Input[str]] = None):
71
+ """
72
+ Input properties used for looking up and filtering IamUser resources.
73
+ :param pulumi.Input[str] account_root_user_id: The ID of the account root user associated with the user.
74
+ :param pulumi.Input[str] created_at: The date and time of the creation of the IAM user.
75
+ :param pulumi.Input[bool] deletable: Whether the IAM user is deletable.
76
+ :param pulumi.Input[str] email: The email of the IAM user.
77
+ :param pulumi.Input[str] last_login_at: The date of the last login.
78
+ :param pulumi.Input[bool] mfa: Whether the MFA is enabled.
79
+ :param pulumi.Input[str] organization_id: `organization_id`) The ID of the organization the user is associated with.
80
+ :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).
81
+ :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).
82
+ :param pulumi.Input[str] updated_at: The date and time of the last update of the IAM user.
83
+ """
84
+ if account_root_user_id is not None:
85
+ pulumi.set(__self__, "account_root_user_id", account_root_user_id)
86
+ if created_at is not None:
87
+ pulumi.set(__self__, "created_at", created_at)
88
+ if deletable is not None:
89
+ pulumi.set(__self__, "deletable", deletable)
90
+ if email is not None:
91
+ pulumi.set(__self__, "email", email)
92
+ if last_login_at is not None:
93
+ pulumi.set(__self__, "last_login_at", last_login_at)
94
+ if mfa is not None:
95
+ pulumi.set(__self__, "mfa", mfa)
96
+ if organization_id is not None:
97
+ pulumi.set(__self__, "organization_id", organization_id)
98
+ if status is not None:
99
+ pulumi.set(__self__, "status", status)
100
+ if type is not None:
101
+ pulumi.set(__self__, "type", type)
102
+ if updated_at is not None:
103
+ pulumi.set(__self__, "updated_at", updated_at)
104
+
105
+ @property
106
+ @pulumi.getter(name="accountRootUserId")
107
+ def account_root_user_id(self) -> Optional[pulumi.Input[str]]:
108
+ """
109
+ The ID of the account root user associated with the user.
110
+ """
111
+ return pulumi.get(self, "account_root_user_id")
112
+
113
+ @account_root_user_id.setter
114
+ def account_root_user_id(self, value: Optional[pulumi.Input[str]]):
115
+ pulumi.set(self, "account_root_user_id", value)
116
+
117
+ @property
118
+ @pulumi.getter(name="createdAt")
119
+ def created_at(self) -> Optional[pulumi.Input[str]]:
120
+ """
121
+ The date and time of the creation of the IAM user.
122
+ """
123
+ return pulumi.get(self, "created_at")
124
+
125
+ @created_at.setter
126
+ def created_at(self, value: Optional[pulumi.Input[str]]):
127
+ pulumi.set(self, "created_at", value)
128
+
129
+ @property
130
+ @pulumi.getter
131
+ def deletable(self) -> Optional[pulumi.Input[bool]]:
132
+ """
133
+ Whether the IAM user is deletable.
134
+ """
135
+ return pulumi.get(self, "deletable")
136
+
137
+ @deletable.setter
138
+ def deletable(self, value: Optional[pulumi.Input[bool]]):
139
+ pulumi.set(self, "deletable", value)
140
+
141
+ @property
142
+ @pulumi.getter
143
+ def email(self) -> Optional[pulumi.Input[str]]:
144
+ """
145
+ The email of the IAM user.
146
+ """
147
+ return pulumi.get(self, "email")
148
+
149
+ @email.setter
150
+ def email(self, value: Optional[pulumi.Input[str]]):
151
+ pulumi.set(self, "email", value)
152
+
153
+ @property
154
+ @pulumi.getter(name="lastLoginAt")
155
+ def last_login_at(self) -> Optional[pulumi.Input[str]]:
156
+ """
157
+ The date of the last login.
158
+ """
159
+ return pulumi.get(self, "last_login_at")
160
+
161
+ @last_login_at.setter
162
+ def last_login_at(self, value: Optional[pulumi.Input[str]]):
163
+ pulumi.set(self, "last_login_at", value)
164
+
165
+ @property
166
+ @pulumi.getter
167
+ def mfa(self) -> Optional[pulumi.Input[bool]]:
168
+ """
169
+ Whether the MFA is enabled.
170
+ """
171
+ return pulumi.get(self, "mfa")
172
+
173
+ @mfa.setter
174
+ def mfa(self, value: Optional[pulumi.Input[bool]]):
175
+ pulumi.set(self, "mfa", value)
176
+
177
+ @property
178
+ @pulumi.getter(name="organizationId")
179
+ def organization_id(self) -> Optional[pulumi.Input[str]]:
180
+ """
181
+ `organization_id`) The ID of the organization the user is associated with.
182
+ """
183
+ return pulumi.get(self, "organization_id")
184
+
185
+ @organization_id.setter
186
+ def organization_id(self, value: Optional[pulumi.Input[str]]):
187
+ pulumi.set(self, "organization_id", value)
188
+
189
+ @property
190
+ @pulumi.getter
191
+ def status(self) -> Optional[pulumi.Input[str]]:
192
+ """
193
+ 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).
194
+ """
195
+ return pulumi.get(self, "status")
196
+
197
+ @status.setter
198
+ def status(self, value: Optional[pulumi.Input[str]]):
199
+ pulumi.set(self, "status", value)
200
+
201
+ @property
202
+ @pulumi.getter
203
+ def type(self) -> Optional[pulumi.Input[str]]:
204
+ """
205
+ 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).
206
+ """
207
+ return pulumi.get(self, "type")
208
+
209
+ @type.setter
210
+ def type(self, value: Optional[pulumi.Input[str]]):
211
+ pulumi.set(self, "type", value)
212
+
213
+ @property
214
+ @pulumi.getter(name="updatedAt")
215
+ def updated_at(self) -> Optional[pulumi.Input[str]]:
216
+ """
217
+ The date and time of the last update of the IAM user.
218
+ """
219
+ return pulumi.get(self, "updated_at")
220
+
221
+ @updated_at.setter
222
+ def updated_at(self, value: Optional[pulumi.Input[str]]):
223
+ pulumi.set(self, "updated_at", value)
224
+
225
+
226
+ class IamUser(pulumi.CustomResource):
227
+ @overload
228
+ def __init__(__self__,
229
+ resource_name: str,
230
+ opts: Optional[pulumi.ResourceOptions] = None,
231
+ email: Optional[pulumi.Input[str]] = None,
232
+ organization_id: Optional[pulumi.Input[str]] = None,
233
+ __props__=None):
234
+ """
235
+ Creates and manages Scaleway IAM Users.
236
+ For more information, see [the documentation](https://www.scaleway.com/en/developers/api/iam/#path-users-list-users-of-an-organization).
237
+
238
+ ## Example Usage
239
+
240
+ ### Basic
241
+
242
+ ```python
243
+ import pulumi
244
+ import pulumiverse_scaleway as scaleway
245
+
246
+ basic = scaleway.IamUser("basic", email="test@test.com")
247
+ ```
248
+
249
+ ## Import
250
+
251
+ IAM users can be imported using the `{id}`, e.g.
252
+
253
+ bash
254
+
255
+ ```sh
256
+ $ pulumi import scaleway:index/iamUser:IamUser basic 11111111-1111-1111-1111-111111111111
257
+ ```
258
+
259
+ :param str resource_name: The name of the resource.
260
+ :param pulumi.ResourceOptions opts: Options for the resource.
261
+ :param pulumi.Input[str] email: The email of the IAM user.
262
+ :param pulumi.Input[str] organization_id: `organization_id`) The ID of the organization the user is associated with.
263
+ """
264
+ ...
265
+ @overload
266
+ def __init__(__self__,
267
+ resource_name: str,
268
+ args: IamUserArgs,
269
+ opts: Optional[pulumi.ResourceOptions] = None):
270
+ """
271
+ Creates and manages Scaleway IAM Users.
272
+ For more information, see [the documentation](https://www.scaleway.com/en/developers/api/iam/#path-users-list-users-of-an-organization).
273
+
274
+ ## Example Usage
275
+
276
+ ### Basic
277
+
278
+ ```python
279
+ import pulumi
280
+ import pulumiverse_scaleway as scaleway
281
+
282
+ basic = scaleway.IamUser("basic", email="test@test.com")
283
+ ```
284
+
285
+ ## Import
286
+
287
+ IAM users can be imported using the `{id}`, e.g.
288
+
289
+ bash
290
+
291
+ ```sh
292
+ $ pulumi import scaleway:index/iamUser:IamUser basic 11111111-1111-1111-1111-111111111111
293
+ ```
294
+
295
+ :param str resource_name: The name of the resource.
296
+ :param IamUserArgs args: The arguments to use to populate this resource's properties.
297
+ :param pulumi.ResourceOptions opts: Options for the resource.
298
+ """
299
+ ...
300
+ def __init__(__self__, resource_name: str, *args, **kwargs):
301
+ resource_args, opts = _utilities.get_resource_args_opts(IamUserArgs, pulumi.ResourceOptions, *args, **kwargs)
302
+ if resource_args is not None:
303
+ __self__._internal_init(resource_name, opts, **resource_args.__dict__)
304
+ else:
305
+ __self__._internal_init(resource_name, *args, **kwargs)
306
+
307
+ def _internal_init(__self__,
308
+ resource_name: str,
309
+ opts: Optional[pulumi.ResourceOptions] = None,
310
+ email: Optional[pulumi.Input[str]] = None,
311
+ organization_id: Optional[pulumi.Input[str]] = None,
312
+ __props__=None):
313
+ opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts)
314
+ if not isinstance(opts, pulumi.ResourceOptions):
315
+ raise TypeError('Expected resource options to be a ResourceOptions instance')
316
+ if opts.id is None:
317
+ if __props__ is not None:
318
+ raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource')
319
+ __props__ = IamUserArgs.__new__(IamUserArgs)
320
+
321
+ if email is None and not opts.urn:
322
+ raise TypeError("Missing required property 'email'")
323
+ __props__.__dict__["email"] = email
324
+ __props__.__dict__["organization_id"] = organization_id
325
+ __props__.__dict__["account_root_user_id"] = None
326
+ __props__.__dict__["created_at"] = None
327
+ __props__.__dict__["deletable"] = None
328
+ __props__.__dict__["last_login_at"] = None
329
+ __props__.__dict__["mfa"] = None
330
+ __props__.__dict__["status"] = None
331
+ __props__.__dict__["type"] = None
332
+ __props__.__dict__["updated_at"] = None
333
+ super(IamUser, __self__).__init__(
334
+ 'scaleway:index/iamUser:IamUser',
335
+ resource_name,
336
+ __props__,
337
+ opts)
338
+
339
+ @staticmethod
340
+ def get(resource_name: str,
341
+ id: pulumi.Input[str],
342
+ opts: Optional[pulumi.ResourceOptions] = None,
343
+ account_root_user_id: Optional[pulumi.Input[str]] = None,
344
+ created_at: Optional[pulumi.Input[str]] = None,
345
+ deletable: Optional[pulumi.Input[bool]] = None,
346
+ email: Optional[pulumi.Input[str]] = None,
347
+ last_login_at: Optional[pulumi.Input[str]] = None,
348
+ mfa: Optional[pulumi.Input[bool]] = None,
349
+ organization_id: Optional[pulumi.Input[str]] = None,
350
+ status: Optional[pulumi.Input[str]] = None,
351
+ type: Optional[pulumi.Input[str]] = None,
352
+ updated_at: Optional[pulumi.Input[str]] = None) -> 'IamUser':
353
+ """
354
+ Get an existing IamUser resource's state with the given name, id, and optional extra
355
+ properties used to qualify the lookup.
356
+
357
+ :param str resource_name: The unique name of the resulting resource.
358
+ :param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
359
+ :param pulumi.ResourceOptions opts: Options for the resource.
360
+ :param pulumi.Input[str] account_root_user_id: The ID of the account root user associated with the user.
361
+ :param pulumi.Input[str] created_at: The date and time of the creation of the IAM user.
362
+ :param pulumi.Input[bool] deletable: Whether the IAM user is deletable.
363
+ :param pulumi.Input[str] email: The email of the IAM user.
364
+ :param pulumi.Input[str] last_login_at: The date of the last login.
365
+ :param pulumi.Input[bool] mfa: Whether the MFA is enabled.
366
+ :param pulumi.Input[str] organization_id: `organization_id`) The ID of the organization the user is associated with.
367
+ :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).
368
+ :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).
369
+ :param pulumi.Input[str] updated_at: The date and time of the last update of the IAM user.
370
+ """
371
+ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
372
+
373
+ __props__ = _IamUserState.__new__(_IamUserState)
374
+
375
+ __props__.__dict__["account_root_user_id"] = account_root_user_id
376
+ __props__.__dict__["created_at"] = created_at
377
+ __props__.__dict__["deletable"] = deletable
378
+ __props__.__dict__["email"] = email
379
+ __props__.__dict__["last_login_at"] = last_login_at
380
+ __props__.__dict__["mfa"] = mfa
381
+ __props__.__dict__["organization_id"] = organization_id
382
+ __props__.__dict__["status"] = status
383
+ __props__.__dict__["type"] = type
384
+ __props__.__dict__["updated_at"] = updated_at
385
+ return IamUser(resource_name, opts=opts, __props__=__props__)
386
+
387
+ @property
388
+ @pulumi.getter(name="accountRootUserId")
389
+ def account_root_user_id(self) -> pulumi.Output[str]:
390
+ """
391
+ The ID of the account root user associated with the user.
392
+ """
393
+ return pulumi.get(self, "account_root_user_id")
394
+
395
+ @property
396
+ @pulumi.getter(name="createdAt")
397
+ def created_at(self) -> pulumi.Output[str]:
398
+ """
399
+ The date and time of the creation of the IAM user.
400
+ """
401
+ return pulumi.get(self, "created_at")
402
+
403
+ @property
404
+ @pulumi.getter
405
+ def deletable(self) -> pulumi.Output[bool]:
406
+ """
407
+ Whether the IAM user is deletable.
408
+ """
409
+ return pulumi.get(self, "deletable")
410
+
411
+ @property
412
+ @pulumi.getter
413
+ def email(self) -> pulumi.Output[str]:
414
+ """
415
+ The email of the IAM user.
416
+ """
417
+ return pulumi.get(self, "email")
418
+
419
+ @property
420
+ @pulumi.getter(name="lastLoginAt")
421
+ def last_login_at(self) -> pulumi.Output[str]:
422
+ """
423
+ The date of the last login.
424
+ """
425
+ return pulumi.get(self, "last_login_at")
426
+
427
+ @property
428
+ @pulumi.getter
429
+ def mfa(self) -> pulumi.Output[bool]:
430
+ """
431
+ Whether the MFA is enabled.
432
+ """
433
+ return pulumi.get(self, "mfa")
434
+
435
+ @property
436
+ @pulumi.getter(name="organizationId")
437
+ def organization_id(self) -> pulumi.Output[str]:
438
+ """
439
+ `organization_id`) The ID of the organization the user is associated with.
440
+ """
441
+ return pulumi.get(self, "organization_id")
442
+
443
+ @property
444
+ @pulumi.getter
445
+ def status(self) -> pulumi.Output[str]:
446
+ """
447
+ 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).
448
+ """
449
+ return pulumi.get(self, "status")
450
+
451
+ @property
452
+ @pulumi.getter
453
+ def type(self) -> pulumi.Output[str]:
454
+ """
455
+ 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).
456
+ """
457
+ return pulumi.get(self, "type")
458
+
459
+ @property
460
+ @pulumi.getter(name="updatedAt")
461
+ def updated_at(self) -> pulumi.Output[str]:
462
+ """
463
+ The date and time of the last update of the IAM user.
464
+ """
465
+ return pulumi.get(self, "updated_at")
466
+