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,480 @@
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__ = ['FunctionTriggerArgs', 'FunctionTrigger']
20
+
21
+ @pulumi.input_type
22
+ class FunctionTriggerArgs:
23
+ def __init__(__self__, *,
24
+ function_id: pulumi.Input[str],
25
+ description: Optional[pulumi.Input[str]] = None,
26
+ name: Optional[pulumi.Input[str]] = None,
27
+ nats: Optional[pulumi.Input['FunctionTriggerNatsArgs']] = None,
28
+ region: Optional[pulumi.Input[str]] = None,
29
+ sqs: Optional[pulumi.Input['FunctionTriggerSqsArgs']] = None):
30
+ """
31
+ The set of arguments for constructing a FunctionTrigger resource.
32
+ :param pulumi.Input[str] function_id: The unique identifier of the function to create a trigger for.
33
+ :param pulumi.Input[str] description: The description of the trigger.
34
+ :param pulumi.Input[str] name: The unique name of the trigger. If not provided, a random name is generated.
35
+ :param pulumi.Input['FunctionTriggerNatsArgs'] nats: The configuration for the Scaleway NATS account used by the trigger
36
+ :param pulumi.Input[str] region: `region`). The region in which the namespace is created.
37
+ :param pulumi.Input['FunctionTriggerSqsArgs'] sqs: The configuration of the Scaleway SQS queue used by the trigger
38
+ """
39
+ pulumi.set(__self__, "function_id", function_id)
40
+ if description is not None:
41
+ pulumi.set(__self__, "description", description)
42
+ if name is not None:
43
+ pulumi.set(__self__, "name", name)
44
+ if nats is not None:
45
+ pulumi.set(__self__, "nats", nats)
46
+ if region is not None:
47
+ pulumi.set(__self__, "region", region)
48
+ if sqs is not None:
49
+ pulumi.set(__self__, "sqs", sqs)
50
+
51
+ @property
52
+ @pulumi.getter(name="functionId")
53
+ def function_id(self) -> pulumi.Input[str]:
54
+ """
55
+ The unique identifier of the function to create a trigger for.
56
+ """
57
+ return pulumi.get(self, "function_id")
58
+
59
+ @function_id.setter
60
+ def function_id(self, value: pulumi.Input[str]):
61
+ pulumi.set(self, "function_id", value)
62
+
63
+ @property
64
+ @pulumi.getter
65
+ def description(self) -> Optional[pulumi.Input[str]]:
66
+ """
67
+ The description of the trigger.
68
+ """
69
+ return pulumi.get(self, "description")
70
+
71
+ @description.setter
72
+ def description(self, value: Optional[pulumi.Input[str]]):
73
+ pulumi.set(self, "description", value)
74
+
75
+ @property
76
+ @pulumi.getter
77
+ def name(self) -> Optional[pulumi.Input[str]]:
78
+ """
79
+ The unique name of the trigger. If not provided, a random name is generated.
80
+ """
81
+ return pulumi.get(self, "name")
82
+
83
+ @name.setter
84
+ def name(self, value: Optional[pulumi.Input[str]]):
85
+ pulumi.set(self, "name", value)
86
+
87
+ @property
88
+ @pulumi.getter
89
+ def nats(self) -> Optional[pulumi.Input['FunctionTriggerNatsArgs']]:
90
+ """
91
+ The configuration for the Scaleway NATS account used by the trigger
92
+ """
93
+ return pulumi.get(self, "nats")
94
+
95
+ @nats.setter
96
+ def nats(self, value: Optional[pulumi.Input['FunctionTriggerNatsArgs']]):
97
+ pulumi.set(self, "nats", value)
98
+
99
+ @property
100
+ @pulumi.getter
101
+ def region(self) -> Optional[pulumi.Input[str]]:
102
+ """
103
+ `region`). The region in which the namespace is created.
104
+ """
105
+ return pulumi.get(self, "region")
106
+
107
+ @region.setter
108
+ def region(self, value: Optional[pulumi.Input[str]]):
109
+ pulumi.set(self, "region", value)
110
+
111
+ @property
112
+ @pulumi.getter
113
+ def sqs(self) -> Optional[pulumi.Input['FunctionTriggerSqsArgs']]:
114
+ """
115
+ The configuration of the Scaleway SQS queue used by the trigger
116
+ """
117
+ return pulumi.get(self, "sqs")
118
+
119
+ @sqs.setter
120
+ def sqs(self, value: Optional[pulumi.Input['FunctionTriggerSqsArgs']]):
121
+ pulumi.set(self, "sqs", value)
122
+
123
+
124
+ @pulumi.input_type
125
+ class _FunctionTriggerState:
126
+ def __init__(__self__, *,
127
+ description: Optional[pulumi.Input[str]] = None,
128
+ function_id: Optional[pulumi.Input[str]] = None,
129
+ name: Optional[pulumi.Input[str]] = None,
130
+ nats: Optional[pulumi.Input['FunctionTriggerNatsArgs']] = None,
131
+ region: Optional[pulumi.Input[str]] = None,
132
+ sqs: Optional[pulumi.Input['FunctionTriggerSqsArgs']] = None):
133
+ """
134
+ Input properties used for looking up and filtering FunctionTrigger resources.
135
+ :param pulumi.Input[str] description: The description of the trigger.
136
+ :param pulumi.Input[str] function_id: The unique identifier of the function to create a trigger for.
137
+ :param pulumi.Input[str] name: The unique name of the trigger. If not provided, a random name is generated.
138
+ :param pulumi.Input['FunctionTriggerNatsArgs'] nats: The configuration for the Scaleway NATS account used by the trigger
139
+ :param pulumi.Input[str] region: `region`). The region in which the namespace is created.
140
+ :param pulumi.Input['FunctionTriggerSqsArgs'] sqs: The configuration of the Scaleway SQS queue used by the trigger
141
+ """
142
+ if description is not None:
143
+ pulumi.set(__self__, "description", description)
144
+ if function_id is not None:
145
+ pulumi.set(__self__, "function_id", function_id)
146
+ if name is not None:
147
+ pulumi.set(__self__, "name", name)
148
+ if nats is not None:
149
+ pulumi.set(__self__, "nats", nats)
150
+ if region is not None:
151
+ pulumi.set(__self__, "region", region)
152
+ if sqs is not None:
153
+ pulumi.set(__self__, "sqs", sqs)
154
+
155
+ @property
156
+ @pulumi.getter
157
+ def description(self) -> Optional[pulumi.Input[str]]:
158
+ """
159
+ The description of the trigger.
160
+ """
161
+ return pulumi.get(self, "description")
162
+
163
+ @description.setter
164
+ def description(self, value: Optional[pulumi.Input[str]]):
165
+ pulumi.set(self, "description", value)
166
+
167
+ @property
168
+ @pulumi.getter(name="functionId")
169
+ def function_id(self) -> Optional[pulumi.Input[str]]:
170
+ """
171
+ The unique identifier of the function to create a trigger for.
172
+ """
173
+ return pulumi.get(self, "function_id")
174
+
175
+ @function_id.setter
176
+ def function_id(self, value: Optional[pulumi.Input[str]]):
177
+ pulumi.set(self, "function_id", value)
178
+
179
+ @property
180
+ @pulumi.getter
181
+ def name(self) -> Optional[pulumi.Input[str]]:
182
+ """
183
+ The unique name of the trigger. If not provided, a random name is generated.
184
+ """
185
+ return pulumi.get(self, "name")
186
+
187
+ @name.setter
188
+ def name(self, value: Optional[pulumi.Input[str]]):
189
+ pulumi.set(self, "name", value)
190
+
191
+ @property
192
+ @pulumi.getter
193
+ def nats(self) -> Optional[pulumi.Input['FunctionTriggerNatsArgs']]:
194
+ """
195
+ The configuration for the Scaleway NATS account used by the trigger
196
+ """
197
+ return pulumi.get(self, "nats")
198
+
199
+ @nats.setter
200
+ def nats(self, value: Optional[pulumi.Input['FunctionTriggerNatsArgs']]):
201
+ pulumi.set(self, "nats", value)
202
+
203
+ @property
204
+ @pulumi.getter
205
+ def region(self) -> Optional[pulumi.Input[str]]:
206
+ """
207
+ `region`). The region in which the namespace is created.
208
+ """
209
+ return pulumi.get(self, "region")
210
+
211
+ @region.setter
212
+ def region(self, value: Optional[pulumi.Input[str]]):
213
+ pulumi.set(self, "region", value)
214
+
215
+ @property
216
+ @pulumi.getter
217
+ def sqs(self) -> Optional[pulumi.Input['FunctionTriggerSqsArgs']]:
218
+ """
219
+ The configuration of the Scaleway SQS queue used by the trigger
220
+ """
221
+ return pulumi.get(self, "sqs")
222
+
223
+ @sqs.setter
224
+ def sqs(self, value: Optional[pulumi.Input['FunctionTriggerSqsArgs']]):
225
+ pulumi.set(self, "sqs", value)
226
+
227
+
228
+ class FunctionTrigger(pulumi.CustomResource):
229
+ @overload
230
+ def __init__(__self__,
231
+ resource_name: str,
232
+ opts: Optional[pulumi.ResourceOptions] = None,
233
+ description: Optional[pulumi.Input[str]] = None,
234
+ function_id: Optional[pulumi.Input[str]] = None,
235
+ name: Optional[pulumi.Input[str]] = None,
236
+ nats: Optional[pulumi.Input[Union['FunctionTriggerNatsArgs', 'FunctionTriggerNatsArgsDict']]] = None,
237
+ region: Optional[pulumi.Input[str]] = None,
238
+ sqs: Optional[pulumi.Input[Union['FunctionTriggerSqsArgs', 'FunctionTriggerSqsArgsDict']]] = None,
239
+ __props__=None):
240
+ """
241
+ The `FunctionTrigger` resource allows you to create and manage triggers for Scaleway [Serverless Functions](https://www.scaleway.com/en/docs/serverless/functions/).
242
+
243
+ Refer to the Functions triggers [documentation](https://www.scaleway.com/en/docs/serverless/functions/how-to/add-trigger-to-a-function/) and [API documentation](https://www.scaleway.com/en/developers/api/serverless-functions/#path-triggers-list-all-triggers) for more information.
244
+
245
+ ## Example Usage
246
+
247
+ ### SQS
248
+
249
+ ```python
250
+ import pulumi
251
+ import pulumiverse_scaleway as scaleway
252
+
253
+ main = scaleway.FunctionTrigger("main",
254
+ function_id=main_scaleway_function["id"],
255
+ name="my-trigger",
256
+ sqs={
257
+ "project_id": main_scaleway_mnq_sqs["projectId"],
258
+ "queue": "MyQueue",
259
+ "region": main_scaleway_mnq_sqs["region"],
260
+ })
261
+ ```
262
+
263
+ ### NATS
264
+
265
+ ```python
266
+ import pulumi
267
+ import pulumiverse_scaleway as scaleway
268
+
269
+ main = scaleway.FunctionTrigger("main",
270
+ function_id=main_scaleway_function["id"],
271
+ name="my-trigger",
272
+ nats={
273
+ "account_id": main_scaleway_mnq_nats_account["id"],
274
+ "subject": "MySubject",
275
+ "region": main_scaleway_mnq_nats_account["region"],
276
+ })
277
+ ```
278
+
279
+ ## Import
280
+
281
+ Function Triggers can be imported using `{region}/{id}`, as shown below:
282
+
283
+ bash
284
+
285
+ ```sh
286
+ $ pulumi import scaleway:index/functionTrigger:FunctionTrigger main fr-par/11111111-1111-1111-1111-111111111111
287
+ ```
288
+
289
+ :param str resource_name: The name of the resource.
290
+ :param pulumi.ResourceOptions opts: Options for the resource.
291
+ :param pulumi.Input[str] description: The description of the trigger.
292
+ :param pulumi.Input[str] function_id: The unique identifier of the function to create a trigger for.
293
+ :param pulumi.Input[str] name: The unique name of the trigger. If not provided, a random name is generated.
294
+ :param pulumi.Input[Union['FunctionTriggerNatsArgs', 'FunctionTriggerNatsArgsDict']] nats: The configuration for the Scaleway NATS account used by the trigger
295
+ :param pulumi.Input[str] region: `region`). The region in which the namespace is created.
296
+ :param pulumi.Input[Union['FunctionTriggerSqsArgs', 'FunctionTriggerSqsArgsDict']] sqs: The configuration of the Scaleway SQS queue used by the trigger
297
+ """
298
+ ...
299
+ @overload
300
+ def __init__(__self__,
301
+ resource_name: str,
302
+ args: FunctionTriggerArgs,
303
+ opts: Optional[pulumi.ResourceOptions] = None):
304
+ """
305
+ The `FunctionTrigger` resource allows you to create and manage triggers for Scaleway [Serverless Functions](https://www.scaleway.com/en/docs/serverless/functions/).
306
+
307
+ Refer to the Functions triggers [documentation](https://www.scaleway.com/en/docs/serverless/functions/how-to/add-trigger-to-a-function/) and [API documentation](https://www.scaleway.com/en/developers/api/serverless-functions/#path-triggers-list-all-triggers) for more information.
308
+
309
+ ## Example Usage
310
+
311
+ ### SQS
312
+
313
+ ```python
314
+ import pulumi
315
+ import pulumiverse_scaleway as scaleway
316
+
317
+ main = scaleway.FunctionTrigger("main",
318
+ function_id=main_scaleway_function["id"],
319
+ name="my-trigger",
320
+ sqs={
321
+ "project_id": main_scaleway_mnq_sqs["projectId"],
322
+ "queue": "MyQueue",
323
+ "region": main_scaleway_mnq_sqs["region"],
324
+ })
325
+ ```
326
+
327
+ ### NATS
328
+
329
+ ```python
330
+ import pulumi
331
+ import pulumiverse_scaleway as scaleway
332
+
333
+ main = scaleway.FunctionTrigger("main",
334
+ function_id=main_scaleway_function["id"],
335
+ name="my-trigger",
336
+ nats={
337
+ "account_id": main_scaleway_mnq_nats_account["id"],
338
+ "subject": "MySubject",
339
+ "region": main_scaleway_mnq_nats_account["region"],
340
+ })
341
+ ```
342
+
343
+ ## Import
344
+
345
+ Function Triggers can be imported using `{region}/{id}`, as shown below:
346
+
347
+ bash
348
+
349
+ ```sh
350
+ $ pulumi import scaleway:index/functionTrigger:FunctionTrigger main fr-par/11111111-1111-1111-1111-111111111111
351
+ ```
352
+
353
+ :param str resource_name: The name of the resource.
354
+ :param FunctionTriggerArgs args: The arguments to use to populate this resource's properties.
355
+ :param pulumi.ResourceOptions opts: Options for the resource.
356
+ """
357
+ ...
358
+ def __init__(__self__, resource_name: str, *args, **kwargs):
359
+ resource_args, opts = _utilities.get_resource_args_opts(FunctionTriggerArgs, pulumi.ResourceOptions, *args, **kwargs)
360
+ if resource_args is not None:
361
+ __self__._internal_init(resource_name, opts, **resource_args.__dict__)
362
+ else:
363
+ __self__._internal_init(resource_name, *args, **kwargs)
364
+
365
+ def _internal_init(__self__,
366
+ resource_name: str,
367
+ opts: Optional[pulumi.ResourceOptions] = None,
368
+ description: Optional[pulumi.Input[str]] = None,
369
+ function_id: Optional[pulumi.Input[str]] = None,
370
+ name: Optional[pulumi.Input[str]] = None,
371
+ nats: Optional[pulumi.Input[Union['FunctionTriggerNatsArgs', 'FunctionTriggerNatsArgsDict']]] = None,
372
+ region: Optional[pulumi.Input[str]] = None,
373
+ sqs: Optional[pulumi.Input[Union['FunctionTriggerSqsArgs', 'FunctionTriggerSqsArgsDict']]] = None,
374
+ __props__=None):
375
+ opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts)
376
+ if not isinstance(opts, pulumi.ResourceOptions):
377
+ raise TypeError('Expected resource options to be a ResourceOptions instance')
378
+ if opts.id is None:
379
+ if __props__ is not None:
380
+ raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource')
381
+ __props__ = FunctionTriggerArgs.__new__(FunctionTriggerArgs)
382
+
383
+ __props__.__dict__["description"] = description
384
+ if function_id is None and not opts.urn:
385
+ raise TypeError("Missing required property 'function_id'")
386
+ __props__.__dict__["function_id"] = function_id
387
+ __props__.__dict__["name"] = name
388
+ __props__.__dict__["nats"] = nats
389
+ __props__.__dict__["region"] = region
390
+ __props__.__dict__["sqs"] = sqs
391
+ super(FunctionTrigger, __self__).__init__(
392
+ 'scaleway:index/functionTrigger:FunctionTrigger',
393
+ resource_name,
394
+ __props__,
395
+ opts)
396
+
397
+ @staticmethod
398
+ def get(resource_name: str,
399
+ id: pulumi.Input[str],
400
+ opts: Optional[pulumi.ResourceOptions] = None,
401
+ description: Optional[pulumi.Input[str]] = None,
402
+ function_id: Optional[pulumi.Input[str]] = None,
403
+ name: Optional[pulumi.Input[str]] = None,
404
+ nats: Optional[pulumi.Input[Union['FunctionTriggerNatsArgs', 'FunctionTriggerNatsArgsDict']]] = None,
405
+ region: Optional[pulumi.Input[str]] = None,
406
+ sqs: Optional[pulumi.Input[Union['FunctionTriggerSqsArgs', 'FunctionTriggerSqsArgsDict']]] = None) -> 'FunctionTrigger':
407
+ """
408
+ Get an existing FunctionTrigger resource's state with the given name, id, and optional extra
409
+ properties used to qualify the lookup.
410
+
411
+ :param str resource_name: The unique name of the resulting resource.
412
+ :param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
413
+ :param pulumi.ResourceOptions opts: Options for the resource.
414
+ :param pulumi.Input[str] description: The description of the trigger.
415
+ :param pulumi.Input[str] function_id: The unique identifier of the function to create a trigger for.
416
+ :param pulumi.Input[str] name: The unique name of the trigger. If not provided, a random name is generated.
417
+ :param pulumi.Input[Union['FunctionTriggerNatsArgs', 'FunctionTriggerNatsArgsDict']] nats: The configuration for the Scaleway NATS account used by the trigger
418
+ :param pulumi.Input[str] region: `region`). The region in which the namespace is created.
419
+ :param pulumi.Input[Union['FunctionTriggerSqsArgs', 'FunctionTriggerSqsArgsDict']] sqs: The configuration of the Scaleway SQS queue used by the trigger
420
+ """
421
+ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
422
+
423
+ __props__ = _FunctionTriggerState.__new__(_FunctionTriggerState)
424
+
425
+ __props__.__dict__["description"] = description
426
+ __props__.__dict__["function_id"] = function_id
427
+ __props__.__dict__["name"] = name
428
+ __props__.__dict__["nats"] = nats
429
+ __props__.__dict__["region"] = region
430
+ __props__.__dict__["sqs"] = sqs
431
+ return FunctionTrigger(resource_name, opts=opts, __props__=__props__)
432
+
433
+ @property
434
+ @pulumi.getter
435
+ def description(self) -> pulumi.Output[Optional[str]]:
436
+ """
437
+ The description of the trigger.
438
+ """
439
+ return pulumi.get(self, "description")
440
+
441
+ @property
442
+ @pulumi.getter(name="functionId")
443
+ def function_id(self) -> pulumi.Output[str]:
444
+ """
445
+ The unique identifier of the function to create a trigger for.
446
+ """
447
+ return pulumi.get(self, "function_id")
448
+
449
+ @property
450
+ @pulumi.getter
451
+ def name(self) -> pulumi.Output[str]:
452
+ """
453
+ The unique name of the trigger. If not provided, a random name is generated.
454
+ """
455
+ return pulumi.get(self, "name")
456
+
457
+ @property
458
+ @pulumi.getter
459
+ def nats(self) -> pulumi.Output[Optional['outputs.FunctionTriggerNats']]:
460
+ """
461
+ The configuration for the Scaleway NATS account used by the trigger
462
+ """
463
+ return pulumi.get(self, "nats")
464
+
465
+ @property
466
+ @pulumi.getter
467
+ def region(self) -> pulumi.Output[str]:
468
+ """
469
+ `region`). The region in which the namespace is created.
470
+ """
471
+ return pulumi.get(self, "region")
472
+
473
+ @property
474
+ @pulumi.getter
475
+ def sqs(self) -> pulumi.Output[Optional['outputs.FunctionTriggerSqs']]:
476
+ """
477
+ The configuration of the Scaleway SQS queue used by the trigger
478
+ """
479
+ return pulumi.get(self, "sqs")
480
+
@@ -0,0 +1,170 @@
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
+ 'GetAccountProjectResult',
19
+ 'AwaitableGetAccountProjectResult',
20
+ 'get_account_project',
21
+ 'get_account_project_output',
22
+ ]
23
+
24
+ @pulumi.output_type
25
+ class GetAccountProjectResult:
26
+ """
27
+ A collection of values returned by getAccountProject.
28
+ """
29
+ def __init__(__self__, created_at=None, description=None, id=None, name=None, organization_id=None, project_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 description and not isinstance(description, str):
34
+ raise TypeError("Expected argument 'description' to be a str")
35
+ pulumi.set(__self__, "description", description)
36
+ if id and not isinstance(id, str):
37
+ raise TypeError("Expected argument 'id' to be a str")
38
+ pulumi.set(__self__, "id", id)
39
+ if name and not isinstance(name, str):
40
+ raise TypeError("Expected argument 'name' to be a str")
41
+ pulumi.set(__self__, "name", name)
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 updated_at and not isinstance(updated_at, str):
49
+ raise TypeError("Expected argument 'updated_at' to be a str")
50
+ pulumi.set(__self__, "updated_at", updated_at)
51
+
52
+ @property
53
+ @pulumi.getter(name="createdAt")
54
+ def created_at(self) -> str:
55
+ return pulumi.get(self, "created_at")
56
+
57
+ @property
58
+ @pulumi.getter
59
+ def description(self) -> str:
60
+ return pulumi.get(self, "description")
61
+
62
+ @property
63
+ @pulumi.getter
64
+ def id(self) -> str:
65
+ """
66
+ The provider-assigned unique ID for this managed resource.
67
+ """
68
+ return pulumi.get(self, "id")
69
+
70
+ @property
71
+ @pulumi.getter
72
+ def name(self) -> Optional[str]:
73
+ return pulumi.get(self, "name")
74
+
75
+ @property
76
+ @pulumi.getter(name="organizationId")
77
+ def organization_id(self) -> Optional[str]:
78
+ return pulumi.get(self, "organization_id")
79
+
80
+ @property
81
+ @pulumi.getter(name="projectId")
82
+ def project_id(self) -> str:
83
+ return pulumi.get(self, "project_id")
84
+
85
+ @property
86
+ @pulumi.getter(name="updatedAt")
87
+ def updated_at(self) -> str:
88
+ return pulumi.get(self, "updated_at")
89
+
90
+
91
+ class AwaitableGetAccountProjectResult(GetAccountProjectResult):
92
+ # pylint: disable=using-constant-test
93
+ def __await__(self):
94
+ if False:
95
+ yield self
96
+ return GetAccountProjectResult(
97
+ created_at=self.created_at,
98
+ description=self.description,
99
+ id=self.id,
100
+ name=self.name,
101
+ organization_id=self.organization_id,
102
+ project_id=self.project_id,
103
+ updated_at=self.updated_at)
104
+
105
+
106
+ def get_account_project(name: Optional[str] = None,
107
+ organization_id: Optional[str] = None,
108
+ project_id: Optional[str] = None,
109
+ opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetAccountProjectResult:
110
+ """
111
+ The `AccountProject` data source is used to retrieve information about a Scaleway project.
112
+
113
+ Refer to the Organizations and Projects [documentation](https://www.scaleway.com/en/docs/identity-and-access-management/organizations-and-projects/) and [API documentation](https://www.scaleway.com/en/developers/api/account/project-api/) for more information.
114
+
115
+
116
+ :param str name: The name of the Project.
117
+ Only one of the `name` and `project_id` should be specified.
118
+ :param str organization_id: The unique identifier of the Organization with which the Project is associated.
119
+
120
+ If no default `organization_id` is set, one must be set explicitly in this datasource
121
+ :param str project_id: The unique identifier of the Project.
122
+ Only one of the `name` and `project_id` should be specified.
123
+ """
124
+ __args__ = dict()
125
+ __args__['name'] = name
126
+ __args__['organizationId'] = organization_id
127
+ __args__['projectId'] = project_id
128
+ opts = pulumi.InvokeOptions.merge(_utilities.get_invoke_opts_defaults(), opts)
129
+ __ret__ = pulumi.runtime.invoke('scaleway:index/getAccountProject:getAccountProject', __args__, opts=opts, typ=GetAccountProjectResult).value
130
+
131
+ return AwaitableGetAccountProjectResult(
132
+ created_at=pulumi.get(__ret__, 'created_at'),
133
+ description=pulumi.get(__ret__, 'description'),
134
+ id=pulumi.get(__ret__, 'id'),
135
+ name=pulumi.get(__ret__, 'name'),
136
+ organization_id=pulumi.get(__ret__, 'organization_id'),
137
+ project_id=pulumi.get(__ret__, 'project_id'),
138
+ updated_at=pulumi.get(__ret__, 'updated_at'))
139
+ def get_account_project_output(name: Optional[pulumi.Input[Optional[str]]] = None,
140
+ organization_id: Optional[pulumi.Input[Optional[str]]] = None,
141
+ project_id: Optional[pulumi.Input[Optional[str]]] = None,
142
+ opts: Optional[Union[pulumi.InvokeOptions, pulumi.InvokeOutputOptions]] = None) -> pulumi.Output[GetAccountProjectResult]:
143
+ """
144
+ The `AccountProject` data source is used to retrieve information about a Scaleway project.
145
+
146
+ Refer to the Organizations and Projects [documentation](https://www.scaleway.com/en/docs/identity-and-access-management/organizations-and-projects/) and [API documentation](https://www.scaleway.com/en/developers/api/account/project-api/) for more information.
147
+
148
+
149
+ :param str name: The name of the Project.
150
+ Only one of the `name` and `project_id` should be specified.
151
+ :param str organization_id: The unique identifier of the Organization with which the Project is associated.
152
+
153
+ If no default `organization_id` is set, one must be set explicitly in this datasource
154
+ :param str project_id: The unique identifier of the Project.
155
+ Only one of the `name` and `project_id` should be specified.
156
+ """
157
+ __args__ = dict()
158
+ __args__['name'] = name
159
+ __args__['organizationId'] = organization_id
160
+ __args__['projectId'] = project_id
161
+ opts = pulumi.InvokeOutputOptions.merge(_utilities.get_invoke_opts_defaults(), opts)
162
+ __ret__ = pulumi.runtime.invoke_output('scaleway:index/getAccountProject:getAccountProject', __args__, opts=opts, typ=GetAccountProjectResult)
163
+ return __ret__.apply(lambda __response__: GetAccountProjectResult(
164
+ created_at=pulumi.get(__response__, 'created_at'),
165
+ description=pulumi.get(__response__, 'description'),
166
+ id=pulumi.get(__response__, 'id'),
167
+ name=pulumi.get(__response__, 'name'),
168
+ organization_id=pulumi.get(__response__, 'organization_id'),
169
+ project_id=pulumi.get(__response__, 'project_id'),
170
+ updated_at=pulumi.get(__response__, 'updated_at')))