pulumiverse-scaleway 1.23.0a1736837529__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 +1065 -0
  2. pulumiverse_scaleway/_inputs.py +8688 -0
  3. pulumiverse_scaleway/_utilities.py +327 -0
  4. pulumiverse_scaleway/account_project.py +316 -0
  5. pulumiverse_scaleway/account_ssh_key.py +454 -0
  6. pulumiverse_scaleway/apple_silicon_server.py +564 -0
  7. pulumiverse_scaleway/baremetal_server.py +1579 -0
  8. pulumiverse_scaleway/block_snapshot.py +401 -0
  9. pulumiverse_scaleway/block_volume.py +527 -0
  10. pulumiverse_scaleway/cockpit.py +314 -0
  11. pulumiverse_scaleway/cockpit_alert_manager.py +401 -0
  12. pulumiverse_scaleway/cockpit_grafana_user.py +362 -0
  13. pulumiverse_scaleway/cockpit_source.py +567 -0
  14. pulumiverse_scaleway/cockpit_token.py +479 -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 +1373 -0
  19. pulumiverse_scaleway/container_cron.py +458 -0
  20. pulumiverse_scaleway/container_domain.py +406 -0
  21. pulumiverse_scaleway/container_namespace.py +636 -0
  22. pulumiverse_scaleway/container_token.py +452 -0
  23. pulumiverse_scaleway/container_trigger.py +480 -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 +1641 -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/domain_record.py +1116 -0
  32. pulumiverse_scaleway/domain_zone.py +430 -0
  33. pulumiverse_scaleway/flexible_ip.py +702 -0
  34. pulumiverse_scaleway/flexible_ip_mac_address.py +510 -0
  35. pulumiverse_scaleway/function.py +1103 -0
  36. pulumiverse_scaleway/function_cron.py +462 -0
  37. pulumiverse_scaleway/function_domain.py +370 -0
  38. pulumiverse_scaleway/function_namespace.py +580 -0
  39. pulumiverse_scaleway/function_token.py +460 -0
  40. pulumiverse_scaleway/function_trigger.py +480 -0
  41. pulumiverse_scaleway/get_account_project.py +170 -0
  42. pulumiverse_scaleway/get_account_ssh_key.py +205 -0
  43. pulumiverse_scaleway/get_availability_zones.py +139 -0
  44. pulumiverse_scaleway/get_baremetal_offer.py +245 -0
  45. pulumiverse_scaleway/get_baremetal_option.py +168 -0
  46. pulumiverse_scaleway/get_baremetal_os.py +174 -0
  47. pulumiverse_scaleway/get_baremetal_server.py +422 -0
  48. pulumiverse_scaleway/get_billing_consumptions.py +134 -0
  49. pulumiverse_scaleway/get_billing_invoices.py +154 -0
  50. pulumiverse_scaleway/get_block_snapshot.py +174 -0
  51. pulumiverse_scaleway/get_block_volume.py +188 -0
  52. pulumiverse_scaleway/get_cockpit.py +204 -0
  53. pulumiverse_scaleway/get_cockpit_plan.py +125 -0
  54. pulumiverse_scaleway/get_cockpit_source.py +262 -0
  55. pulumiverse_scaleway/get_config.py +180 -0
  56. pulumiverse_scaleway/get_container.py +522 -0
  57. pulumiverse_scaleway/get_container_namespace.py +283 -0
  58. pulumiverse_scaleway/get_database.py +187 -0
  59. pulumiverse_scaleway/get_database_acl.py +143 -0
  60. pulumiverse_scaleway/get_database_backup.py +253 -0
  61. pulumiverse_scaleway/get_database_instance.py +404 -0
  62. pulumiverse_scaleway/get_database_privilege.py +181 -0
  63. pulumiverse_scaleway/get_domain_record.py +340 -0
  64. pulumiverse_scaleway/get_domain_zone.py +201 -0
  65. pulumiverse_scaleway/get_flexible_ip.py +247 -0
  66. pulumiverse_scaleway/get_flexible_ips.py +240 -0
  67. pulumiverse_scaleway/get_function.py +365 -0
  68. pulumiverse_scaleway/get_function_namespace.py +238 -0
  69. pulumiverse_scaleway/get_iam_api_key.py +210 -0
  70. pulumiverse_scaleway/get_iam_application.py +210 -0
  71. pulumiverse_scaleway/get_iam_group.py +236 -0
  72. pulumiverse_scaleway/get_iam_ssh_key.py +212 -0
  73. pulumiverse_scaleway/get_iam_user.py +177 -0
  74. pulumiverse_scaleway/get_instance_image.py +305 -0
  75. pulumiverse_scaleway/get_instance_ip.py +204 -0
  76. pulumiverse_scaleway/get_instance_placement_group.py +212 -0
  77. pulumiverse_scaleway/get_instance_private_nic.py +226 -0
  78. pulumiverse_scaleway/get_instance_security_group.py +268 -0
  79. pulumiverse_scaleway/get_instance_server.py +502 -0
  80. pulumiverse_scaleway/get_instance_servers.py +187 -0
  81. pulumiverse_scaleway/get_instance_snapshot.py +248 -0
  82. pulumiverse_scaleway/get_instance_volume.py +215 -0
  83. pulumiverse_scaleway/get_iot_device.py +257 -0
  84. pulumiverse_scaleway/get_iot_hub.py +322 -0
  85. pulumiverse_scaleway/get_ipam_ip.py +419 -0
  86. pulumiverse_scaleway/get_ipam_ips.py +358 -0
  87. pulumiverse_scaleway/get_k8s_version.py +196 -0
  88. pulumiverse_scaleway/get_kubernetes_cluster.py +417 -0
  89. pulumiverse_scaleway/get_kubernetes_node_pool.py +436 -0
  90. pulumiverse_scaleway/get_lb_acls.py +198 -0
  91. pulumiverse_scaleway/get_lb_backend.py +486 -0
  92. pulumiverse_scaleway/get_lb_backends.py +196 -0
  93. pulumiverse_scaleway/get_lb_frontend.py +274 -0
  94. pulumiverse_scaleway/get_lb_frontends.py +196 -0
  95. pulumiverse_scaleway/get_lb_ips.py +198 -0
  96. pulumiverse_scaleway/get_lb_route.py +217 -0
  97. pulumiverse_scaleway/get_lb_routes.py +179 -0
  98. pulumiverse_scaleway/get_lbs.py +187 -0
  99. pulumiverse_scaleway/get_loadbalancer.py +339 -0
  100. pulumiverse_scaleway/get_loadbalancer_certificate.py +230 -0
  101. pulumiverse_scaleway/get_loadbalancer_ip.py +228 -0
  102. pulumiverse_scaleway/get_marketplace_image.py +147 -0
  103. pulumiverse_scaleway/get_mnq_sns.py +150 -0
  104. pulumiverse_scaleway/get_mnq_sqs.py +150 -0
  105. pulumiverse_scaleway/get_mongo_db_instance.py +324 -0
  106. pulumiverse_scaleway/get_object_bucket.py +290 -0
  107. pulumiverse_scaleway/get_object_bucket_policy.py +163 -0
  108. pulumiverse_scaleway/get_redis_cluster.py +347 -0
  109. pulumiverse_scaleway/get_registry_image.py +239 -0
  110. pulumiverse_scaleway/get_registry_image_tag.py +229 -0
  111. pulumiverse_scaleway/get_registry_namespace.py +199 -0
  112. pulumiverse_scaleway/get_secret.py +338 -0
  113. pulumiverse_scaleway/get_secret_version.py +340 -0
  114. pulumiverse_scaleway/get_tem_domain.py +378 -0
  115. pulumiverse_scaleway/get_vpc.py +246 -0
  116. pulumiverse_scaleway/get_vpc_gateway_network.py +287 -0
  117. pulumiverse_scaleway/get_vpc_private_network.py +282 -0
  118. pulumiverse_scaleway/get_vpc_public_gateway.py +304 -0
  119. pulumiverse_scaleway/get_vpc_public_gateway_dhcp.py +305 -0
  120. pulumiverse_scaleway/get_vpc_public_gateway_dhcp_reservation.py +382 -0
  121. pulumiverse_scaleway/get_vpc_public_gateway_ip.py +199 -0
  122. pulumiverse_scaleway/get_vpc_public_pat_rule.py +313 -0
  123. pulumiverse_scaleway/get_vpc_routes.py +208 -0
  124. pulumiverse_scaleway/get_vpcs.py +174 -0
  125. pulumiverse_scaleway/get_web_host_offer.py +192 -0
  126. pulumiverse_scaleway/get_webhosting.py +332 -0
  127. pulumiverse_scaleway/iam_api_key.py +620 -0
  128. pulumiverse_scaleway/iam_application.py +417 -0
  129. pulumiverse_scaleway/iam_group.py +566 -0
  130. pulumiverse_scaleway/iam_group_membership.py +323 -0
  131. pulumiverse_scaleway/iam_policy.py +773 -0
  132. pulumiverse_scaleway/iam_ssh_key.py +455 -0
  133. pulumiverse_scaleway/iam_user.py +513 -0
  134. pulumiverse_scaleway/inference_deployment.py +822 -0
  135. pulumiverse_scaleway/instance_image.py +750 -0
  136. pulumiverse_scaleway/instance_ip.py +483 -0
  137. pulumiverse_scaleway/instance_ip_reverse_dns.py +308 -0
  138. pulumiverse_scaleway/instance_placement_group.py +479 -0
  139. pulumiverse_scaleway/instance_private_nic.py +555 -0
  140. pulumiverse_scaleway/instance_security_group.py +720 -0
  141. pulumiverse_scaleway/instance_security_group_rules.py +439 -0
  142. pulumiverse_scaleway/instance_server.py +2006 -0
  143. pulumiverse_scaleway/instance_snapshot.py +669 -0
  144. pulumiverse_scaleway/instance_user_data.py +435 -0
  145. pulumiverse_scaleway/instance_volume.py +535 -0
  146. pulumiverse_scaleway/iot_device.py +750 -0
  147. pulumiverse_scaleway/iot_hub.py +896 -0
  148. pulumiverse_scaleway/iot_network.py +472 -0
  149. pulumiverse_scaleway/iot_route.py +660 -0
  150. pulumiverse_scaleway/ipam_ip.py +757 -0
  151. pulumiverse_scaleway/ipam_ip_reverse_dns.py +318 -0
  152. pulumiverse_scaleway/job_definition.py +692 -0
  153. pulumiverse_scaleway/kubernetes_cluster.py +1538 -0
  154. pulumiverse_scaleway/kubernetes_node_pool.py +1255 -0
  155. pulumiverse_scaleway/loadbalancer.py +1061 -0
  156. pulumiverse_scaleway/loadbalancer_acl.py +520 -0
  157. pulumiverse_scaleway/loadbalancer_backend.py +1588 -0
  158. pulumiverse_scaleway/loadbalancer_certificate.py +460 -0
  159. pulumiverse_scaleway/loadbalancer_frontend.py +829 -0
  160. pulumiverse_scaleway/loadbalancer_ip.py +514 -0
  161. pulumiverse_scaleway/loadbalancer_route.py +523 -0
  162. pulumiverse_scaleway/mnq_nats_account.py +334 -0
  163. pulumiverse_scaleway/mnq_nats_credentials.py +330 -0
  164. pulumiverse_scaleway/mnq_sns.py +306 -0
  165. pulumiverse_scaleway/mnq_sns_credentials.py +413 -0
  166. pulumiverse_scaleway/mnq_sns_topic.py +659 -0
  167. pulumiverse_scaleway/mnq_sns_topic_subscription.py +699 -0
  168. pulumiverse_scaleway/mnq_sqs.py +304 -0
  169. pulumiverse_scaleway/mnq_sqs_credentials.py +413 -0
  170. pulumiverse_scaleway/mnq_sqs_queue.py +800 -0
  171. pulumiverse_scaleway/mongo_db_instance.py +907 -0
  172. pulumiverse_scaleway/mongo_db_snapshot.py +521 -0
  173. pulumiverse_scaleway/object_bucket.py +874 -0
  174. pulumiverse_scaleway/object_bucket_acl.py +596 -0
  175. pulumiverse_scaleway/object_bucket_lock_configuration.py +395 -0
  176. pulumiverse_scaleway/object_bucket_policy.py +673 -0
  177. pulumiverse_scaleway/object_bucket_website_configuration.py +534 -0
  178. pulumiverse_scaleway/object_item.py +776 -0
  179. pulumiverse_scaleway/outputs.py +11808 -0
  180. pulumiverse_scaleway/provider.py +327 -0
  181. pulumiverse_scaleway/pulumi-plugin.json +6 -0
  182. pulumiverse_scaleway/py.typed +0 -0
  183. pulumiverse_scaleway/redis_cluster.py +1201 -0
  184. pulumiverse_scaleway/registry_namespace.py +458 -0
  185. pulumiverse_scaleway/sdb_database.py +432 -0
  186. pulumiverse_scaleway/secret.py +663 -0
  187. pulumiverse_scaleway/secret_version.py +487 -0
  188. pulumiverse_scaleway/tem_domain.py +1030 -0
  189. pulumiverse_scaleway/tem_domain_validation.py +303 -0
  190. pulumiverse_scaleway/tem_webhook.py +640 -0
  191. pulumiverse_scaleway/vpc.py +536 -0
  192. pulumiverse_scaleway/vpc_gateway_network.py +866 -0
  193. pulumiverse_scaleway/vpc_private_network.py +734 -0
  194. pulumiverse_scaleway/vpc_public_gateway.py +789 -0
  195. pulumiverse_scaleway/vpc_public_gateway_dhcp.py +933 -0
  196. pulumiverse_scaleway/vpc_public_gateway_dhcp_reservation.py +514 -0
  197. pulumiverse_scaleway/vpc_public_gateway_ip.py +457 -0
  198. pulumiverse_scaleway/vpc_public_gateway_ip_reverse_dns.py +306 -0
  199. pulumiverse_scaleway/vpc_public_gateway_pat_rule.py +591 -0
  200. pulumiverse_scaleway/vpc_route.py +577 -0
  201. pulumiverse_scaleway/webhosting.py +805 -0
  202. pulumiverse_scaleway-1.23.0a1736837529.dist-info/METADATA +77 -0
  203. pulumiverse_scaleway-1.23.0a1736837529.dist-info/RECORD +205 -0
  204. pulumiverse_scaleway-1.23.0a1736837529.dist-info/WHEEL +5 -0
  205. pulumiverse_scaleway-1.23.0a1736837529.dist-info/top_level.txt +1 -0
