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,534 @@
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__ = ['ObjectBucketWebsiteConfigurationArgs', 'ObjectBucketWebsiteConfiguration']
20
+
21
+ @pulumi.input_type
22
+ class ObjectBucketWebsiteConfigurationArgs:
23
+ def __init__(__self__, *,
24
+ bucket: pulumi.Input[str],
25
+ index_document: pulumi.Input['ObjectBucketWebsiteConfigurationIndexDocumentArgs'],
26
+ error_document: Optional[pulumi.Input['ObjectBucketWebsiteConfigurationErrorDocumentArgs']] = None,
27
+ project_id: Optional[pulumi.Input[str]] = None,
28
+ region: Optional[pulumi.Input[str]] = None):
29
+ """
30
+ The set of arguments for constructing a ObjectBucketWebsiteConfiguration resource.
31
+ :param pulumi.Input[str] bucket: The name of the bucket.
32
+ :param pulumi.Input['ObjectBucketWebsiteConfigurationIndexDocumentArgs'] index_document: The name of the index file for the website detailed below.
33
+ :param pulumi.Input['ObjectBucketWebsiteConfigurationErrorDocumentArgs'] error_document: The name of the error file for the website detailed below.
34
+ :param pulumi.Input[str] project_id: The project_id you want to attach the resource to
35
+ :param pulumi.Input[str] region: The region you want to attach the resource to
36
+ """
37
+ pulumi.set(__self__, "bucket", bucket)
38
+ pulumi.set(__self__, "index_document", index_document)
39
+ if error_document is not None:
40
+ pulumi.set(__self__, "error_document", error_document)
41
+ if project_id is not None:
42
+ pulumi.set(__self__, "project_id", project_id)
43
+ if region is not None:
44
+ pulumi.set(__self__, "region", region)
45
+
46
+ @property
47
+ @pulumi.getter
48
+ def bucket(self) -> pulumi.Input[str]:
49
+ """
50
+ The name of the bucket.
51
+ """
52
+ return pulumi.get(self, "bucket")
53
+
54
+ @bucket.setter
55
+ def bucket(self, value: pulumi.Input[str]):
56
+ pulumi.set(self, "bucket", value)
57
+
58
+ @property
59
+ @pulumi.getter(name="indexDocument")
60
+ def index_document(self) -> pulumi.Input['ObjectBucketWebsiteConfigurationIndexDocumentArgs']:
61
+ """
62
+ The name of the index file for the website detailed below.
63
+ """
64
+ return pulumi.get(self, "index_document")
65
+
66
+ @index_document.setter
67
+ def index_document(self, value: pulumi.Input['ObjectBucketWebsiteConfigurationIndexDocumentArgs']):
68
+ pulumi.set(self, "index_document", value)
69
+
70
+ @property
71
+ @pulumi.getter(name="errorDocument")
72
+ def error_document(self) -> Optional[pulumi.Input['ObjectBucketWebsiteConfigurationErrorDocumentArgs']]:
73
+ """
74
+ The name of the error file for the website detailed below.
75
+ """
76
+ return pulumi.get(self, "error_document")
77
+
78
+ @error_document.setter
79
+ def error_document(self, value: Optional[pulumi.Input['ObjectBucketWebsiteConfigurationErrorDocumentArgs']]):
80
+ pulumi.set(self, "error_document", value)
81
+
82
+ @property
83
+ @pulumi.getter(name="projectId")
84
+ def project_id(self) -> Optional[pulumi.Input[str]]:
85
+ """
86
+ The project_id you want to attach the resource to
87
+ """
88
+ return pulumi.get(self, "project_id")
89
+
90
+ @project_id.setter
91
+ def project_id(self, value: Optional[pulumi.Input[str]]):
92
+ pulumi.set(self, "project_id", value)
93
+
94
+ @property
95
+ @pulumi.getter
96
+ def region(self) -> Optional[pulumi.Input[str]]:
97
+ """
98
+ The region you want to attach the resource to
99
+ """
100
+ return pulumi.get(self, "region")
101
+
102
+ @region.setter
103
+ def region(self, value: Optional[pulumi.Input[str]]):
104
+ pulumi.set(self, "region", value)
105
+
106
+
107
+ @pulumi.input_type
108
+ class _ObjectBucketWebsiteConfigurationState:
109
+ def __init__(__self__, *,
110
+ bucket: Optional[pulumi.Input[str]] = None,
111
+ error_document: Optional[pulumi.Input['ObjectBucketWebsiteConfigurationErrorDocumentArgs']] = None,
112
+ index_document: Optional[pulumi.Input['ObjectBucketWebsiteConfigurationIndexDocumentArgs']] = None,
113
+ project_id: Optional[pulumi.Input[str]] = None,
114
+ region: Optional[pulumi.Input[str]] = None,
115
+ website_domain: Optional[pulumi.Input[str]] = None,
116
+ website_endpoint: Optional[pulumi.Input[str]] = None):
117
+ """
118
+ Input properties used for looking up and filtering ObjectBucketWebsiteConfiguration resources.
119
+ :param pulumi.Input[str] bucket: The name of the bucket.
120
+ :param pulumi.Input['ObjectBucketWebsiteConfigurationErrorDocumentArgs'] error_document: The name of the error file for the website detailed below.
121
+ :param pulumi.Input['ObjectBucketWebsiteConfigurationIndexDocumentArgs'] index_document: The name of the index file for the website detailed below.
122
+ :param pulumi.Input[str] project_id: The project_id you want to attach the resource to
123
+ :param pulumi.Input[str] region: The region you want to attach the resource to
124
+ :param pulumi.Input[str] website_domain: The domain of the website endpoint. This is used to create DNS alias [records](https://www.scaleway.com/en/docs/network/domains-and-dns/how-to/manage-dns-records/).
125
+ :param pulumi.Input[str] website_endpoint: The website endpoint.
126
+ """
127
+ if bucket is not None:
128
+ pulumi.set(__self__, "bucket", bucket)
129
+ if error_document is not None:
130
+ pulumi.set(__self__, "error_document", error_document)
131
+ if index_document is not None:
132
+ pulumi.set(__self__, "index_document", index_document)
133
+ if project_id is not None:
134
+ pulumi.set(__self__, "project_id", project_id)
135
+ if region is not None:
136
+ pulumi.set(__self__, "region", region)
137
+ if website_domain is not None:
138
+ pulumi.set(__self__, "website_domain", website_domain)
139
+ if website_endpoint is not None:
140
+ pulumi.set(__self__, "website_endpoint", website_endpoint)
141
+
142
+ @property
143
+ @pulumi.getter
144
+ def bucket(self) -> Optional[pulumi.Input[str]]:
145
+ """
146
+ The name of the bucket.
147
+ """
148
+ return pulumi.get(self, "bucket")
149
+
150
+ @bucket.setter
151
+ def bucket(self, value: Optional[pulumi.Input[str]]):
152
+ pulumi.set(self, "bucket", value)
153
+
154
+ @property
155
+ @pulumi.getter(name="errorDocument")
156
+ def error_document(self) -> Optional[pulumi.Input['ObjectBucketWebsiteConfigurationErrorDocumentArgs']]:
157
+ """
158
+ The name of the error file for the website detailed below.
159
+ """
160
+ return pulumi.get(self, "error_document")
161
+
162
+ @error_document.setter
163
+ def error_document(self, value: Optional[pulumi.Input['ObjectBucketWebsiteConfigurationErrorDocumentArgs']]):
164
+ pulumi.set(self, "error_document", value)
165
+
166
+ @property
167
+ @pulumi.getter(name="indexDocument")
168
+ def index_document(self) -> Optional[pulumi.Input['ObjectBucketWebsiteConfigurationIndexDocumentArgs']]:
169
+ """
170
+ The name of the index file for the website detailed below.
171
+ """
172
+ return pulumi.get(self, "index_document")
173
+
174
+ @index_document.setter
175
+ def index_document(self, value: Optional[pulumi.Input['ObjectBucketWebsiteConfigurationIndexDocumentArgs']]):
176
+ pulumi.set(self, "index_document", value)
177
+
178
+ @property
179
+ @pulumi.getter(name="projectId")
180
+ def project_id(self) -> Optional[pulumi.Input[str]]:
181
+ """
182
+ The project_id you want to attach the resource to
183
+ """
184
+ return pulumi.get(self, "project_id")
185
+
186
+ @project_id.setter
187
+ def project_id(self, value: Optional[pulumi.Input[str]]):
188
+ pulumi.set(self, "project_id", value)
189
+
190
+ @property
191
+ @pulumi.getter
192
+ def region(self) -> Optional[pulumi.Input[str]]:
193
+ """
194
+ The region you want to attach the resource to
195
+ """
196
+ return pulumi.get(self, "region")
197
+
198
+ @region.setter
199
+ def region(self, value: Optional[pulumi.Input[str]]):
200
+ pulumi.set(self, "region", value)
201
+
202
+ @property
203
+ @pulumi.getter(name="websiteDomain")
204
+ def website_domain(self) -> Optional[pulumi.Input[str]]:
205
+ """
206
+ The domain of the website endpoint. This is used to create DNS alias [records](https://www.scaleway.com/en/docs/network/domains-and-dns/how-to/manage-dns-records/).
207
+ """
208
+ return pulumi.get(self, "website_domain")
209
+
210
+ @website_domain.setter
211
+ def website_domain(self, value: Optional[pulumi.Input[str]]):
212
+ pulumi.set(self, "website_domain", value)
213
+
214
+ @property
215
+ @pulumi.getter(name="websiteEndpoint")
216
+ def website_endpoint(self) -> Optional[pulumi.Input[str]]:
217
+ """
218
+ The website endpoint.
219
+ """
220
+ return pulumi.get(self, "website_endpoint")
221
+
222
+ @website_endpoint.setter
223
+ def website_endpoint(self, value: Optional[pulumi.Input[str]]):
224
+ pulumi.set(self, "website_endpoint", value)
225
+
226
+
227
+ class ObjectBucketWebsiteConfiguration(pulumi.CustomResource):
228
+ @overload
229
+ def __init__(__self__,
230
+ resource_name: str,
231
+ opts: Optional[pulumi.ResourceOptions] = None,
232
+ bucket: Optional[pulumi.Input[str]] = None,
233
+ error_document: Optional[pulumi.Input[Union['ObjectBucketWebsiteConfigurationErrorDocumentArgs', 'ObjectBucketWebsiteConfigurationErrorDocumentArgsDict']]] = None,
234
+ index_document: Optional[pulumi.Input[Union['ObjectBucketWebsiteConfigurationIndexDocumentArgs', 'ObjectBucketWebsiteConfigurationIndexDocumentArgsDict']]] = None,
235
+ project_id: Optional[pulumi.Input[str]] = None,
236
+ region: Optional[pulumi.Input[str]] = None,
237
+ __props__=None):
238
+ """
239
+ The `ObjectBucketWebsiteConfiguration` resource allows you to deploy and manage a bucket website with [Scaleway Object storage](https://www.scaleway.com/en/docs/storage/object/).
240
+
241
+ Refer to the [dedicated documentation](https://www.scaleway.com/en/docs/storage/object/how-to/use-bucket-website/) for more information on bucket websites.
242
+
243
+ ## Example Usage
244
+
245
+ ```python
246
+ import pulumi
247
+ import pulumiverse_scaleway as scaleway
248
+
249
+ main = scaleway.ObjectBucket("main",
250
+ name="MyBucket",
251
+ acl="public-read")
252
+ main_object_bucket_website_configuration = scaleway.ObjectBucketWebsiteConfiguration("main",
253
+ bucket=main.id,
254
+ index_document={
255
+ "suffix": "index.html",
256
+ })
257
+ ```
258
+
259
+ ### With A Bucket Policy
260
+
261
+ ```python
262
+ import pulumi
263
+ import json
264
+ import pulumiverse_scaleway as scaleway
265
+
266
+ main = scaleway.ObjectBucket("main",
267
+ name="MyBucket",
268
+ acl="public-read")
269
+ main_object_bucket_policy = scaleway.ObjectBucketPolicy("main",
270
+ bucket=main.id,
271
+ policy=json.dumps({
272
+ "Version": "2012-10-17",
273
+ "Id": "MyPolicy",
274
+ "Statement": [{
275
+ "Sid": "GrantToEveryone",
276
+ "Effect": "Allow",
277
+ "Principal": "*",
278
+ "Action": ["s3:GetObject"],
279
+ "Resource": ["<bucket-name>/*"],
280
+ }],
281
+ }))
282
+ main_object_bucket_website_configuration = scaleway.ObjectBucketWebsiteConfiguration("main",
283
+ bucket=main.id,
284
+ index_document={
285
+ "suffix": "index.html",
286
+ })
287
+ ```
288
+
289
+ ## Import
290
+
291
+ Bucket website configurations can be imported using the `{region}/{bucketName}` identifier, as shown below:
292
+
293
+ bash
294
+
295
+ ```sh
296
+ $ pulumi import scaleway:index/objectBucketWebsiteConfiguration:ObjectBucketWebsiteConfiguration some_bucket fr-par/some-bucket
297
+ ```
298
+
299
+ ~> **Important:** The `project_id` attribute has a particular behavior with s3 products because the s3 API is scoped by project.
300
+
301
+ If you are using a project different from the default one, you have to specify the project ID at the end of the import command.
302
+
303
+ bash
304
+
305
+ ```sh
306
+ $ pulumi import scaleway:index/objectBucketWebsiteConfiguration:ObjectBucketWebsiteConfiguration some_bucket fr-par/some-bucket@xxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxx
307
+ ```
308
+
309
+ :param str resource_name: The name of the resource.
310
+ :param pulumi.ResourceOptions opts: Options for the resource.
311
+ :param pulumi.Input[str] bucket: The name of the bucket.
312
+ :param pulumi.Input[Union['ObjectBucketWebsiteConfigurationErrorDocumentArgs', 'ObjectBucketWebsiteConfigurationErrorDocumentArgsDict']] error_document: The name of the error file for the website detailed below.
313
+ :param pulumi.Input[Union['ObjectBucketWebsiteConfigurationIndexDocumentArgs', 'ObjectBucketWebsiteConfigurationIndexDocumentArgsDict']] index_document: The name of the index file for the website detailed below.
314
+ :param pulumi.Input[str] project_id: The project_id you want to attach the resource to
315
+ :param pulumi.Input[str] region: The region you want to attach the resource to
316
+ """
317
+ ...
318
+ @overload
319
+ def __init__(__self__,
320
+ resource_name: str,
321
+ args: ObjectBucketWebsiteConfigurationArgs,
322
+ opts: Optional[pulumi.ResourceOptions] = None):
323
+ """
324
+ The `ObjectBucketWebsiteConfiguration` resource allows you to deploy and manage a bucket website with [Scaleway Object storage](https://www.scaleway.com/en/docs/storage/object/).
325
+
326
+ Refer to the [dedicated documentation](https://www.scaleway.com/en/docs/storage/object/how-to/use-bucket-website/) for more information on bucket websites.
327
+
328
+ ## Example Usage
329
+
330
+ ```python
331
+ import pulumi
332
+ import pulumiverse_scaleway as scaleway
333
+
334
+ main = scaleway.ObjectBucket("main",
335
+ name="MyBucket",
336
+ acl="public-read")
337
+ main_object_bucket_website_configuration = scaleway.ObjectBucketWebsiteConfiguration("main",
338
+ bucket=main.id,
339
+ index_document={
340
+ "suffix": "index.html",
341
+ })
342
+ ```
343
+
344
+ ### With A Bucket Policy
345
+
346
+ ```python
347
+ import pulumi
348
+ import json
349
+ import pulumiverse_scaleway as scaleway
350
+
351
+ main = scaleway.ObjectBucket("main",
352
+ name="MyBucket",
353
+ acl="public-read")
354
+ main_object_bucket_policy = scaleway.ObjectBucketPolicy("main",
355
+ bucket=main.id,
356
+ policy=json.dumps({
357
+ "Version": "2012-10-17",
358
+ "Id": "MyPolicy",
359
+ "Statement": [{
360
+ "Sid": "GrantToEveryone",
361
+ "Effect": "Allow",
362
+ "Principal": "*",
363
+ "Action": ["s3:GetObject"],
364
+ "Resource": ["<bucket-name>/*"],
365
+ }],
366
+ }))
367
+ main_object_bucket_website_configuration = scaleway.ObjectBucketWebsiteConfiguration("main",
368
+ bucket=main.id,
369
+ index_document={
370
+ "suffix": "index.html",
371
+ })
372
+ ```
373
+
374
+ ## Import
375
+
376
+ Bucket website configurations can be imported using the `{region}/{bucketName}` identifier, as shown below:
377
+
378
+ bash
379
+
380
+ ```sh
381
+ $ pulumi import scaleway:index/objectBucketWebsiteConfiguration:ObjectBucketWebsiteConfiguration some_bucket fr-par/some-bucket
382
+ ```
383
+
384
+ ~> **Important:** The `project_id` attribute has a particular behavior with s3 products because the s3 API is scoped by project.
385
+
386
+ If you are using a project different from the default one, you have to specify the project ID at the end of the import command.
387
+
388
+ bash
389
+
390
+ ```sh
391
+ $ pulumi import scaleway:index/objectBucketWebsiteConfiguration:ObjectBucketWebsiteConfiguration some_bucket fr-par/some-bucket@xxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxx
392
+ ```
393
+
394
+ :param str resource_name: The name of the resource.
395
+ :param ObjectBucketWebsiteConfigurationArgs args: The arguments to use to populate this resource's properties.
396
+ :param pulumi.ResourceOptions opts: Options for the resource.
397
+ """
398
+ ...
399
+ def __init__(__self__, resource_name: str, *args, **kwargs):
400
+ resource_args, opts = _utilities.get_resource_args_opts(ObjectBucketWebsiteConfigurationArgs, pulumi.ResourceOptions, *args, **kwargs)
401
+ if resource_args is not None:
402
+ __self__._internal_init(resource_name, opts, **resource_args.__dict__)
403
+ else:
404
+ __self__._internal_init(resource_name, *args, **kwargs)
405
+
406
+ def _internal_init(__self__,
407
+ resource_name: str,
408
+ opts: Optional[pulumi.ResourceOptions] = None,
409
+ bucket: Optional[pulumi.Input[str]] = None,
410
+ error_document: Optional[pulumi.Input[Union['ObjectBucketWebsiteConfigurationErrorDocumentArgs', 'ObjectBucketWebsiteConfigurationErrorDocumentArgsDict']]] = None,
411
+ index_document: Optional[pulumi.Input[Union['ObjectBucketWebsiteConfigurationIndexDocumentArgs', 'ObjectBucketWebsiteConfigurationIndexDocumentArgsDict']]] = None,
412
+ project_id: Optional[pulumi.Input[str]] = None,
413
+ region: Optional[pulumi.Input[str]] = None,
414
+ __props__=None):
415
+ opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts)
416
+ if not isinstance(opts, pulumi.ResourceOptions):
417
+ raise TypeError('Expected resource options to be a ResourceOptions instance')
418
+ if opts.id is None:
419
+ if __props__ is not None:
420
+ raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource')
421
+ __props__ = ObjectBucketWebsiteConfigurationArgs.__new__(ObjectBucketWebsiteConfigurationArgs)
422
+
423
+ if bucket is None and not opts.urn:
424
+ raise TypeError("Missing required property 'bucket'")
425
+ __props__.__dict__["bucket"] = bucket
426
+ __props__.__dict__["error_document"] = error_document
427
+ if index_document is None and not opts.urn:
428
+ raise TypeError("Missing required property 'index_document'")
429
+ __props__.__dict__["index_document"] = index_document
430
+ __props__.__dict__["project_id"] = project_id
431
+ __props__.__dict__["region"] = region
432
+ __props__.__dict__["website_domain"] = None
433
+ __props__.__dict__["website_endpoint"] = None
434
+ super(ObjectBucketWebsiteConfiguration, __self__).__init__(
435
+ 'scaleway:index/objectBucketWebsiteConfiguration:ObjectBucketWebsiteConfiguration',
436
+ resource_name,
437
+ __props__,
438
+ opts)
439
+
440
+ @staticmethod
441
+ def get(resource_name: str,
442
+ id: pulumi.Input[str],
443
+ opts: Optional[pulumi.ResourceOptions] = None,
444
+ bucket: Optional[pulumi.Input[str]] = None,
445
+ error_document: Optional[pulumi.Input[Union['ObjectBucketWebsiteConfigurationErrorDocumentArgs', 'ObjectBucketWebsiteConfigurationErrorDocumentArgsDict']]] = None,
446
+ index_document: Optional[pulumi.Input[Union['ObjectBucketWebsiteConfigurationIndexDocumentArgs', 'ObjectBucketWebsiteConfigurationIndexDocumentArgsDict']]] = None,
447
+ project_id: Optional[pulumi.Input[str]] = None,
448
+ region: Optional[pulumi.Input[str]] = None,
449
+ website_domain: Optional[pulumi.Input[str]] = None,
450
+ website_endpoint: Optional[pulumi.Input[str]] = None) -> 'ObjectBucketWebsiteConfiguration':
451
+ """
452
+ Get an existing ObjectBucketWebsiteConfiguration resource's state with the given name, id, and optional extra
453
+ properties used to qualify the lookup.
454
+
455
+ :param str resource_name: The unique name of the resulting resource.
456
+ :param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
457
+ :param pulumi.ResourceOptions opts: Options for the resource.
458
+ :param pulumi.Input[str] bucket: The name of the bucket.
459
+ :param pulumi.Input[Union['ObjectBucketWebsiteConfigurationErrorDocumentArgs', 'ObjectBucketWebsiteConfigurationErrorDocumentArgsDict']] error_document: The name of the error file for the website detailed below.
460
+ :param pulumi.Input[Union['ObjectBucketWebsiteConfigurationIndexDocumentArgs', 'ObjectBucketWebsiteConfigurationIndexDocumentArgsDict']] index_document: The name of the index file for the website detailed below.
461
+ :param pulumi.Input[str] project_id: The project_id you want to attach the resource to
462
+ :param pulumi.Input[str] region: The region you want to attach the resource to
463
+ :param pulumi.Input[str] website_domain: The domain of the website endpoint. This is used to create DNS alias [records](https://www.scaleway.com/en/docs/network/domains-and-dns/how-to/manage-dns-records/).
464
+ :param pulumi.Input[str] website_endpoint: The website endpoint.
465
+ """
466
+ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
467
+
468
+ __props__ = _ObjectBucketWebsiteConfigurationState.__new__(_ObjectBucketWebsiteConfigurationState)
469
+
470
+ __props__.__dict__["bucket"] = bucket
471
+ __props__.__dict__["error_document"] = error_document
472
+ __props__.__dict__["index_document"] = index_document
473
+ __props__.__dict__["project_id"] = project_id
474
+ __props__.__dict__["region"] = region
475
+ __props__.__dict__["website_domain"] = website_domain
476
+ __props__.__dict__["website_endpoint"] = website_endpoint
477
+ return ObjectBucketWebsiteConfiguration(resource_name, opts=opts, __props__=__props__)
478
+
479
+ @property
480
+ @pulumi.getter
481
+ def bucket(self) -> pulumi.Output[str]:
482
+ """
483
+ The name of the bucket.
484
+ """
485
+ return pulumi.get(self, "bucket")
486
+
487
+ @property
488
+ @pulumi.getter(name="errorDocument")
489
+ def error_document(self) -> pulumi.Output[Optional['outputs.ObjectBucketWebsiteConfigurationErrorDocument']]:
490
+ """
491
+ The name of the error file for the website detailed below.
492
+ """
493
+ return pulumi.get(self, "error_document")
494
+
495
+ @property
496
+ @pulumi.getter(name="indexDocument")
497
+ def index_document(self) -> pulumi.Output['outputs.ObjectBucketWebsiteConfigurationIndexDocument']:
498
+ """
499
+ The name of the index file for the website detailed below.
500
+ """
501
+ return pulumi.get(self, "index_document")
502
+
503
+ @property
504
+ @pulumi.getter(name="projectId")
505
+ def project_id(self) -> pulumi.Output[str]:
506
+ """
507
+ The project_id you want to attach the resource to
508
+ """
509
+ return pulumi.get(self, "project_id")
510
+
511
+ @property
512
+ @pulumi.getter
513
+ def region(self) -> pulumi.Output[str]:
514
+ """
515
+ The region you want to attach the resource to
516
+ """
517
+ return pulumi.get(self, "region")
518
+
519
+ @property
520
+ @pulumi.getter(name="websiteDomain")
521
+ def website_domain(self) -> pulumi.Output[str]:
522
+ """
523
+ The domain of the website endpoint. This is used to create DNS alias [records](https://www.scaleway.com/en/docs/network/domains-and-dns/how-to/manage-dns-records/).
524
+ """
525
+ return pulumi.get(self, "website_domain")
526
+
527
+ @property
528
+ @pulumi.getter(name="websiteEndpoint")
529
+ def website_endpoint(self) -> pulumi.Output[str]:
530
+ """
531
+ The website endpoint.
532
+ """
533
+ return pulumi.get(self, "website_endpoint")
534
+