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,205 @@
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
+ 'GetAccountSshKeyResult',
19
+ 'AwaitableGetAccountSshKeyResult',
20
+ 'get_account_ssh_key',
21
+ 'get_account_ssh_key_output',
22
+ ]
23
+
24
+ @pulumi.output_type
25
+ class GetAccountSshKeyResult:
26
+ """
27
+ A collection of values returned by getAccountSshKey.
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
+ return pulumi.get(self, "created_at")
65
+
66
+ @property
67
+ @pulumi.getter
68
+ def disabled(self) -> bool:
69
+ return pulumi.get(self, "disabled")
70
+
71
+ @property
72
+ @pulumi.getter
73
+ def fingerprint(self) -> str:
74
+ return pulumi.get(self, "fingerprint")
75
+
76
+ @property
77
+ @pulumi.getter
78
+ def id(self) -> str:
79
+ """
80
+ The provider-assigned unique ID for this managed resource.
81
+ """
82
+ return pulumi.get(self, "id")
83
+
84
+ @property
85
+ @pulumi.getter
86
+ def name(self) -> Optional[str]:
87
+ return pulumi.get(self, "name")
88
+
89
+ @property
90
+ @pulumi.getter(name="organizationId")
91
+ def organization_id(self) -> str:
92
+ """
93
+ The unique identifier of the Organization with which the SSH key is associated.
94
+ """
95
+ return pulumi.get(self, "organization_id")
96
+
97
+ @property
98
+ @pulumi.getter(name="projectId")
99
+ def project_id(self) -> Optional[str]:
100
+ return pulumi.get(self, "project_id")
101
+
102
+ @property
103
+ @pulumi.getter(name="publicKey")
104
+ def public_key(self) -> str:
105
+ """
106
+ The string of the SSH public key.
107
+ """
108
+ return pulumi.get(self, "public_key")
109
+
110
+ @property
111
+ @pulumi.getter(name="sshKeyId")
112
+ def ssh_key_id(self) -> Optional[str]:
113
+ return pulumi.get(self, "ssh_key_id")
114
+
115
+ @property
116
+ @pulumi.getter(name="updatedAt")
117
+ def updated_at(self) -> str:
118
+ return pulumi.get(self, "updated_at")
119
+
120
+
121
+ class AwaitableGetAccountSshKeyResult(GetAccountSshKeyResult):
122
+ # pylint: disable=using-constant-test
123
+ def __await__(self):
124
+ if False:
125
+ yield self
126
+ return GetAccountSshKeyResult(
127
+ created_at=self.created_at,
128
+ disabled=self.disabled,
129
+ fingerprint=self.fingerprint,
130
+ id=self.id,
131
+ name=self.name,
132
+ organization_id=self.organization_id,
133
+ project_id=self.project_id,
134
+ public_key=self.public_key,
135
+ ssh_key_id=self.ssh_key_id,
136
+ updated_at=self.updated_at)
137
+
138
+
139
+ def get_account_ssh_key(name: Optional[str] = None,
140
+ project_id: Optional[str] = None,
141
+ ssh_key_id: Optional[str] = None,
142
+ opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetAccountSshKeyResult:
143
+ """
144
+ The `AccountSshKey` data source is used to retrieve information about a the SSH key of a Scaleway account.
145
+
146
+ Refer to the Organizations and Projects [documentation](https://www.scaleway.com/en/docs/identity-and-access-management/organizations-and-projects/how-to/create-ssh-key/) and [API documentation](https://www.scaleway.com/en/developers/api/iam/#path-ssh-keys) for more information.
147
+
148
+
149
+ :param str name: The name of the SSH key.
150
+ :param str project_id: `project_id`) The unique identifier of the project with which the SSH key is associated.
151
+ :param str ssh_key_id: The unique identifier of the SSH key.
152
+
153
+ > **Note** You must specify at least one: `name` and/or `ssh_key_id`.
154
+ """
155
+ __args__ = dict()
156
+ __args__['name'] = name
157
+ __args__['projectId'] = project_id
158
+ __args__['sshKeyId'] = ssh_key_id
159
+ opts = pulumi.InvokeOptions.merge(_utilities.get_invoke_opts_defaults(), opts)
160
+ __ret__ = pulumi.runtime.invoke('scaleway:index/getAccountSshKey:getAccountSshKey', __args__, opts=opts, typ=GetAccountSshKeyResult).value
161
+
162
+ return AwaitableGetAccountSshKeyResult(
163
+ created_at=pulumi.get(__ret__, 'created_at'),
164
+ disabled=pulumi.get(__ret__, 'disabled'),
165
+ fingerprint=pulumi.get(__ret__, 'fingerprint'),
166
+ id=pulumi.get(__ret__, 'id'),
167
+ name=pulumi.get(__ret__, 'name'),
168
+ organization_id=pulumi.get(__ret__, 'organization_id'),
169
+ project_id=pulumi.get(__ret__, 'project_id'),
170
+ public_key=pulumi.get(__ret__, 'public_key'),
171
+ ssh_key_id=pulumi.get(__ret__, 'ssh_key_id'),
172
+ updated_at=pulumi.get(__ret__, 'updated_at'))
173
+ def get_account_ssh_key_output(name: Optional[pulumi.Input[Optional[str]]] = None,
174
+ project_id: Optional[pulumi.Input[Optional[str]]] = None,
175
+ ssh_key_id: Optional[pulumi.Input[Optional[str]]] = None,
176
+ opts: Optional[Union[pulumi.InvokeOptions, pulumi.InvokeOutputOptions]] = None) -> pulumi.Output[GetAccountSshKeyResult]:
177
+ """
178
+ The `AccountSshKey` data source is used to retrieve information about a the SSH key of a Scaleway account.
179
+
180
+ Refer to the Organizations and Projects [documentation](https://www.scaleway.com/en/docs/identity-and-access-management/organizations-and-projects/how-to/create-ssh-key/) and [API documentation](https://www.scaleway.com/en/developers/api/iam/#path-ssh-keys) for more information.
181
+
182
+
183
+ :param str name: The name of the SSH key.
184
+ :param str project_id: `project_id`) The unique identifier of the project with which the SSH key is associated.
185
+ :param str ssh_key_id: The unique identifier of the SSH key.
186
+
187
+ > **Note** You must specify at least one: `name` and/or `ssh_key_id`.
188
+ """
189
+ __args__ = dict()
190
+ __args__['name'] = name
191
+ __args__['projectId'] = project_id
192
+ __args__['sshKeyId'] = ssh_key_id
193
+ opts = pulumi.InvokeOutputOptions.merge(_utilities.get_invoke_opts_defaults(), opts)
194
+ __ret__ = pulumi.runtime.invoke_output('scaleway:index/getAccountSshKey:getAccountSshKey', __args__, opts=opts, typ=GetAccountSshKeyResult)
195
+ return __ret__.apply(lambda __response__: GetAccountSshKeyResult(
196
+ created_at=pulumi.get(__response__, 'created_at'),
197
+ disabled=pulumi.get(__response__, 'disabled'),
198
+ fingerprint=pulumi.get(__response__, 'fingerprint'),
199
+ id=pulumi.get(__response__, 'id'),
200
+ name=pulumi.get(__response__, 'name'),
201
+ organization_id=pulumi.get(__response__, 'organization_id'),
202
+ project_id=pulumi.get(__response__, 'project_id'),
203
+ public_key=pulumi.get(__response__, 'public_key'),
204
+ ssh_key_id=pulumi.get(__response__, 'ssh_key_id'),
205
+ updated_at=pulumi.get(__response__, 'updated_at')))
@@ -0,0 +1,139 @@
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
+ 'GetAvailabilityZonesResult',
19
+ 'AwaitableGetAvailabilityZonesResult',
20
+ 'get_availability_zones',
21
+ 'get_availability_zones_output',
22
+ ]
23
+
24
+ @pulumi.output_type
25
+ class GetAvailabilityZonesResult:
26
+ """
27
+ A collection of values returned by getAvailabilityZones.
28
+ """
29
+ def __init__(__self__, id=None, region=None, zones=None):
30
+ if id and not isinstance(id, str):
31
+ raise TypeError("Expected argument 'id' to be a str")
32
+ pulumi.set(__self__, "id", id)
33
+ if region and not isinstance(region, str):
34
+ raise TypeError("Expected argument 'region' to be a str")
35
+ pulumi.set(__self__, "region", region)
36
+ if zones and not isinstance(zones, list):
37
+ raise TypeError("Expected argument 'zones' to be a list")
38
+ pulumi.set(__self__, "zones", zones)
39
+
40
+ @property
41
+ @pulumi.getter
42
+ def id(self) -> str:
43
+ """
44
+ The provider-assigned unique ID for this managed resource.
45
+ """
46
+ return pulumi.get(self, "id")
47
+
48
+ @property
49
+ @pulumi.getter
50
+ def region(self) -> Optional[str]:
51
+ return pulumi.get(self, "region")
52
+
53
+ @property
54
+ @pulumi.getter
55
+ def zones(self) -> Sequence[str]:
56
+ """
57
+ The list of availability zones in each Region
58
+ """
59
+ return pulumi.get(self, "zones")
60
+
61
+
62
+ class AwaitableGetAvailabilityZonesResult(GetAvailabilityZonesResult):
63
+ # pylint: disable=using-constant-test
64
+ def __await__(self):
65
+ if False:
66
+ yield self
67
+ return GetAvailabilityZonesResult(
68
+ id=self.id,
69
+ region=self.region,
70
+ zones=self.zones)
71
+
72
+
73
+ def get_availability_zones(region: Optional[str] = None,
74
+ opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetAvailabilityZonesResult:
75
+ """
76
+ The `get_availability_zones` data source is used to retrieve information about the available zones based on its Region.
77
+
78
+ For technical and legal reasons, some products are split by Region or by Availability Zones. When using such product,
79
+ you can choose the location that better fits your need (country, latency, etc.).
80
+
81
+ Refer to the Account [documentation](https://www.scaleway.com/en/docs/console/account/reference-content/products-availability/) for more information.
82
+
83
+ ## Retrieve the Availability Zones of a Region
84
+
85
+ The following command allow you to retrieve a the AZs of a Region.
86
+
87
+ ```python
88
+ import pulumi
89
+ import pulumi_scaleway as scaleway
90
+
91
+ # Get info by Region key
92
+ main = scaleway.get_availability_zones(region="nl-ams")
93
+ ```
94
+
95
+
96
+ :param str region: Region is represented as a Geographical area, such as France. Defaults to `fr-par`.
97
+ """
98
+ __args__ = dict()
99
+ __args__['region'] = region
100
+ opts = pulumi.InvokeOptions.merge(_utilities.get_invoke_opts_defaults(), opts)
101
+ __ret__ = pulumi.runtime.invoke('scaleway:index/getAvailabilityZones:getAvailabilityZones', __args__, opts=opts, typ=GetAvailabilityZonesResult).value
102
+
103
+ return AwaitableGetAvailabilityZonesResult(
104
+ id=pulumi.get(__ret__, 'id'),
105
+ region=pulumi.get(__ret__, 'region'),
106
+ zones=pulumi.get(__ret__, 'zones'))
107
+ def get_availability_zones_output(region: Optional[pulumi.Input[Optional[str]]] = None,
108
+ opts: Optional[Union[pulumi.InvokeOptions, pulumi.InvokeOutputOptions]] = None) -> pulumi.Output[GetAvailabilityZonesResult]:
109
+ """
110
+ The `get_availability_zones` data source is used to retrieve information about the available zones based on its Region.
111
+
112
+ For technical and legal reasons, some products are split by Region or by Availability Zones. When using such product,
113
+ you can choose the location that better fits your need (country, latency, etc.).
114
+
115
+ Refer to the Account [documentation](https://www.scaleway.com/en/docs/console/account/reference-content/products-availability/) for more information.
116
+
117
+ ## Retrieve the Availability Zones of a Region
118
+
119
+ The following command allow you to retrieve a the AZs of a Region.
120
+
121
+ ```python
122
+ import pulumi
123
+ import pulumi_scaleway as scaleway
124
+
125
+ # Get info by Region key
126
+ main = scaleway.get_availability_zones(region="nl-ams")
127
+ ```
128
+
129
+
130
+ :param str region: Region is represented as a Geographical area, such as France. Defaults to `fr-par`.
131
+ """
132
+ __args__ = dict()
133
+ __args__['region'] = region
134
+ opts = pulumi.InvokeOutputOptions.merge(_utilities.get_invoke_opts_defaults(), opts)
135
+ __ret__ = pulumi.runtime.invoke_output('scaleway:index/getAvailabilityZones:getAvailabilityZones', __args__, opts=opts, typ=GetAvailabilityZonesResult)
136
+ return __ret__.apply(lambda __response__: GetAvailabilityZonesResult(
137
+ id=pulumi.get(__response__, 'id'),
138
+ region=pulumi.get(__response__, 'region'),
139
+ zones=pulumi.get(__response__, 'zones')))
@@ -0,0 +1,245 @@
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
+ from . import outputs
17
+
18
+ __all__ = [
19
+ 'GetBaremetalOfferResult',
20
+ 'AwaitableGetBaremetalOfferResult',
21
+ 'get_baremetal_offer',
22
+ 'get_baremetal_offer_output',
23
+ ]
24
+
25
+ @pulumi.output_type
26
+ class GetBaremetalOfferResult:
27
+ """
28
+ A collection of values returned by getBaremetalOffer.
29
+ """
30
+ def __init__(__self__, bandwidth=None, commercial_range=None, cpu=None, disks=None, id=None, include_disabled=None, memories=None, name=None, offer_id=None, stock=None, subscription_period=None, zone=None):
31
+ if bandwidth and not isinstance(bandwidth, int):
32
+ raise TypeError("Expected argument 'bandwidth' to be a int")
33
+ pulumi.set(__self__, "bandwidth", bandwidth)
34
+ if commercial_range and not isinstance(commercial_range, str):
35
+ raise TypeError("Expected argument 'commercial_range' to be a str")
36
+ pulumi.set(__self__, "commercial_range", commercial_range)
37
+ if cpu and not isinstance(cpu, dict):
38
+ raise TypeError("Expected argument 'cpu' to be a dict")
39
+ pulumi.set(__self__, "cpu", cpu)
40
+ if disks and not isinstance(disks, list):
41
+ raise TypeError("Expected argument 'disks' to be a list")
42
+ pulumi.set(__self__, "disks", disks)
43
+ if id and not isinstance(id, str):
44
+ raise TypeError("Expected argument 'id' to be a str")
45
+ pulumi.set(__self__, "id", id)
46
+ if include_disabled and not isinstance(include_disabled, bool):
47
+ raise TypeError("Expected argument 'include_disabled' to be a bool")
48
+ pulumi.set(__self__, "include_disabled", include_disabled)
49
+ if memories and not isinstance(memories, list):
50
+ raise TypeError("Expected argument 'memories' to be a list")
51
+ pulumi.set(__self__, "memories", memories)
52
+ if name and not isinstance(name, str):
53
+ raise TypeError("Expected argument 'name' to be a str")
54
+ pulumi.set(__self__, "name", name)
55
+ if offer_id and not isinstance(offer_id, str):
56
+ raise TypeError("Expected argument 'offer_id' to be a str")
57
+ pulumi.set(__self__, "offer_id", offer_id)
58
+ if stock and not isinstance(stock, str):
59
+ raise TypeError("Expected argument 'stock' to be a str")
60
+ pulumi.set(__self__, "stock", stock)
61
+ if subscription_period and not isinstance(subscription_period, str):
62
+ raise TypeError("Expected argument 'subscription_period' to be a str")
63
+ pulumi.set(__self__, "subscription_period", subscription_period)
64
+ if zone and not isinstance(zone, str):
65
+ raise TypeError("Expected argument 'zone' to be a str")
66
+ pulumi.set(__self__, "zone", zone)
67
+
68
+ @property
69
+ @pulumi.getter
70
+ def bandwidth(self) -> int:
71
+ """
72
+ Available Bandwidth with the offer.
73
+ """
74
+ return pulumi.get(self, "bandwidth")
75
+
76
+ @property
77
+ @pulumi.getter(name="commercialRange")
78
+ def commercial_range(self) -> str:
79
+ """
80
+ Commercial range of the offer.
81
+ """
82
+ return pulumi.get(self, "commercial_range")
83
+
84
+ @property
85
+ @pulumi.getter
86
+ def cpu(self) -> 'outputs.GetBaremetalOfferCpuResult':
87
+ """
88
+ A list of cpu specifications. (Structure is documented below.)
89
+ """
90
+ return pulumi.get(self, "cpu")
91
+
92
+ @property
93
+ @pulumi.getter
94
+ def disks(self) -> Sequence['outputs.GetBaremetalOfferDiskResult']:
95
+ """
96
+ A list of disk specifications. (Structure is documented below.)
97
+ """
98
+ return pulumi.get(self, "disks")
99
+
100
+ @property
101
+ @pulumi.getter
102
+ def id(self) -> str:
103
+ """
104
+ The provider-assigned unique ID for this managed resource.
105
+ """
106
+ return pulumi.get(self, "id")
107
+
108
+ @property
109
+ @pulumi.getter(name="includeDisabled")
110
+ def include_disabled(self) -> Optional[bool]:
111
+ return pulumi.get(self, "include_disabled")
112
+
113
+ @property
114
+ @pulumi.getter
115
+ def memories(self) -> Sequence['outputs.GetBaremetalOfferMemoryResult']:
116
+ """
117
+ A list of memory specifications. (Structure is documented below.)
118
+ """
119
+ return pulumi.get(self, "memories")
120
+
121
+ @property
122
+ @pulumi.getter
123
+ def name(self) -> Optional[str]:
124
+ """
125
+ Name of the CPU.
126
+ """
127
+ return pulumi.get(self, "name")
128
+
129
+ @property
130
+ @pulumi.getter(name="offerId")
131
+ def offer_id(self) -> Optional[str]:
132
+ return pulumi.get(self, "offer_id")
133
+
134
+ @property
135
+ @pulumi.getter
136
+ def stock(self) -> str:
137
+ """
138
+ Stock status for this offer. Possible values are: `empty`, `low` or `available`.
139
+ """
140
+ return pulumi.get(self, "stock")
141
+
142
+ @property
143
+ @pulumi.getter(name="subscriptionPeriod")
144
+ def subscription_period(self) -> Optional[str]:
145
+ return pulumi.get(self, "subscription_period")
146
+
147
+ @property
148
+ @pulumi.getter
149
+ def zone(self) -> str:
150
+ return pulumi.get(self, "zone")
151
+
152
+
153
+ class AwaitableGetBaremetalOfferResult(GetBaremetalOfferResult):
154
+ # pylint: disable=using-constant-test
155
+ def __await__(self):
156
+ if False:
157
+ yield self
158
+ return GetBaremetalOfferResult(
159
+ bandwidth=self.bandwidth,
160
+ commercial_range=self.commercial_range,
161
+ cpu=self.cpu,
162
+ disks=self.disks,
163
+ id=self.id,
164
+ include_disabled=self.include_disabled,
165
+ memories=self.memories,
166
+ name=self.name,
167
+ offer_id=self.offer_id,
168
+ stock=self.stock,
169
+ subscription_period=self.subscription_period,
170
+ zone=self.zone)
171
+
172
+
173
+ def get_baremetal_offer(include_disabled: Optional[bool] = None,
174
+ name: Optional[str] = None,
175
+ offer_id: Optional[str] = None,
176
+ subscription_period: Optional[str] = None,
177
+ zone: Optional[str] = None,
178
+ opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetBaremetalOfferResult:
179
+ """
180
+ Gets information about a baremetal offer. For more information, see [the documentation](https://developers.scaleway.com/en/products/baremetal/api).
181
+
182
+
183
+ :param str name: The offer name. Only one of `name` and `offer_id` should be specified.
184
+ :param str offer_id: The offer id. Only one of `name` and `offer_id` should be specified.
185
+ :param str subscription_period: Period of subscription the desired offer. Should be `hourly` or `monthly`.
186
+ :param str zone: `zone`) The zone in which the offer should be created.
187
+ """
188
+ __args__ = dict()
189
+ __args__['includeDisabled'] = include_disabled
190
+ __args__['name'] = name
191
+ __args__['offerId'] = offer_id
192
+ __args__['subscriptionPeriod'] = subscription_period
193
+ __args__['zone'] = zone
194
+ opts = pulumi.InvokeOptions.merge(_utilities.get_invoke_opts_defaults(), opts)
195
+ __ret__ = pulumi.runtime.invoke('scaleway:index/getBaremetalOffer:getBaremetalOffer', __args__, opts=opts, typ=GetBaremetalOfferResult).value
196
+
197
+ return AwaitableGetBaremetalOfferResult(
198
+ bandwidth=pulumi.get(__ret__, 'bandwidth'),
199
+ commercial_range=pulumi.get(__ret__, 'commercial_range'),
200
+ cpu=pulumi.get(__ret__, 'cpu'),
201
+ disks=pulumi.get(__ret__, 'disks'),
202
+ id=pulumi.get(__ret__, 'id'),
203
+ include_disabled=pulumi.get(__ret__, 'include_disabled'),
204
+ memories=pulumi.get(__ret__, 'memories'),
205
+ name=pulumi.get(__ret__, 'name'),
206
+ offer_id=pulumi.get(__ret__, 'offer_id'),
207
+ stock=pulumi.get(__ret__, 'stock'),
208
+ subscription_period=pulumi.get(__ret__, 'subscription_period'),
209
+ zone=pulumi.get(__ret__, 'zone'))
210
+ def get_baremetal_offer_output(include_disabled: Optional[pulumi.Input[Optional[bool]]] = None,
211
+ name: Optional[pulumi.Input[Optional[str]]] = None,
212
+ offer_id: Optional[pulumi.Input[Optional[str]]] = None,
213
+ subscription_period: Optional[pulumi.Input[Optional[str]]] = None,
214
+ zone: Optional[pulumi.Input[Optional[str]]] = None,
215
+ opts: Optional[Union[pulumi.InvokeOptions, pulumi.InvokeOutputOptions]] = None) -> pulumi.Output[GetBaremetalOfferResult]:
216
+ """
217
+ Gets information about a baremetal offer. For more information, see [the documentation](https://developers.scaleway.com/en/products/baremetal/api).
218
+
219
+
220
+ :param str name: The offer name. Only one of `name` and `offer_id` should be specified.
221
+ :param str offer_id: The offer id. Only one of `name` and `offer_id` should be specified.
222
+ :param str subscription_period: Period of subscription the desired offer. Should be `hourly` or `monthly`.
223
+ :param str zone: `zone`) The zone in which the offer should be created.
224
+ """
225
+ __args__ = dict()
226
+ __args__['includeDisabled'] = include_disabled
227
+ __args__['name'] = name
228
+ __args__['offerId'] = offer_id
229
+ __args__['subscriptionPeriod'] = subscription_period
230
+ __args__['zone'] = zone
231
+ opts = pulumi.InvokeOutputOptions.merge(_utilities.get_invoke_opts_defaults(), opts)
232
+ __ret__ = pulumi.runtime.invoke_output('scaleway:index/getBaremetalOffer:getBaremetalOffer', __args__, opts=opts, typ=GetBaremetalOfferResult)
233
+ return __ret__.apply(lambda __response__: GetBaremetalOfferResult(
234
+ bandwidth=pulumi.get(__response__, 'bandwidth'),
235
+ commercial_range=pulumi.get(__response__, 'commercial_range'),
236
+ cpu=pulumi.get(__response__, 'cpu'),
237
+ disks=pulumi.get(__response__, 'disks'),
238
+ id=pulumi.get(__response__, 'id'),
239
+ include_disabled=pulumi.get(__response__, 'include_disabled'),
240
+ memories=pulumi.get(__response__, 'memories'),
241
+ name=pulumi.get(__response__, 'name'),
242
+ offer_id=pulumi.get(__response__, 'offer_id'),
243
+ stock=pulumi.get(__response__, 'stock'),
244
+ subscription_period=pulumi.get(__response__, 'subscription_period'),
245
+ zone=pulumi.get(__response__, 'zone')))