@@ -0,0 +1,210 @@
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
+ 'GetIamApiKeyResult',
19
+ 'AwaitableGetIamApiKeyResult',
20
+ 'get_iam_api_key',
21
+ 'get_iam_api_key_output',
22
+ ]
23
+
24
+ @pulumi.output_type
25
+ class GetIamApiKeyResult:
26
+ """
27
+ A collection of values returned by getIamApiKey.
28
+ """
29
+ def __init__(__self__, access_key=None, application_id=None, created_at=None, creation_ip=None, default_project_id=None, description=None, editable=None, expires_at=None, id=None, updated_at=None, user_id=None):
30
+ if access_key and not isinstance(access_key, str):
31
+ raise TypeError("Expected argument 'access_key' to be a str")
32
+ pulumi.set(__self__, "access_key", access_key)
33
+ if application_id and not isinstance(application_id, str):
34
+ raise TypeError("Expected argument 'application_id' to be a str")
35
+ pulumi.set(__self__, "application_id", application_id)
36
+ if created_at and not isinstance(created_at, str):
37
+ raise TypeError("Expected argument 'created_at' to be a str")
38
+ pulumi.set(__self__, "created_at", created_at)
39
+ if creation_ip and not isinstance(creation_ip, str):
40
+ raise TypeError("Expected argument 'creation_ip' to be a str")
41
+ pulumi.set(__self__, "creation_ip", creation_ip)
42
+ if default_project_id and not isinstance(default_project_id, str):
43
+ raise TypeError("Expected argument 'default_project_id' to be a str")
44
+ pulumi.set(__self__, "default_project_id", default_project_id)
45
+ if description and not isinstance(description, str):
46
+ raise TypeError("Expected argument 'description' to be a str")
47
+ pulumi.set(__self__, "description", description)
48
+ if editable and not isinstance(editable, bool):
49
+ raise TypeError("Expected argument 'editable' to be a bool")
50
+ pulumi.set(__self__, "editable", editable)
51
+ if expires_at and not isinstance(expires_at, str):
52
+ raise TypeError("Expected argument 'expires_at' to be a str")
53
+ pulumi.set(__self__, "expires_at", expires_at)
54
+ if id and not isinstance(id, str):
55
+ raise TypeError("Expected argument 'id' to be a str")
56
+ pulumi.set(__self__, "id", 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
+ if user_id and not isinstance(user_id, str):
61
+ raise TypeError("Expected argument 'user_id' to be a str")
62
+ pulumi.set(__self__, "user_id", user_id)
63
+
64
+ @property
65
+ @pulumi.getter(name="accessKey")
66
+ def access_key(self) -> str:
67
+ return pulumi.get(self, "access_key")
68
+
69
+ @property
70
+ @pulumi.getter(name="applicationId")
71
+ def application_id(self) -> str:
72
+ return pulumi.get(self, "application_id")
73
+
74
+ @property
75
+ @pulumi.getter(name="createdAt")
76
+ def created_at(self) -> str:
77
+ return pulumi.get(self, "created_at")
78
+
79
+ @property
80
+ @pulumi.getter(name="creationIp")
81
+ def creation_ip(self) -> str:
82
+ return pulumi.get(self, "creation_ip")
83
+
84
+ @property
85
+ @pulumi.getter(name="defaultProjectId")
86
+ def default_project_id(self) -> str:
87
+ return pulumi.get(self, "default_project_id")
88
+
89
+ @property
90
+ @pulumi.getter
91
+ def description(self) -> str:
92
+ return pulumi.get(self, "description")
93
+
94
+ @property
95
+ @pulumi.getter
96
+ def editable(self) -> bool:
97
+ return pulumi.get(self, "editable")
98
+
99
+ @property
100
+ @pulumi.getter(name="expiresAt")
101
+ def expires_at(self) -> str:
102
+ return pulumi.get(self, "expires_at")
103
+
104
+ @property
105
+ @pulumi.getter
106
+ def id(self) -> str:
107
+ """
108
+ The provider-assigned unique ID for this managed resource.
109
+ """
110
+ return pulumi.get(self, "id")
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="userId")
119
+ def user_id(self) -> str:
120
+ return pulumi.get(self, "user_id")
121
+
122
+
123
+ class AwaitableGetIamApiKeyResult(GetIamApiKeyResult):
124
+ # pylint: disable=using-constant-test
125
+ def __await__(self):
126
+ if False:
127
+ yield self
128
+ return GetIamApiKeyResult(
129
+ access_key=self.access_key,
130
+ application_id=self.application_id,
131
+ created_at=self.created_at,
132
+ creation_ip=self.creation_ip,
133
+ default_project_id=self.default_project_id,
134
+ description=self.description,
135
+ editable=self.editable,
136
+ expires_at=self.expires_at,
137
+ id=self.id,
138
+ updated_at=self.updated_at,
139
+ user_id=self.user_id)
140
+
141
+
142
+ def get_iam_api_key(access_key: Optional[str] = None,
143
+ opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetIamApiKeyResult:
144
+ """
145
+ Gets information about an existing IAM API key. For more information, refer to the [IAM API documentation](https://www.scaleway.com/en/developers/api/iam/#api-keys-3665ae).
146
+
147
+ ## Example Usage
148
+
149
+ ```python
150
+ import pulumi
151
+ import pulumi_scaleway as scaleway
152
+
153
+ # Get api key infos by id (access_key)
154
+ main = scaleway.get_iam_api_key(access_key="SCWABCDEFGHIJKLMNOPQ")
155
+ ```
156
+
157
+
158
+ :param str access_key: The access key of the IAM API key which is also the ID of the API key.
159
+ """
160
+ __args__ = dict()
161
+ __args__['accessKey'] = access_key
162
+ opts = pulumi.InvokeOptions.merge(_utilities.get_invoke_opts_defaults(), opts)
163
+ __ret__ = pulumi.runtime.invoke('scaleway:index/getIamApiKey:getIamApiKey', __args__, opts=opts, typ=GetIamApiKeyResult).value
164
+
165
+ return AwaitableGetIamApiKeyResult(
166
+ access_key=pulumi.get(__ret__, 'access_key'),
167
+ application_id=pulumi.get(__ret__, 'application_id'),
168
+ created_at=pulumi.get(__ret__, 'created_at'),
169
+ creation_ip=pulumi.get(__ret__, 'creation_ip'),
170
+ default_project_id=pulumi.get(__ret__, 'default_project_id'),
171
+ description=pulumi.get(__ret__, 'description'),
172
+ editable=pulumi.get(__ret__, 'editable'),
173
+ expires_at=pulumi.get(__ret__, 'expires_at'),
174
+ id=pulumi.get(__ret__, 'id'),
175
+ updated_at=pulumi.get(__ret__, 'updated_at'),
176
+ user_id=pulumi.get(__ret__, 'user_id'))
177
+ def get_iam_api_key_output(access_key: Optional[pulumi.Input[str]] = None,
178
+ opts: Optional[Union[pulumi.InvokeOptions, pulumi.InvokeOutputOptions]] = None) -> pulumi.Output[GetIamApiKeyResult]:
179
+ """
180
+ Gets information about an existing IAM API key. For more information, refer to the [IAM API documentation](https://www.scaleway.com/en/developers/api/iam/#api-keys-3665ae).
181
+
182
+ ## Example Usage
183
+
184
+ ```python
185
+ import pulumi
186
+ import pulumi_scaleway as scaleway
187
+
188
+ # Get api key infos by id (access_key)
189
+ main = scaleway.get_iam_api_key(access_key="SCWABCDEFGHIJKLMNOPQ")
190
+ ```
191
+
192
+
193
+ :param str access_key: The access key of the IAM API key which is also the ID of the API key.
194
+ """
195
+ __args__ = dict()
196
+ __args__['accessKey'] = access_key
197
+ opts = pulumi.InvokeOutputOptions.merge(_utilities.get_invoke_opts_defaults(), opts)
198
+ __ret__ = pulumi.runtime.invoke_output('scaleway:index/getIamApiKey:getIamApiKey', __args__, opts=opts, typ=GetIamApiKeyResult)
199
+ return __ret__.apply(lambda __response__: GetIamApiKeyResult(
200
+ access_key=pulumi.get(__response__, 'access_key'),
201
+ application_id=pulumi.get(__response__, 'application_id'),
202
+ created_at=pulumi.get(__response__, 'created_at'),
203
+ creation_ip=pulumi.get(__response__, 'creation_ip'),
204
+ default_project_id=pulumi.get(__response__, 'default_project_id'),
205
+ description=pulumi.get(__response__, 'description'),
206
+ editable=pulumi.get(__response__, 'editable'),
207
+ expires_at=pulumi.get(__response__, 'expires_at'),
208
+ id=pulumi.get(__response__, 'id'),
209
+ updated_at=pulumi.get(__response__, 'updated_at'),
210
+ user_id=pulumi.get(__response__, 'user_id')))
@@ -0,0 +1,210 @@
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
+ 'GetIamApplicationResult',
19
+ 'AwaitableGetIamApplicationResult',
20
+ 'get_iam_application',
21
+ 'get_iam_application_output',
22
+ ]
23
+
24
+ @pulumi.output_type
25
+ class GetIamApplicationResult:
26
+ """
27
+ A collection of values returned by getIamApplication.
28
+ """
29
+ def __init__(__self__, application_id=None, created_at=None, description=None, editable=None, id=None, name=None, organization_id=None, tags=None, updated_at=None):
30
+ if application_id and not isinstance(application_id, str):
31
+ raise TypeError("Expected argument 'application_id' to be a str")
32
+ pulumi.set(__self__, "application_id", application_id)
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 editable and not isinstance(editable, bool):
40
+ raise TypeError("Expected argument 'editable' to be a bool")
41
+ pulumi.set(__self__, "editable", editable)
42
+ if id and not isinstance(id, str):
43
+ raise TypeError("Expected argument 'id' to be a str")
44
+ pulumi.set(__self__, "id", id)
45
+ if name and not isinstance(name, str):
46
+ raise TypeError("Expected argument 'name' to be a str")
47
+ pulumi.set(__self__, "name", name)
48
+ if organization_id and not isinstance(organization_id, str):
49
+ raise TypeError("Expected argument 'organization_id' to be a str")
50
+ pulumi.set(__self__, "organization_id", organization_id)
51
+ if tags and not isinstance(tags, list):
52
+ raise TypeError("Expected argument 'tags' to be a list")
53
+ pulumi.set(__self__, "tags", tags)
54
+ if updated_at and not isinstance(updated_at, str):
55
+ raise TypeError("Expected argument 'updated_at' to be a str")
56
+ pulumi.set(__self__, "updated_at", updated_at)
57
+
58
+ @property
59
+ @pulumi.getter(name="applicationId")
60
+ def application_id(self) -> Optional[str]:
61
+ return pulumi.get(self, "application_id")
62
+
63
+ @property
64
+ @pulumi.getter(name="createdAt")
65
+ def created_at(self) -> str:
66
+ return pulumi.get(self, "created_at")
67
+
68
+ @property
69
+ @pulumi.getter
70
+ def description(self) -> str:
71
+ return pulumi.get(self, "description")
72
+
73
+ @property
74
+ @pulumi.getter
75
+ def editable(self) -> bool:
76
+ return pulumi.get(self, "editable")
77
+
78
+ @property
79
+ @pulumi.getter
80
+ def id(self) -> str:
81
+ """
82
+ The provider-assigned unique ID for this managed resource.
83
+ """
84
+ return pulumi.get(self, "id")
85
+
86
+ @property
87
+ @pulumi.getter
88
+ def name(self) -> Optional[str]:
89
+ return pulumi.get(self, "name")
90
+
91
+ @property
92
+ @pulumi.getter(name="organizationId")
93
+ def organization_id(self) -> Optional[str]:
94
+ return pulumi.get(self, "organization_id")
95
+
96
+ @property
97
+ @pulumi.getter
98
+ def tags(self) -> Sequence[str]:
99
+ return pulumi.get(self, "tags")
100
+
101
+ @property
102
+ @pulumi.getter(name="updatedAt")
103
+ def updated_at(self) -> str:
104
+ return pulumi.get(self, "updated_at")
105
+
106
+
107
+ class AwaitableGetIamApplicationResult(GetIamApplicationResult):
108
+ # pylint: disable=using-constant-test
109
+ def __await__(self):
110
+ if False:
111
+ yield self
112
+ return GetIamApplicationResult(
113
+ application_id=self.application_id,
114
+ created_at=self.created_at,
115
+ description=self.description,
116
+ editable=self.editable,
117
+ id=self.id,
118
+ name=self.name,
119
+ organization_id=self.organization_id,
120
+ tags=self.tags,
121
+ updated_at=self.updated_at)
122
+
123
+
124
+ def get_iam_application(application_id: Optional[str] = None,
125
+ name: Optional[str] = None,
126
+ organization_id: Optional[str] = None,
127
+ opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetIamApplicationResult:
128
+ """
129
+ Gets information about an existing IAM application.
130
+
131
+ ## Example Usage
132
+
133
+ ```python
134
+ import pulumi
135
+ import pulumi_scaleway as scaleway
136
+
137
+ # Get info by name
138
+ find_by_name = scaleway.get_iam_application(name="foobar")
139
+ # Get info by application ID
140
+ find_by_id = scaleway.get_iam_application(application_id="11111111-1111-1111-1111-111111111111")
141
+ ```
142
+
143
+
144
+ :param str application_id: The ID of the IAM application.
145
+
146
+ > **Note** You must specify at least one: `name` and/or `application_id`.
147
+ :param str name: The name of the IAM application.
148
+ :param str organization_id: `organization_id`) The ID of the
149
+ Organization the application is associated with.
150
+ """
151
+ __args__ = dict()
152
+ __args__['applicationId'] = application_id
153
+ __args__['name'] = name
154
+ __args__['organizationId'] = organization_id
155
+ opts = pulumi.InvokeOptions.merge(_utilities.get_invoke_opts_defaults(), opts)
156
+ __ret__ = pulumi.runtime.invoke('scaleway:index/getIamApplication:getIamApplication', __args__, opts=opts, typ=GetIamApplicationResult).value
157
+
158
+ return AwaitableGetIamApplicationResult(
159
+ application_id=pulumi.get(__ret__, 'application_id'),
160
+ created_at=pulumi.get(__ret__, 'created_at'),
161
+ description=pulumi.get(__ret__, 'description'),
162
+ editable=pulumi.get(__ret__, 'editable'),
163
+ id=pulumi.get(__ret__, 'id'),
164
+ name=pulumi.get(__ret__, 'name'),
165
+ organization_id=pulumi.get(__ret__, 'organization_id'),
166
+ tags=pulumi.get(__ret__, 'tags'),
167
+ updated_at=pulumi.get(__ret__, 'updated_at'))
168
+ def get_iam_application_output(application_id: Optional[pulumi.Input[Optional[str]]] = None,
169
+ name: Optional[pulumi.Input[Optional[str]]] = None,
170
+ organization_id: Optional[pulumi.Input[Optional[str]]] = None,
171
+ opts: Optional[Union[pulumi.InvokeOptions, pulumi.InvokeOutputOptions]] = None) -> pulumi.Output[GetIamApplicationResult]:
172
+ """
173
+ Gets information about an existing IAM application.
174
+
175
+ ## Example Usage
176
+
177
+ ```python
178
+ import pulumi
179
+ import pulumi_scaleway as scaleway
180
+
181
+ # Get info by name
182
+ find_by_name = scaleway.get_iam_application(name="foobar")
183
+ # Get info by application ID
184
+ find_by_id = scaleway.get_iam_application(application_id="11111111-1111-1111-1111-111111111111")
185
+ ```
186
+
187
+
188
+ :param str application_id: The ID of the IAM application.
189
+
190
+ > **Note** You must specify at least one: `name` and/or `application_id`.
191
+ :param str name: The name of the IAM application.
192
+ :param str organization_id: `organization_id`) The ID of the
193
+ Organization the application is associated with.
194
+ """
195
+ __args__ = dict()
196
+ __args__['applicationId'] = application_id
197
+ __args__['name'] = name
198
+ __args__['organizationId'] = organization_id
199
+ opts = pulumi.InvokeOutputOptions.merge(_utilities.get_invoke_opts_defaults(), opts)
200
+ __ret__ = pulumi.runtime.invoke_output('scaleway:index/getIamApplication:getIamApplication', __args__, opts=opts, typ=GetIamApplicationResult)
201
+ return __ret__.apply(lambda __response__: GetIamApplicationResult(
202
+ application_id=pulumi.get(__response__, 'application_id'),
203
+ created_at=pulumi.get(__response__, 'created_at'),
204
+ description=pulumi.get(__response__, 'description'),
205
+ editable=pulumi.get(__response__, 'editable'),
206
+ id=pulumi.get(__response__, 'id'),
207
+ name=pulumi.get(__response__, 'name'),
208
+ organization_id=pulumi.get(__response__, 'organization_id'),
209
+ tags=pulumi.get(__response__, 'tags'),
210
+ updated_at=pulumi.get(__response__, 'updated_at')))
@@ -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[Union[pulumi.InvokeOptions, pulumi.InvokeOutputOptions]] = 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.InvokeOutputOptions.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')))