pulumiverse-scaleway 1.16.0__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


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

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