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,338 @@
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
+ 'GetSecretResult',
20
+ 'AwaitableGetSecretResult',
21
+ 'get_secret',
22
+ 'get_secret_output',
23
+ ]
24
+
25
+ @pulumi.output_type
26
+ class GetSecretResult:
27
+ """
28
+ A collection of values returned by getSecret.
29
+ """
30
+ def __init__(__self__, created_at=None, description=None, ephemeral_policies=None, id=None, name=None, organization_id=None, path=None, project_id=None, protected=None, region=None, secret_id=None, status=None, tags=None, type=None, updated_at=None, version_count=None):
31
+ if created_at and not isinstance(created_at, str):
32
+ raise TypeError("Expected argument 'created_at' to be a str")
33
+ pulumi.set(__self__, "created_at", created_at)
34
+ if description and not isinstance(description, str):
35
+ raise TypeError("Expected argument 'description' to be a str")
36
+ pulumi.set(__self__, "description", description)
37
+ if ephemeral_policies and not isinstance(ephemeral_policies, list):
38
+ raise TypeError("Expected argument 'ephemeral_policies' to be a list")
39
+ pulumi.set(__self__, "ephemeral_policies", ephemeral_policies)
40
+ if id and not isinstance(id, str):
41
+ raise TypeError("Expected argument 'id' to be a str")
42
+ pulumi.set(__self__, "id", id)
43
+ if name and not isinstance(name, str):
44
+ raise TypeError("Expected argument 'name' to be a str")
45
+ pulumi.set(__self__, "name", name)
46
+ if organization_id and not isinstance(organization_id, str):
47
+ raise TypeError("Expected argument 'organization_id' to be a str")
48
+ pulumi.set(__self__, "organization_id", organization_id)
49
+ if path and not isinstance(path, str):
50
+ raise TypeError("Expected argument 'path' to be a str")
51
+ pulumi.set(__self__, "path", path)
52
+ if project_id and not isinstance(project_id, str):
53
+ raise TypeError("Expected argument 'project_id' to be a str")
54
+ pulumi.set(__self__, "project_id", project_id)
55
+ if protected and not isinstance(protected, bool):
56
+ raise TypeError("Expected argument 'protected' to be a bool")
57
+ pulumi.set(__self__, "protected", protected)
58
+ if region and not isinstance(region, str):
59
+ raise TypeError("Expected argument 'region' to be a str")
60
+ pulumi.set(__self__, "region", region)
61
+ if secret_id and not isinstance(secret_id, str):
62
+ raise TypeError("Expected argument 'secret_id' to be a str")
63
+ pulumi.set(__self__, "secret_id", secret_id)
64
+ if status and not isinstance(status, str):
65
+ raise TypeError("Expected argument 'status' to be a str")
66
+ pulumi.set(__self__, "status", status)
67
+ if tags and not isinstance(tags, list):
68
+ raise TypeError("Expected argument 'tags' to be a list")
69
+ pulumi.set(__self__, "tags", tags)
70
+ if type and not isinstance(type, str):
71
+ raise TypeError("Expected argument 'type' to be a str")
72
+ pulumi.set(__self__, "type", type)
73
+ if updated_at and not isinstance(updated_at, str):
74
+ raise TypeError("Expected argument 'updated_at' to be a str")
75
+ pulumi.set(__self__, "updated_at", updated_at)
76
+ if version_count and not isinstance(version_count, int):
77
+ raise TypeError("Expected argument 'version_count' to be a int")
78
+ pulumi.set(__self__, "version_count", version_count)
79
+
80
+ @property
81
+ @pulumi.getter(name="createdAt")
82
+ def created_at(self) -> str:
83
+ return pulumi.get(self, "created_at")
84
+
85
+ @property
86
+ @pulumi.getter
87
+ def description(self) -> str:
88
+ return pulumi.get(self, "description")
89
+
90
+ @property
91
+ @pulumi.getter(name="ephemeralPolicies")
92
+ def ephemeral_policies(self) -> Sequence['outputs.GetSecretEphemeralPolicyResult']:
93
+ return pulumi.get(self, "ephemeral_policies")
94
+
95
+ @property
96
+ @pulumi.getter
97
+ def id(self) -> str:
98
+ """
99
+ The provider-assigned unique ID for this managed resource.
100
+ """
101
+ return pulumi.get(self, "id")
102
+
103
+ @property
104
+ @pulumi.getter
105
+ def name(self) -> Optional[str]:
106
+ return pulumi.get(self, "name")
107
+
108
+ @property
109
+ @pulumi.getter(name="organizationId")
110
+ def organization_id(self) -> str:
111
+ return pulumi.get(self, "organization_id")
112
+
113
+ @property
114
+ @pulumi.getter
115
+ def path(self) -> Optional[str]:
116
+ return pulumi.get(self, "path")
117
+
118
+ @property
119
+ @pulumi.getter(name="projectId")
120
+ def project_id(self) -> Optional[str]:
121
+ return pulumi.get(self, "project_id")
122
+
123
+ @property
124
+ @pulumi.getter
125
+ def protected(self) -> bool:
126
+ return pulumi.get(self, "protected")
127
+
128
+ @property
129
+ @pulumi.getter
130
+ def region(self) -> Optional[str]:
131
+ return pulumi.get(self, "region")
132
+
133
+ @property
134
+ @pulumi.getter(name="secretId")
135
+ def secret_id(self) -> Optional[str]:
136
+ return pulumi.get(self, "secret_id")
137
+
138
+ @property
139
+ @pulumi.getter
140
+ def status(self) -> str:
141
+ return pulumi.get(self, "status")
142
+
143
+ @property
144
+ @pulumi.getter
145
+ def tags(self) -> Sequence[str]:
146
+ return pulumi.get(self, "tags")
147
+
148
+ @property
149
+ @pulumi.getter
150
+ def type(self) -> str:
151
+ return pulumi.get(self, "type")
152
+
153
+ @property
154
+ @pulumi.getter(name="updatedAt")
155
+ def updated_at(self) -> str:
156
+ return pulumi.get(self, "updated_at")
157
+
158
+ @property
159
+ @pulumi.getter(name="versionCount")
160
+ def version_count(self) -> int:
161
+ return pulumi.get(self, "version_count")
162
+
163
+
164
+ class AwaitableGetSecretResult(GetSecretResult):
165
+ # pylint: disable=using-constant-test
166
+ def __await__(self):
167
+ if False:
168
+ yield self
169
+ return GetSecretResult(
170
+ created_at=self.created_at,
171
+ description=self.description,
172
+ ephemeral_policies=self.ephemeral_policies,
173
+ id=self.id,
174
+ name=self.name,
175
+ organization_id=self.organization_id,
176
+ path=self.path,
177
+ project_id=self.project_id,
178
+ protected=self.protected,
179
+ region=self.region,
180
+ secret_id=self.secret_id,
181
+ status=self.status,
182
+ tags=self.tags,
183
+ type=self.type,
184
+ updated_at=self.updated_at,
185
+ version_count=self.version_count)
186
+
187
+
188
+ def get_secret(name: Optional[str] = None,
189
+ organization_id: Optional[str] = None,
190
+ path: Optional[str] = None,
191
+ project_id: Optional[str] = None,
192
+ region: Optional[str] = None,
193
+ secret_id: Optional[str] = None,
194
+ opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetSecretResult:
195
+ """
196
+ The `Secret` data source is used to get information about a specific secret in Scaleway's Secret Manager.
197
+
198
+ Refer to the Secret Manager [product documentation](https://www.scaleway.com/en/docs/identity-and-access-management/secret-manager/) and [API documentation](https://www.scaleway.com/en/developers/api/secret-manager/) for more information.
199
+
200
+ ## Example Usage
201
+
202
+ ### Create a secret and get its information
203
+
204
+ The following commands allow you to:
205
+
206
+ - create a secret named `foo` with the description `barr`
207
+ - retrieve the secret's information using the secret's ID
208
+ - retrieve the secret's information using the secret's name
209
+
210
+ ```python
211
+ import pulumi
212
+ import pulumi_scaleway as scaleway
213
+ import pulumiverse_scaleway as scaleway
214
+
215
+ # Create a secret
216
+ main = scaleway.Secret("main",
217
+ name="foo",
218
+ description="barr")
219
+ # Get the secret information specified by the secret ID
220
+ my_secret = scaleway.get_secret(secret_id="11111111-1111-1111-1111-111111111111")
221
+ # Get the secret information specified by the secret name
222
+ by_name = scaleway.get_secret(name="your_secret_name")
223
+ ```
224
+
225
+
226
+ :param str name: The name of the secret.
227
+ Only one of `name` and `secret_id` should be specified.
228
+ :param str organization_id: The ID of the Scaleway Organization the Project is associated with. If no default `organization_id` is set, it must be set explicitly in this data source.
229
+ :param str path: The path of the secret.
230
+ Conflicts with `secret_id`.
231
+ :param str project_id: ). The ID of the
232
+ Project the secret is associated with.
233
+ :param str region: ). The region in which the secret exists.
234
+ :param str secret_id: The ID of the secret.
235
+ Only one of `name` and `secret_id` should be specified.
236
+ """
237
+ __args__ = dict()
238
+ __args__['name'] = name
239
+ __args__['organizationId'] = organization_id
240
+ __args__['path'] = path
241
+ __args__['projectId'] = project_id
242
+ __args__['region'] = region
243
+ __args__['secretId'] = secret_id
244
+ opts = pulumi.InvokeOptions.merge(_utilities.get_invoke_opts_defaults(), opts)
245
+ __ret__ = pulumi.runtime.invoke('scaleway:index/getSecret:getSecret', __args__, opts=opts, typ=GetSecretResult).value
246
+
247
+ return AwaitableGetSecretResult(
248
+ created_at=pulumi.get(__ret__, 'created_at'),
249
+ description=pulumi.get(__ret__, 'description'),
250
+ ephemeral_policies=pulumi.get(__ret__, 'ephemeral_policies'),
251
+ id=pulumi.get(__ret__, 'id'),
252
+ name=pulumi.get(__ret__, 'name'),
253
+ organization_id=pulumi.get(__ret__, 'organization_id'),
254
+ path=pulumi.get(__ret__, 'path'),
255
+ project_id=pulumi.get(__ret__, 'project_id'),
256
+ protected=pulumi.get(__ret__, 'protected'),
257
+ region=pulumi.get(__ret__, 'region'),
258
+ secret_id=pulumi.get(__ret__, 'secret_id'),
259
+ status=pulumi.get(__ret__, 'status'),
260
+ tags=pulumi.get(__ret__, 'tags'),
261
+ type=pulumi.get(__ret__, 'type'),
262
+ updated_at=pulumi.get(__ret__, 'updated_at'),
263
+ version_count=pulumi.get(__ret__, 'version_count'))
264
+ def get_secret_output(name: Optional[pulumi.Input[Optional[str]]] = None,
265
+ organization_id: Optional[pulumi.Input[Optional[str]]] = None,
266
+ path: Optional[pulumi.Input[Optional[str]]] = None,
267
+ project_id: Optional[pulumi.Input[Optional[str]]] = None,
268
+ region: Optional[pulumi.Input[Optional[str]]] = None,
269
+ secret_id: Optional[pulumi.Input[Optional[str]]] = None,
270
+ opts: Optional[Union[pulumi.InvokeOptions, pulumi.InvokeOutputOptions]] = None) -> pulumi.Output[GetSecretResult]:
271
+ """
272
+ The `Secret` data source is used to get information about a specific secret in Scaleway's Secret Manager.
273
+
274
+ Refer to the Secret Manager [product documentation](https://www.scaleway.com/en/docs/identity-and-access-management/secret-manager/) and [API documentation](https://www.scaleway.com/en/developers/api/secret-manager/) for more information.
275
+
276
+ ## Example Usage
277
+
278
+ ### Create a secret and get its information
279
+
280
+ The following commands allow you to:
281
+
282
+ - create a secret named `foo` with the description `barr`
283
+ - retrieve the secret's information using the secret's ID
284
+ - retrieve the secret's information using the secret's name
285
+
286
+ ```python
287
+ import pulumi
288
+ import pulumi_scaleway as scaleway
289
+ import pulumiverse_scaleway as scaleway
290
+
291
+ # Create a secret
292
+ main = scaleway.Secret("main",
293
+ name="foo",
294
+ description="barr")
295
+ # Get the secret information specified by the secret ID
296
+ my_secret = scaleway.get_secret(secret_id="11111111-1111-1111-1111-111111111111")
297
+ # Get the secret information specified by the secret name
298
+ by_name = scaleway.get_secret(name="your_secret_name")
299
+ ```
300
+
301
+
302
+ :param str name: The name of the secret.
303
+ Only one of `name` and `secret_id` should be specified.
304
+ :param str organization_id: The ID of the Scaleway Organization the Project is associated with. If no default `organization_id` is set, it must be set explicitly in this data source.
305
+ :param str path: The path of the secret.
306
+ Conflicts with `secret_id`.
307
+ :param str project_id: ). The ID of the
308
+ Project the secret is associated with.
309
+ :param str region: ). The region in which the secret exists.
310
+ :param str secret_id: The ID of the secret.
311
+ Only one of `name` and `secret_id` should be specified.
312
+ """
313
+ __args__ = dict()
314
+ __args__['name'] = name
315
+ __args__['organizationId'] = organization_id
316
+ __args__['path'] = path
317
+ __args__['projectId'] = project_id
318
+ __args__['region'] = region
319
+ __args__['secretId'] = secret_id
320
+ opts = pulumi.InvokeOutputOptions.merge(_utilities.get_invoke_opts_defaults(), opts)
321
+ __ret__ = pulumi.runtime.invoke_output('scaleway:index/getSecret:getSecret', __args__, opts=opts, typ=GetSecretResult)
322
+ return __ret__.apply(lambda __response__: GetSecretResult(
323
+ created_at=pulumi.get(__response__, 'created_at'),
324
+ description=pulumi.get(__response__, 'description'),
325
+ ephemeral_policies=pulumi.get(__response__, 'ephemeral_policies'),
326
+ id=pulumi.get(__response__, 'id'),
327
+ name=pulumi.get(__response__, 'name'),
328
+ organization_id=pulumi.get(__response__, 'organization_id'),
329
+ path=pulumi.get(__response__, 'path'),
330
+ project_id=pulumi.get(__response__, 'project_id'),
331
+ protected=pulumi.get(__response__, 'protected'),
332
+ region=pulumi.get(__response__, 'region'),
333
+ secret_id=pulumi.get(__response__, 'secret_id'),
334
+ status=pulumi.get(__response__, 'status'),
335
+ tags=pulumi.get(__response__, 'tags'),
336
+ type=pulumi.get(__response__, 'type'),
337
+ updated_at=pulumi.get(__response__, 'updated_at'),
338
+ version_count=pulumi.get(__response__, 'version_count')))
@@ -0,0 +1,340 @@
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
+ 'GetSecretVersionResult',
19
+ 'AwaitableGetSecretVersionResult',
20
+ 'get_secret_version',
21
+ 'get_secret_version_output',
22
+ ]
23
+
24
+ @pulumi.output_type
25
+ class GetSecretVersionResult:
26
+ """
27
+ A collection of values returned by getSecretVersion.
28
+ """
29
+ def __init__(__self__, created_at=None, data=None, description=None, id=None, organization_id=None, project_id=None, region=None, revision=None, secret_id=None, secret_name=None, status=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 data and not isinstance(data, str):
34
+ raise TypeError("Expected argument 'data' to be a str")
35
+ pulumi.set(__self__, "data", data)
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 id and not isinstance(id, str):
40
+ raise TypeError("Expected argument 'id' to be a str")
41
+ pulumi.set(__self__, "id", id)
42
+ if organization_id and not isinstance(organization_id, str):
43
+ raise TypeError("Expected argument 'organization_id' to be a str")
44
+ pulumi.set(__self__, "organization_id", organization_id)
45
+ if project_id and not isinstance(project_id, str):
46
+ raise TypeError("Expected argument 'project_id' to be a str")
47
+ pulumi.set(__self__, "project_id", project_id)
48
+ if region and not isinstance(region, str):
49
+ raise TypeError("Expected argument 'region' to be a str")
50
+ pulumi.set(__self__, "region", region)
51
+ if revision and not isinstance(revision, str):
52
+ raise TypeError("Expected argument 'revision' to be a str")
53
+ pulumi.set(__self__, "revision", revision)
54
+ if secret_id and not isinstance(secret_id, str):
55
+ raise TypeError("Expected argument 'secret_id' to be a str")
56
+ pulumi.set(__self__, "secret_id", secret_id)
57
+ if secret_name and not isinstance(secret_name, str):
58
+ raise TypeError("Expected argument 'secret_name' to be a str")
59
+ pulumi.set(__self__, "secret_name", secret_name)
60
+ if status and not isinstance(status, str):
61
+ raise TypeError("Expected argument 'status' to be a str")
62
+ pulumi.set(__self__, "status", status)
63
+ if updated_at and not isinstance(updated_at, str):
64
+ raise TypeError("Expected argument 'updated_at' to be a str")
65
+ pulumi.set(__self__, "updated_at", updated_at)
66
+
67
+ @property
68
+ @pulumi.getter(name="createdAt")
69
+ def created_at(self) -> str:
70
+ """
71
+ The date and time of the secret version's creation in RFC 3339 format.
72
+ """
73
+ return pulumi.get(self, "created_at")
74
+
75
+ @property
76
+ @pulumi.getter
77
+ def data(self) -> str:
78
+ """
79
+ The data payload of the secret version. This is a sensitive attribute containing the secret value. Learn more in the [data section](https://www.terraform.io/#data-information).
80
+ """
81
+ return pulumi.get(self, "data")
82
+
83
+ @property
84
+ @pulumi.getter
85
+ def description(self) -> str:
86
+ """
87
+ (Optional) The description of the secret version (e.g. `my-new-description`).
88
+ """
89
+ return pulumi.get(self, "description")
90
+
91
+ @property
92
+ @pulumi.getter
93
+ def id(self) -> str:
94
+ """
95
+ The provider-assigned unique ID for this managed resource.
96
+ """
97
+ return pulumi.get(self, "id")
98
+
99
+ @property
100
+ @pulumi.getter(name="organizationId")
101
+ def organization_id(self) -> str:
102
+ return pulumi.get(self, "organization_id")
103
+
104
+ @property
105
+ @pulumi.getter(name="projectId")
106
+ def project_id(self) -> Optional[str]:
107
+ return pulumi.get(self, "project_id")
108
+
109
+ @property
110
+ @pulumi.getter
111
+ def region(self) -> Optional[str]:
112
+ return pulumi.get(self, "region")
113
+
114
+ @property
115
+ @pulumi.getter
116
+ def revision(self) -> Optional[str]:
117
+ return pulumi.get(self, "revision")
118
+
119
+ @property
120
+ @pulumi.getter(name="secretId")
121
+ def secret_id(self) -> Optional[str]:
122
+ return pulumi.get(self, "secret_id")
123
+
124
+ @property
125
+ @pulumi.getter(name="secretName")
126
+ def secret_name(self) -> Optional[str]:
127
+ return pulumi.get(self, "secret_name")
128
+
129
+ @property
130
+ @pulumi.getter
131
+ def status(self) -> str:
132
+ """
133
+ The status of the secret version.
134
+ """
135
+ return pulumi.get(self, "status")
136
+
137
+ @property
138
+ @pulumi.getter(name="updatedAt")
139
+ def updated_at(self) -> str:
140
+ """
141
+ The date and time of the secret version's last update in RFC 3339 format.
142
+ """
143
+ return pulumi.get(self, "updated_at")
144
+
145
+
146
+ class AwaitableGetSecretVersionResult(GetSecretVersionResult):
147
+ # pylint: disable=using-constant-test
148
+ def __await__(self):
149
+ if False:
150
+ yield self
151
+ return GetSecretVersionResult(
152
+ created_at=self.created_at,
153
+ data=self.data,
154
+ description=self.description,
155
+ id=self.id,
156
+ organization_id=self.organization_id,
157
+ project_id=self.project_id,
158
+ region=self.region,
159
+ revision=self.revision,
160
+ secret_id=self.secret_id,
161
+ secret_name=self.secret_name,
162
+ status=self.status,
163
+ updated_at=self.updated_at)
164
+
165
+
166
+ def get_secret_version(organization_id: Optional[str] = None,
167
+ project_id: Optional[str] = None,
168
+ region: Optional[str] = None,
169
+ revision: Optional[str] = None,
170
+ secret_id: Optional[str] = None,
171
+ secret_name: Optional[str] = None,
172
+ opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetSecretVersionResult:
173
+ """
174
+ The `SecretVersion` data source is used to get information about a specific secret version stored in Scaleway Secret Manager.
175
+
176
+ Refer to the Secret Manager [product documentation](https://www.scaleway.com/en/docs/identity-and-access-management/secret-manager/) and [API documentation](https://www.scaleway.com/en/developers/api/secret-manager/) for more information.
177
+
178
+ ## Example Usage
179
+
180
+ ### Use Secret Manager
181
+
182
+ The following commands allow you to:
183
+
184
+ - create a secret named `fooii`
185
+ - create a new version of `fooii` containing data (`your_secret`)
186
+ - retrieve the secret version specified by the secret ID and the desired version
187
+ - retrieve the secret version specified by the secret name and the desired version
188
+
189
+ The output blocks display the sensitive data contained in your secret version.
190
+
191
+ ```python
192
+ import pulumi
193
+ import pulumi_scaleway as scaleway
194
+ import pulumiverse_scaleway as scaleway
195
+
196
+ # Create a secret named fooii
197
+ main = scaleway.Secret("main",
198
+ name="fooii",
199
+ description="barr")
200
+ # Create a version of fooii containing data
201
+ main_secret_version = scaleway.SecretVersion("main",
202
+ description="your description",
203
+ secret_id=main.id,
204
+ data="your_secret")
205
+ # Retrieve the secret version specified by the secret ID and the desired version
206
+ data_by_secret_id = scaleway.get_secret_version_output(secret_id=main.id,
207
+ revision="1")
208
+ # Retrieve the secret version specified by the secret name and the desired version
209
+ data_by_secret_name = scaleway.get_secret_version_output(secret_name=main.name,
210
+ revision="1")
211
+ pulumi.export("scalewaySecretAccessPayload", data_by_secret_name.data)
212
+ pulumi.export("scalewaySecretAccessPayloadById", data_by_secret_id.data)
213
+ ```
214
+
215
+ ## Data information
216
+
217
+ Note: This data source provides you with access to the secret payload, which is encoded in base64.
218
+
219
+ Keep in mind that this is a sensitive attribute. For more information,
220
+ see Sensitive Data in State.
221
+
222
+ > **Important:** This property is sensitive and will not be displayed in the pulumi preview, for security reasons.
223
+
224
+
225
+ :param str project_id: The ID of the Scaleway Project associated with the secret version.
226
+ :param str revision: The revision for this secret version. Refer to alternative values (ex: `latest`) in the [API documentation](https://www.scaleway.com/en/developers/api/secret-manager/#path-secret-versions-access-a-secrets-version-using-the-secrets-id)
227
+ :param str secret_id: The ID of the secret associated with the secret version. Only one of `secret_id` and `secret_name` should be specified.
228
+ :param str secret_name: The name of the secret associated with the secret version.
229
+ Only one of `secret_id` and `secret_name` should be specified.
230
+ """
231
+ __args__ = dict()
232
+ __args__['organizationId'] = organization_id
233
+ __args__['projectId'] = project_id
234
+ __args__['region'] = region
235
+ __args__['revision'] = revision
236
+ __args__['secretId'] = secret_id
237
+ __args__['secretName'] = secret_name
238
+ opts = pulumi.InvokeOptions.merge(_utilities.get_invoke_opts_defaults(), opts)
239
+ __ret__ = pulumi.runtime.invoke('scaleway:index/getSecretVersion:getSecretVersion', __args__, opts=opts, typ=GetSecretVersionResult).value
240
+
241
+ return AwaitableGetSecretVersionResult(
242
+ created_at=pulumi.get(__ret__, 'created_at'),
243
+ data=pulumi.get(__ret__, 'data'),
244
+ description=pulumi.get(__ret__, 'description'),
245
+ id=pulumi.get(__ret__, 'id'),
246
+ organization_id=pulumi.get(__ret__, 'organization_id'),
247
+ project_id=pulumi.get(__ret__, 'project_id'),
248
+ region=pulumi.get(__ret__, 'region'),
249
+ revision=pulumi.get(__ret__, 'revision'),
250
+ secret_id=pulumi.get(__ret__, 'secret_id'),
251
+ secret_name=pulumi.get(__ret__, 'secret_name'),
252
+ status=pulumi.get(__ret__, 'status'),
253
+ updated_at=pulumi.get(__ret__, 'updated_at'))
254
+ def get_secret_version_output(organization_id: Optional[pulumi.Input[Optional[str]]] = None,
255
+ project_id: Optional[pulumi.Input[Optional[str]]] = None,
256
+ region: Optional[pulumi.Input[Optional[str]]] = None,
257
+ revision: Optional[pulumi.Input[Optional[str]]] = None,
258
+ secret_id: Optional[pulumi.Input[Optional[str]]] = None,
259
+ secret_name: Optional[pulumi.Input[Optional[str]]] = None,
260
+ opts: Optional[Union[pulumi.InvokeOptions, pulumi.InvokeOutputOptions]] = None) -> pulumi.Output[GetSecretVersionResult]:
261
+ """
262
+ The `SecretVersion` data source is used to get information about a specific secret version stored in Scaleway Secret Manager.
263
+
264
+ Refer to the Secret Manager [product documentation](https://www.scaleway.com/en/docs/identity-and-access-management/secret-manager/) and [API documentation](https://www.scaleway.com/en/developers/api/secret-manager/) for more information.
265
+
266
+ ## Example Usage
267
+
268
+ ### Use Secret Manager
269
+
270
+ The following commands allow you to:
271
+
272
+ - create a secret named `fooii`
273
+ - create a new version of `fooii` containing data (`your_secret`)
274
+ - retrieve the secret version specified by the secret ID and the desired version
275
+ - retrieve the secret version specified by the secret name and the desired version
276
+
277
+ The output blocks display the sensitive data contained in your secret version.
278
+
279
+ ```python
280
+ import pulumi
281
+ import pulumi_scaleway as scaleway
282
+ import pulumiverse_scaleway as scaleway
283
+
284
+ # Create a secret named fooii
285
+ main = scaleway.Secret("main",
286
+ name="fooii",
287
+ description="barr")
288
+ # Create a version of fooii containing data
289
+ main_secret_version = scaleway.SecretVersion("main",
290
+ description="your description",
291
+ secret_id=main.id,
292
+ data="your_secret")
293
+ # Retrieve the secret version specified by the secret ID and the desired version
294
+ data_by_secret_id = scaleway.get_secret_version_output(secret_id=main.id,
295
+ revision="1")
296
+ # Retrieve the secret version specified by the secret name and the desired version
297
+ data_by_secret_name = scaleway.get_secret_version_output(secret_name=main.name,
298
+ revision="1")
299
+ pulumi.export("scalewaySecretAccessPayload", data_by_secret_name.data)
300
+ pulumi.export("scalewaySecretAccessPayloadById", data_by_secret_id.data)
301
+ ```
302
+
303
+ ## Data information
304
+
305
+ Note: This data source provides you with access to the secret payload, which is encoded in base64.
306
+
307
+ Keep in mind that this is a sensitive attribute. For more information,
308
+ see Sensitive Data in State.
309
+
310
+ > **Important:** This property is sensitive and will not be displayed in the pulumi preview, for security reasons.
311
+
312
+
313
+ :param str project_id: The ID of the Scaleway Project associated with the secret version.
314
+ :param str revision: The revision for this secret version. Refer to alternative values (ex: `latest`) in the [API documentation](https://www.scaleway.com/en/developers/api/secret-manager/#path-secret-versions-access-a-secrets-version-using-the-secrets-id)
315
+ :param str secret_id: The ID of the secret associated with the secret version. Only one of `secret_id` and `secret_name` should be specified.
316
+ :param str secret_name: The name of the secret associated with the secret version.
317
+ Only one of `secret_id` and `secret_name` should be specified.
318
+ """
319
+ __args__ = dict()
320
+ __args__['organizationId'] = organization_id
321
+ __args__['projectId'] = project_id
322
+ __args__['region'] = region
323
+ __args__['revision'] = revision
324
+ __args__['secretId'] = secret_id
325
+ __args__['secretName'] = secret_name
326
+ opts = pulumi.InvokeOutputOptions.merge(_utilities.get_invoke_opts_defaults(), opts)
327
+ __ret__ = pulumi.runtime.invoke_output('scaleway:index/getSecretVersion:getSecretVersion', __args__, opts=opts, typ=GetSecretVersionResult)
328
+ return __ret__.apply(lambda __response__: GetSecretVersionResult(
329
+ created_at=pulumi.get(__response__, 'created_at'),
330
+ data=pulumi.get(__response__, 'data'),
331
+ description=pulumi.get(__response__, 'description'),
332
+ id=pulumi.get(__response__, 'id'),
333
+ organization_id=pulumi.get(__response__, 'organization_id'),
334
+ project_id=pulumi.get(__response__, 'project_id'),
335
+ region=pulumi.get(__response__, 'region'),
336
+ revision=pulumi.get(__response__, 'revision'),
337
+ secret_id=pulumi.get(__response__, 'secret_id'),
338
+ secret_name=pulumi.get(__response__, 'secret_name'),
339
+ status=pulumi.get(__response__, 'status'),
340
+ updated_at=pulumi.get(__response__, 'updated_at')))