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,236 @@
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__ = [
18
+ 'GetIamGroupResult',
19
+ 'AwaitableGetIamGroupResult',
20
+ 'get_iam_group',
21
+ 'get_iam_group_output',
22
+ ]
23
+
24
+ @pulumi.output_type
25
+ class GetIamGroupResult:
26
+ """
27
+ A collection of values returned by getIamGroup.
28
+ """
29
+ def __init__(__self__, application_ids=None, created_at=None, description=None, external_membership=None, group_id=None, id=None, name=None, organization_id=None, tags=None, updated_at=None, user_ids=None):
30
+ if application_ids and not isinstance(application_ids, list):
31
+ raise TypeError("Expected argument 'application_ids' to be a list")
32
+ pulumi.set(__self__, "application_ids", application_ids)
33
+ if created_at and not isinstance(created_at, str):
34
+ raise TypeError("Expected argument 'created_at' to be a str")
35
+ pulumi.set(__self__, "created_at", created_at)
36
+ if description and not isinstance(description, str):
37
+ raise TypeError("Expected argument 'description' to be a str")
38
+ pulumi.set(__self__, "description", description)
39
+ if external_membership and not isinstance(external_membership, bool):
40
+ raise TypeError("Expected argument 'external_membership' to be a bool")
41
+ pulumi.set(__self__, "external_membership", external_membership)
42
+ if group_id and not isinstance(group_id, str):
43
+ raise TypeError("Expected argument 'group_id' to be a str")
44
+ pulumi.set(__self__, "group_id", group_id)
45
+ if id and not isinstance(id, str):
46
+ raise TypeError("Expected argument 'id' to be a str")
47
+ pulumi.set(__self__, "id", id)
48
+ if name and not isinstance(name, str):
49
+ raise TypeError("Expected argument 'name' to be a str")
50
+ pulumi.set(__self__, "name", name)
51
+ if organization_id and not isinstance(organization_id, str):
52
+ raise TypeError("Expected argument 'organization_id' to be a str")
53
+ pulumi.set(__self__, "organization_id", organization_id)
54
+ if tags and not isinstance(tags, list):
55
+ raise TypeError("Expected argument 'tags' to be a list")
56
+ pulumi.set(__self__, "tags", tags)
57
+ if updated_at and not isinstance(updated_at, str):
58
+ raise TypeError("Expected argument 'updated_at' to be a str")
59
+ pulumi.set(__self__, "updated_at", updated_at)
60
+ if user_ids and not isinstance(user_ids, list):
61
+ raise TypeError("Expected argument 'user_ids' to be a list")
62
+ pulumi.set(__self__, "user_ids", user_ids)
63
+
64
+ @property
65
+ @pulumi.getter(name="applicationIds")
66
+ def application_ids(self) -> Sequence[str]:
67
+ return pulumi.get(self, "application_ids")
68
+
69
+ @property
70
+ @pulumi.getter(name="createdAt")
71
+ def created_at(self) -> str:
72
+ return pulumi.get(self, "created_at")
73
+
74
+ @property
75
+ @pulumi.getter
76
+ def description(self) -> str:
77
+ return pulumi.get(self, "description")
78
+
79
+ @property
80
+ @pulumi.getter(name="externalMembership")
81
+ def external_membership(self) -> bool:
82
+ return pulumi.get(self, "external_membership")
83
+
84
+ @property
85
+ @pulumi.getter(name="groupId")
86
+ def group_id(self) -> Optional[str]:
87
+ return pulumi.get(self, "group_id")
88
+
89
+ @property
90
+ @pulumi.getter
91
+ def id(self) -> str:
92
+ """
93
+ The provider-assigned unique ID for this managed resource.
94
+ """
95
+ return pulumi.get(self, "id")
96
+
97
+ @property
98
+ @pulumi.getter
99
+ def name(self) -> Optional[str]:
100
+ return pulumi.get(self, "name")
101
+
102
+ @property
103
+ @pulumi.getter(name="organizationId")
104
+ def organization_id(self) -> Optional[str]:
105
+ return pulumi.get(self, "organization_id")
106
+
107
+ @property
108
+ @pulumi.getter
109
+ def tags(self) -> Sequence[str]:
110
+ return pulumi.get(self, "tags")
111
+
112
+ @property
113
+ @pulumi.getter(name="updatedAt")
114
+ def updated_at(self) -> str:
115
+ return pulumi.get(self, "updated_at")
116
+
117
+ @property
118
+ @pulumi.getter(name="userIds")
119
+ def user_ids(self) -> Sequence[str]:
120
+ return pulumi.get(self, "user_ids")
121
+
122
+
123
+ class AwaitableGetIamGroupResult(GetIamGroupResult):
124
+ # pylint: disable=using-constant-test
125
+ def __await__(self):
126
+ if False:
127
+ yield self
128
+ return GetIamGroupResult(
129
+ application_ids=self.application_ids,
130
+ created_at=self.created_at,
131
+ description=self.description,
132
+ external_membership=self.external_membership,
133
+ group_id=self.group_id,
134
+ id=self.id,
135
+ name=self.name,
136
+ organization_id=self.organization_id,
137
+ tags=self.tags,
138
+ updated_at=self.updated_at,
139
+ user_ids=self.user_ids)
140
+
141
+
142
+ def get_iam_group(group_id: Optional[str] = None,
143
+ name: Optional[str] = None,
144
+ organization_id: Optional[str] = None,
145
+ opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetIamGroupResult:
146
+ """
147
+ Gets information about an existing IAM group.
148
+
149
+ For more information, refer to the [IAM API documentation](https://developers.scaleway.com/en/products/iam/api/v1alpha1/#applications-83ce5e)
150
+
151
+ ## Example Usage
152
+
153
+ ```python
154
+ import pulumi
155
+ import pulumi_scaleway as scaleway
156
+
157
+ # Get info by name
158
+ find_by_name = scaleway.get_iam_group(name="foobar")
159
+ # Get info by group ID
160
+ find_by_id = scaleway.get_iam_group(group_id="11111111-1111-1111-1111-111111111111")
161
+ ```
162
+
163
+
164
+ :param str group_id: The ID of the IAM group.
165
+
166
+ > **Note** You must specify at least one: `name` and/or `group_id`.
167
+ :param str name: The name of the IAM group.
168
+ :param str organization_id: `organization_id`) The ID of the
169
+ organization the group is associated with.
170
+ """
171
+ __args__ = dict()
172
+ __args__['groupId'] = group_id
173
+ __args__['name'] = name
174
+ __args__['organizationId'] = organization_id
175
+ opts = pulumi.InvokeOptions.merge(_utilities.get_invoke_opts_defaults(), opts)
176
+ __ret__ = pulumi.runtime.invoke('scaleway:index/getIamGroup:getIamGroup', __args__, opts=opts, typ=GetIamGroupResult).value
177
+
178
+ return AwaitableGetIamGroupResult(
179
+ application_ids=pulumi.get(__ret__, 'application_ids'),
180
+ created_at=pulumi.get(__ret__, 'created_at'),
181
+ description=pulumi.get(__ret__, 'description'),
182
+ external_membership=pulumi.get(__ret__, 'external_membership'),
183
+ group_id=pulumi.get(__ret__, 'group_id'),
184
+ id=pulumi.get(__ret__, 'id'),
185
+ name=pulumi.get(__ret__, 'name'),
186
+ organization_id=pulumi.get(__ret__, 'organization_id'),
187
+ tags=pulumi.get(__ret__, 'tags'),
188
+ updated_at=pulumi.get(__ret__, 'updated_at'),
189
+ user_ids=pulumi.get(__ret__, 'user_ids'))
190
+ def get_iam_group_output(group_id: Optional[pulumi.Input[Optional[str]]] = None,
191
+ name: Optional[pulumi.Input[Optional[str]]] = None,
192
+ organization_id: Optional[pulumi.Input[Optional[str]]] = None,
193
+ opts: Optional[pulumi.InvokeOptions] = None) -> pulumi.Output[GetIamGroupResult]:
194
+ """
195
+ Gets information about an existing IAM group.
196
+
197
+ For more information, refer to the [IAM API documentation](https://developers.scaleway.com/en/products/iam/api/v1alpha1/#applications-83ce5e)
198
+
199
+ ## Example Usage
200
+
201
+ ```python
202
+ import pulumi
203
+ import pulumi_scaleway as scaleway
204
+
205
+ # Get info by name
206
+ find_by_name = scaleway.get_iam_group(name="foobar")
207
+ # Get info by group ID
208
+ find_by_id = scaleway.get_iam_group(group_id="11111111-1111-1111-1111-111111111111")
209
+ ```
210
+
211
+
212
+ :param str group_id: The ID of the IAM group.
213
+
214
+ > **Note** You must specify at least one: `name` and/or `group_id`.
215
+ :param str name: The name of the IAM group.
216
+ :param str organization_id: `organization_id`) The ID of the
217
+ organization the group is associated with.
218
+ """
219
+ __args__ = dict()
220
+ __args__['groupId'] = group_id
221
+ __args__['name'] = name
222
+ __args__['organizationId'] = organization_id
223
+ opts = pulumi.InvokeOptions.merge(_utilities.get_invoke_opts_defaults(), opts)
224
+ __ret__ = pulumi.runtime.invoke_output('scaleway:index/getIamGroup:getIamGroup', __args__, opts=opts, typ=GetIamGroupResult)
225
+ return __ret__.apply(lambda __response__: GetIamGroupResult(
226
+ application_ids=pulumi.get(__response__, 'application_ids'),
227
+ created_at=pulumi.get(__response__, 'created_at'),
228
+ description=pulumi.get(__response__, 'description'),
229
+ external_membership=pulumi.get(__response__, 'external_membership'),
230
+ group_id=pulumi.get(__response__, 'group_id'),
231
+ id=pulumi.get(__response__, 'id'),
232
+ name=pulumi.get(__response__, 'name'),
233
+ organization_id=pulumi.get(__response__, 'organization_id'),
234
+ tags=pulumi.get(__response__, 'tags'),
235
+ updated_at=pulumi.get(__response__, 'updated_at'),
236
+ user_ids=pulumi.get(__response__, 'user_ids')))
@@ -0,0 +1,212 @@
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__ = [
18
+ 'GetIamSshKeyResult',
19
+ 'AwaitableGetIamSshKeyResult',
20
+ 'get_iam_ssh_key',
21
+ 'get_iam_ssh_key_output',
22
+ ]
23
+
24
+ @pulumi.output_type
25
+ class GetIamSshKeyResult:
26
+ """
27
+ A collection of values returned by getIamSshKey.
28
+ """
29
+ def __init__(__self__, created_at=None, disabled=None, fingerprint=None, id=None, name=None, organization_id=None, project_id=None, public_key=None, ssh_key_id=None, updated_at=None):
30
+ if created_at and not isinstance(created_at, str):
31
+ raise TypeError("Expected argument 'created_at' to be a str")
32
+ pulumi.set(__self__, "created_at", created_at)
33
+ if disabled and not isinstance(disabled, bool):
34
+ raise TypeError("Expected argument 'disabled' to be a bool")
35
+ pulumi.set(__self__, "disabled", disabled)
36
+ if fingerprint and not isinstance(fingerprint, str):
37
+ raise TypeError("Expected argument 'fingerprint' to be a str")
38
+ pulumi.set(__self__, "fingerprint", fingerprint)
39
+ if id and not isinstance(id, str):
40
+ raise TypeError("Expected argument 'id' to be a str")
41
+ pulumi.set(__self__, "id", id)
42
+ if name and not isinstance(name, str):
43
+ raise TypeError("Expected argument 'name' to be a str")
44
+ pulumi.set(__self__, "name", name)
45
+ if organization_id and not isinstance(organization_id, str):
46
+ raise TypeError("Expected argument 'organization_id' to be a str")
47
+ pulumi.set(__self__, "organization_id", organization_id)
48
+ if project_id and not isinstance(project_id, str):
49
+ raise TypeError("Expected argument 'project_id' to be a str")
50
+ pulumi.set(__self__, "project_id", project_id)
51
+ if public_key and not isinstance(public_key, str):
52
+ raise TypeError("Expected argument 'public_key' to be a str")
53
+ pulumi.set(__self__, "public_key", public_key)
54
+ if ssh_key_id and not isinstance(ssh_key_id, str):
55
+ raise TypeError("Expected argument 'ssh_key_id' to be a str")
56
+ pulumi.set(__self__, "ssh_key_id", ssh_key_id)
57
+ if updated_at and not isinstance(updated_at, str):
58
+ raise TypeError("Expected argument 'updated_at' to be a str")
59
+ pulumi.set(__self__, "updated_at", updated_at)
60
+
61
+ @property
62
+ @pulumi.getter(name="createdAt")
63
+ def created_at(self) -> str:
64
+ """
65
+ The date and time of the creation of the SSH key.
66
+ """
67
+ return pulumi.get(self, "created_at")
68
+
69
+ @property
70
+ @pulumi.getter
71
+ def disabled(self) -> bool:
72
+ """
73
+ The SSH key status.
74
+ """
75
+ return pulumi.get(self, "disabled")
76
+
77
+ @property
78
+ @pulumi.getter
79
+ def fingerprint(self) -> str:
80
+ return pulumi.get(self, "fingerprint")
81
+
82
+ @property
83
+ @pulumi.getter
84
+ def id(self) -> str:
85
+ """
86
+ The provider-assigned unique ID for this managed resource.
87
+ """
88
+ return pulumi.get(self, "id")
89
+
90
+ @property
91
+ @pulumi.getter
92
+ def name(self) -> Optional[str]:
93
+ return pulumi.get(self, "name")
94
+
95
+ @property
96
+ @pulumi.getter(name="organizationId")
97
+ def organization_id(self) -> str:
98
+ """
99
+ The ID of the organization the SSH key is associated with.
100
+ """
101
+ return pulumi.get(self, "organization_id")
102
+
103
+ @property
104
+ @pulumi.getter(name="projectId")
105
+ def project_id(self) -> Optional[str]:
106
+ return pulumi.get(self, "project_id")
107
+
108
+ @property
109
+ @pulumi.getter(name="publicKey")
110
+ def public_key(self) -> str:
111
+ """
112
+ The SSH public key string
113
+ """
114
+ return pulumi.get(self, "public_key")
115
+
116
+ @property
117
+ @pulumi.getter(name="sshKeyId")
118
+ def ssh_key_id(self) -> Optional[str]:
119
+ return pulumi.get(self, "ssh_key_id")
120
+
121
+ @property
122
+ @pulumi.getter(name="updatedAt")
123
+ def updated_at(self) -> str:
124
+ """
125
+ The date and time of the last update of the SSH key.
126
+ """
127
+ return pulumi.get(self, "updated_at")
128
+
129
+
130
+ class AwaitableGetIamSshKeyResult(GetIamSshKeyResult):
131
+ # pylint: disable=using-constant-test
132
+ def __await__(self):
133
+ if False:
134
+ yield self
135
+ return GetIamSshKeyResult(
136
+ created_at=self.created_at,
137
+ disabled=self.disabled,
138
+ fingerprint=self.fingerprint,
139
+ id=self.id,
140
+ name=self.name,
141
+ organization_id=self.organization_id,
142
+ project_id=self.project_id,
143
+ public_key=self.public_key,
144
+ ssh_key_id=self.ssh_key_id,
145
+ updated_at=self.updated_at)
146
+
147
+
148
+ def get_iam_ssh_key(name: Optional[str] = None,
149
+ project_id: Optional[str] = None,
150
+ ssh_key_id: Optional[str] = None,
151
+ opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetIamSshKeyResult:
152
+ """
153
+ Use this data source to get SSH key information based on its ID or name.
154
+
155
+
156
+ :param str name: The SSH key name.
157
+ :param str project_id: `project_id`) The ID of the project the SSH
158
+ key is associated with.
159
+ :param str ssh_key_id: The SSH key id.
160
+
161
+ > **Note** You must specify at least one: `name` and/or `ssh_key_id`.
162
+ """
163
+ __args__ = dict()
164
+ __args__['name'] = name
165
+ __args__['projectId'] = project_id
166
+ __args__['sshKeyId'] = ssh_key_id
167
+ opts = pulumi.InvokeOptions.merge(_utilities.get_invoke_opts_defaults(), opts)
168
+ __ret__ = pulumi.runtime.invoke('scaleway:index/getIamSshKey:getIamSshKey', __args__, opts=opts, typ=GetIamSshKeyResult).value
169
+
170
+ return AwaitableGetIamSshKeyResult(
171
+ created_at=pulumi.get(__ret__, 'created_at'),
172
+ disabled=pulumi.get(__ret__, 'disabled'),
173
+ fingerprint=pulumi.get(__ret__, 'fingerprint'),
174
+ id=pulumi.get(__ret__, 'id'),
175
+ name=pulumi.get(__ret__, 'name'),
176
+ organization_id=pulumi.get(__ret__, 'organization_id'),
177
+ project_id=pulumi.get(__ret__, 'project_id'),
178
+ public_key=pulumi.get(__ret__, 'public_key'),
179
+ ssh_key_id=pulumi.get(__ret__, 'ssh_key_id'),
180
+ updated_at=pulumi.get(__ret__, 'updated_at'))
181
+ def get_iam_ssh_key_output(name: Optional[pulumi.Input[Optional[str]]] = None,
182
+ project_id: Optional[pulumi.Input[Optional[str]]] = None,
183
+ ssh_key_id: Optional[pulumi.Input[Optional[str]]] = None,
184
+ opts: Optional[pulumi.InvokeOptions] = None) -> pulumi.Output[GetIamSshKeyResult]:
185
+ """
186
+ Use this data source to get SSH key information based on its ID or name.
187
+
188
+
189
+ :param str name: The SSH key name.
190
+ :param str project_id: `project_id`) The ID of the project the SSH
191
+ key is associated with.
192
+ :param str ssh_key_id: The SSH key id.
193
+
194
+ > **Note** You must specify at least one: `name` and/or `ssh_key_id`.
195
+ """
196
+ __args__ = dict()
197
+ __args__['name'] = name
198
+ __args__['projectId'] = project_id
199
+ __args__['sshKeyId'] = ssh_key_id
200
+ opts = pulumi.InvokeOptions.merge(_utilities.get_invoke_opts_defaults(), opts)
201
+ __ret__ = pulumi.runtime.invoke_output('scaleway:index/getIamSshKey:getIamSshKey', __args__, opts=opts, typ=GetIamSshKeyResult)
202
+ return __ret__.apply(lambda __response__: GetIamSshKeyResult(
203
+ created_at=pulumi.get(__response__, 'created_at'),
204
+ disabled=pulumi.get(__response__, 'disabled'),
205
+ fingerprint=pulumi.get(__response__, 'fingerprint'),
206
+ id=pulumi.get(__response__, 'id'),
207
+ name=pulumi.get(__response__, 'name'),
208
+ organization_id=pulumi.get(__response__, 'organization_id'),
209
+ project_id=pulumi.get(__response__, 'project_id'),
210
+ public_key=pulumi.get(__response__, 'public_key'),
211
+ ssh_key_id=pulumi.get(__response__, 'ssh_key_id'),
212
+ updated_at=pulumi.get(__response__, 'updated_at')))
@@ -0,0 +1,157 @@
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__ = [
18
+ 'GetIamUserResult',
19
+ 'AwaitableGetIamUserResult',
20
+ 'get_iam_user',
21
+ 'get_iam_user_output',
22
+ ]
23
+
24
+ @pulumi.output_type
25
+ class GetIamUserResult:
26
+ """
27
+ A collection of values returned by getIamUser.
28
+ """
29
+ def __init__(__self__, email=None, id=None, organization_id=None, user_id=None):
30
+ if email and not isinstance(email, str):
31
+ raise TypeError("Expected argument 'email' to be a str")
32
+ pulumi.set(__self__, "email", email)
33
+ if id and not isinstance(id, str):
34
+ raise TypeError("Expected argument 'id' to be a str")
35
+ pulumi.set(__self__, "id", id)
36
+ if organization_id and not isinstance(organization_id, str):
37
+ raise TypeError("Expected argument 'organization_id' to be a str")
38
+ pulumi.set(__self__, "organization_id", organization_id)
39
+ if user_id and not isinstance(user_id, str):
40
+ raise TypeError("Expected argument 'user_id' to be a str")
41
+ pulumi.set(__self__, "user_id", user_id)
42
+
43
+ @property
44
+ @pulumi.getter
45
+ def email(self) -> Optional[str]:
46
+ return pulumi.get(self, "email")
47
+
48
+ @property
49
+ @pulumi.getter
50
+ def id(self) -> str:
51
+ """
52
+ The provider-assigned unique ID for this managed resource.
53
+ """
54
+ return pulumi.get(self, "id")
55
+
56
+ @property
57
+ @pulumi.getter(name="organizationId")
58
+ def organization_id(self) -> Optional[str]:
59
+ return pulumi.get(self, "organization_id")
60
+
61
+ @property
62
+ @pulumi.getter(name="userId")
63
+ def user_id(self) -> Optional[str]:
64
+ return pulumi.get(self, "user_id")
65
+
66
+
67
+ class AwaitableGetIamUserResult(GetIamUserResult):
68
+ # pylint: disable=using-constant-test
69
+ def __await__(self):
70
+ if False:
71
+ yield self
72
+ return GetIamUserResult(
73
+ email=self.email,
74
+ id=self.id,
75
+ organization_id=self.organization_id,
76
+ user_id=self.user_id)
77
+
78
+
79
+ def get_iam_user(email: Optional[str] = None,
80
+ organization_id: Optional[str] = None,
81
+ user_id: Optional[str] = None,
82
+ opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetIamUserResult:
83
+ """
84
+ Use this data source to get information on an existing IAM user based on its ID or email address.
85
+ For more information refer to the [IAM API documentation](https://developers.scaleway.com/en/products/iam/api/v1alpha1/#users-06bdcf).
86
+
87
+ ## Example Usage
88
+
89
+ ```python
90
+ import pulumi
91
+ import pulumi_scaleway as scaleway
92
+
93
+ # Get info by user id
94
+ find_by_id = scaleway.get_iam_user(user_id="11111111-1111-1111-1111-111111111111")
95
+ # Get info by email address
96
+ find_by_email = scaleway.get_iam_user(email="foo@bar.com")
97
+ ```
98
+
99
+
100
+ :param str email: The email address of the IAM user.
101
+ :param str organization_id: `organization_id`) The ID of the
102
+ organization the user is associated with.
103
+ :param str user_id: The ID of the IAM user.
104
+
105
+ > **Note** You must specify at least one: `name` and/or `user_id`.
106
+ """
107
+ __args__ = dict()
108
+ __args__['email'] = email
109
+ __args__['organizationId'] = organization_id
110
+ __args__['userId'] = user_id
111
+ opts = pulumi.InvokeOptions.merge(_utilities.get_invoke_opts_defaults(), opts)
112
+ __ret__ = pulumi.runtime.invoke('scaleway:index/getIamUser:getIamUser', __args__, opts=opts, typ=GetIamUserResult).value
113
+
114
+ return AwaitableGetIamUserResult(
115
+ email=pulumi.get(__ret__, 'email'),
116
+ id=pulumi.get(__ret__, 'id'),
117
+ organization_id=pulumi.get(__ret__, 'organization_id'),
118
+ user_id=pulumi.get(__ret__, 'user_id'))
119
+ def get_iam_user_output(email: Optional[pulumi.Input[Optional[str]]] = None,
120
+ organization_id: Optional[pulumi.Input[Optional[str]]] = None,
121
+ user_id: Optional[pulumi.Input[Optional[str]]] = None,
122
+ opts: Optional[pulumi.InvokeOptions] = None) -> pulumi.Output[GetIamUserResult]:
123
+ """
124
+ Use this data source to get information on an existing IAM user based on its ID or email address.
125
+ For more information refer to the [IAM API documentation](https://developers.scaleway.com/en/products/iam/api/v1alpha1/#users-06bdcf).
126
+
127
+ ## Example Usage
128
+
129
+ ```python
130
+ import pulumi
131
+ import pulumi_scaleway as scaleway
132
+
133
+ # Get info by user id
134
+ find_by_id = scaleway.get_iam_user(user_id="11111111-1111-1111-1111-111111111111")
135
+ # Get info by email address
136
+ find_by_email = scaleway.get_iam_user(email="foo@bar.com")
137
+ ```
138
+
139
+
140
+ :param str email: The email address of the IAM user.
141
+ :param str organization_id: `organization_id`) The ID of the
142
+ organization the user is associated with.
143
+ :param str user_id: The ID of the IAM user.
144
+
145
+ > **Note** You must specify at least one: `name` and/or `user_id`.
146
+ """
147
+ __args__ = dict()
148
+ __args__['email'] = email
149
+ __args__['organizationId'] = organization_id
150
+ __args__['userId'] = user_id
151
+ opts = pulumi.InvokeOptions.merge(_utilities.get_invoke_opts_defaults(), opts)
152
+ __ret__ = pulumi.runtime.invoke_output('scaleway:index/getIamUser:getIamUser', __args__, opts=opts, typ=GetIamUserResult)
153
+ return __ret__.apply(lambda __response__: GetIamUserResult(
154
+ email=pulumi.get(__response__, 'email'),
155
+ id=pulumi.get(__response__, 'id'),
156
+ organization_id=pulumi.get(__response__, 'organization_id'),
157
+ user_id=pulumi.get(__response__, 'user_id')))