pulumiverse-scaleway 1.26.0a1742897201__py3-none-any.whl → 1.27.0a1743490704__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.
- pulumiverse_scaleway/__init__.py +105 -0
- pulumiverse_scaleway/_inputs.py +663 -0
- pulumiverse_scaleway/apple_silicon_server.py +105 -0
- pulumiverse_scaleway/applesilicon/server.py +105 -0
- pulumiverse_scaleway/domain/__init__.py +1 -0
- pulumiverse_scaleway/domain/_inputs.py +2697 -0
- pulumiverse_scaleway/domain/outputs.py +2145 -0
- pulumiverse_scaleway/domain/registration.py +777 -0
- pulumiverse_scaleway/edge_services_backend_stage.py +472 -0
- pulumiverse_scaleway/edge_services_cache_stage.py +490 -0
- pulumiverse_scaleway/edge_services_dns_stage.py +516 -0
- pulumiverse_scaleway/edge_services_head_stage.py +258 -0
- pulumiverse_scaleway/edge_services_pipeline.py +436 -0
- pulumiverse_scaleway/edge_services_plan.py +239 -0
- pulumiverse_scaleway/edge_services_route_stage.py +422 -0
- pulumiverse_scaleway/edge_services_tls_stage.py +546 -0
- pulumiverse_scaleway/edge_services_waf_stage.py +444 -0
- pulumiverse_scaleway/elasticmetal/ip.py +13 -7
- pulumiverse_scaleway/flexible_ip.py +13 -7
- pulumiverse_scaleway/get_lb_frontend.py +12 -1
- pulumiverse_scaleway/get_lb_route.py +12 -1
- pulumiverse_scaleway/get_secret.py +15 -4
- pulumiverse_scaleway/get_vpc_public_gateway.py +34 -1
- pulumiverse_scaleway/get_vpc_public_gateway_dhcp.py +8 -0
- pulumiverse_scaleway/get_vpc_public_gateway_dhcp_reservation.py +8 -0
- pulumiverse_scaleway/loadbalancer_backend.py +2 -2
- pulumiverse_scaleway/loadbalancer_frontend.py +47 -0
- pulumiverse_scaleway/loadbalancer_route.py +48 -1
- pulumiverse_scaleway/loadbalancers/backend.py +2 -2
- pulumiverse_scaleway/loadbalancers/frontend.py +47 -0
- pulumiverse_scaleway/loadbalancers/get_frontend.py +12 -1
- pulumiverse_scaleway/loadbalancers/get_route.py +12 -1
- pulumiverse_scaleway/loadbalancers/outputs.py +13 -2
- pulumiverse_scaleway/loadbalancers/route.py +48 -1
- pulumiverse_scaleway/network/__init__.py +1 -0
- pulumiverse_scaleway/network/_inputs.py +194 -0
- pulumiverse_scaleway/network/acl.py +415 -0
- pulumiverse_scaleway/network/gateway_network.py +104 -122
- pulumiverse_scaleway/network/get_public_gateway.py +34 -1
- pulumiverse_scaleway/network/get_public_gateway_dhcp.py +8 -0
- pulumiverse_scaleway/network/get_public_gateway_dhcp_reservation.py +8 -0
- pulumiverse_scaleway/network/outputs.py +139 -0
- pulumiverse_scaleway/network/public_gateway.py +124 -21
- pulumiverse_scaleway/network/public_gateway_dhcp.py +8 -0
- pulumiverse_scaleway/network/public_gateway_dhcp_reservation.py +8 -0
- pulumiverse_scaleway/outputs.py +662 -2
- pulumiverse_scaleway/pulumi-plugin.json +1 -1
- pulumiverse_scaleway/secret.py +22 -2
- pulumiverse_scaleway/secret_version.py +6 -6
- pulumiverse_scaleway/secrets/_inputs.py +154 -0
- pulumiverse_scaleway/secrets/get_secret.py +15 -4
- pulumiverse_scaleway/secrets/outputs.py +200 -0
- pulumiverse_scaleway/secrets/secret.py +22 -2
- pulumiverse_scaleway/tem/__init__.py +2 -0
- pulumiverse_scaleway/tem/blocked_list.py +442 -0
- pulumiverse_scaleway/tem/domain.py +7 -0
- pulumiverse_scaleway/tem/get_offer_subscription.py +254 -0
- pulumiverse_scaleway/tem_domain.py +7 -0
- pulumiverse_scaleway/vpc_gateway_network.py +104 -122
- pulumiverse_scaleway/vpc_public_gateway.py +124 -21
- pulumiverse_scaleway/vpc_public_gateway_dhcp.py +8 -0
- pulumiverse_scaleway/vpc_public_gateway_dhcp_reservation.py +8 -0
- {pulumiverse_scaleway-1.26.0a1742897201.dist-info → pulumiverse_scaleway-1.27.0a1743490704.dist-info}/METADATA +1 -1
- {pulumiverse_scaleway-1.26.0a1742897201.dist-info → pulumiverse_scaleway-1.27.0a1743490704.dist-info}/RECORD +66 -53
- {pulumiverse_scaleway-1.26.0a1742897201.dist-info → pulumiverse_scaleway-1.27.0a1743490704.dist-info}/WHEEL +1 -1
- {pulumiverse_scaleway-1.26.0a1742897201.dist-info → pulumiverse_scaleway-1.27.0a1743490704.dist-info}/top_level.txt +0 -0
@@ -0,0 +1,444 @@
|
|
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__ = ['EdgeServicesWafStageArgs', 'EdgeServicesWafStage']
|
18
|
+
|
19
|
+
@pulumi.input_type
|
20
|
+
class EdgeServicesWafStageArgs:
|
21
|
+
def __init__(__self__, *,
|
22
|
+
paranoia_level: pulumi.Input[int],
|
23
|
+
pipeline_id: pulumi.Input[str],
|
24
|
+
backend_stage_id: Optional[pulumi.Input[str]] = None,
|
25
|
+
mode: Optional[pulumi.Input[str]] = None,
|
26
|
+
project_id: Optional[pulumi.Input[str]] = None):
|
27
|
+
"""
|
28
|
+
The set of arguments for constructing a EdgeServicesWafStage resource.
|
29
|
+
:param pulumi.Input[int] paranoia_level: The sensitivity level (`1`,`2`,`3`,`4`) to use when classifying requests as malicious. With a high level, requests are more likely to be classed as malicious, and false positives are expected. With a lower level, requests are more likely to be classed as benign.
|
30
|
+
:param pulumi.Input[str] pipeline_id: The ID of the pipeline.
|
31
|
+
:param pulumi.Input[str] backend_stage_id: The ID of the backend stage to forward requests to after the WAF stage.
|
32
|
+
:param pulumi.Input[str] mode: The mode defining WAF behavior (`disable`/`log_only`/`enable`).
|
33
|
+
:param pulumi.Input[str] project_id: `project_id`) The ID of the project the WAF stage is associated with.
|
34
|
+
"""
|
35
|
+
pulumi.set(__self__, "paranoia_level", paranoia_level)
|
36
|
+
pulumi.set(__self__, "pipeline_id", pipeline_id)
|
37
|
+
if backend_stage_id is not None:
|
38
|
+
pulumi.set(__self__, "backend_stage_id", backend_stage_id)
|
39
|
+
if mode is not None:
|
40
|
+
pulumi.set(__self__, "mode", mode)
|
41
|
+
if project_id is not None:
|
42
|
+
pulumi.set(__self__, "project_id", project_id)
|
43
|
+
|
44
|
+
@property
|
45
|
+
@pulumi.getter(name="paranoiaLevel")
|
46
|
+
def paranoia_level(self) -> pulumi.Input[int]:
|
47
|
+
"""
|
48
|
+
The sensitivity level (`1`,`2`,`3`,`4`) to use when classifying requests as malicious. With a high level, requests are more likely to be classed as malicious, and false positives are expected. With a lower level, requests are more likely to be classed as benign.
|
49
|
+
"""
|
50
|
+
return pulumi.get(self, "paranoia_level")
|
51
|
+
|
52
|
+
@paranoia_level.setter
|
53
|
+
def paranoia_level(self, value: pulumi.Input[int]):
|
54
|
+
pulumi.set(self, "paranoia_level", value)
|
55
|
+
|
56
|
+
@property
|
57
|
+
@pulumi.getter(name="pipelineId")
|
58
|
+
def pipeline_id(self) -> pulumi.Input[str]:
|
59
|
+
"""
|
60
|
+
The ID of the pipeline.
|
61
|
+
"""
|
62
|
+
return pulumi.get(self, "pipeline_id")
|
63
|
+
|
64
|
+
@pipeline_id.setter
|
65
|
+
def pipeline_id(self, value: pulumi.Input[str]):
|
66
|
+
pulumi.set(self, "pipeline_id", value)
|
67
|
+
|
68
|
+
@property
|
69
|
+
@pulumi.getter(name="backendStageId")
|
70
|
+
def backend_stage_id(self) -> Optional[pulumi.Input[str]]:
|
71
|
+
"""
|
72
|
+
The ID of the backend stage to forward requests to after the WAF stage.
|
73
|
+
"""
|
74
|
+
return pulumi.get(self, "backend_stage_id")
|
75
|
+
|
76
|
+
@backend_stage_id.setter
|
77
|
+
def backend_stage_id(self, value: Optional[pulumi.Input[str]]):
|
78
|
+
pulumi.set(self, "backend_stage_id", value)
|
79
|
+
|
80
|
+
@property
|
81
|
+
@pulumi.getter
|
82
|
+
def mode(self) -> Optional[pulumi.Input[str]]:
|
83
|
+
"""
|
84
|
+
The mode defining WAF behavior (`disable`/`log_only`/`enable`).
|
85
|
+
"""
|
86
|
+
return pulumi.get(self, "mode")
|
87
|
+
|
88
|
+
@mode.setter
|
89
|
+
def mode(self, value: Optional[pulumi.Input[str]]):
|
90
|
+
pulumi.set(self, "mode", value)
|
91
|
+
|
92
|
+
@property
|
93
|
+
@pulumi.getter(name="projectId")
|
94
|
+
def project_id(self) -> Optional[pulumi.Input[str]]:
|
95
|
+
"""
|
96
|
+
`project_id`) The ID of the project the WAF stage is associated with.
|
97
|
+
"""
|
98
|
+
return pulumi.get(self, "project_id")
|
99
|
+
|
100
|
+
@project_id.setter
|
101
|
+
def project_id(self, value: Optional[pulumi.Input[str]]):
|
102
|
+
pulumi.set(self, "project_id", value)
|
103
|
+
|
104
|
+
|
105
|
+
@pulumi.input_type
|
106
|
+
class _EdgeServicesWafStageState:
|
107
|
+
def __init__(__self__, *,
|
108
|
+
backend_stage_id: Optional[pulumi.Input[str]] = None,
|
109
|
+
created_at: Optional[pulumi.Input[str]] = None,
|
110
|
+
mode: Optional[pulumi.Input[str]] = None,
|
111
|
+
paranoia_level: Optional[pulumi.Input[int]] = None,
|
112
|
+
pipeline_id: Optional[pulumi.Input[str]] = None,
|
113
|
+
project_id: Optional[pulumi.Input[str]] = None,
|
114
|
+
updated_at: Optional[pulumi.Input[str]] = None):
|
115
|
+
"""
|
116
|
+
Input properties used for looking up and filtering EdgeServicesWafStage resources.
|
117
|
+
:param pulumi.Input[str] backend_stage_id: The ID of the backend stage to forward requests to after the WAF stage.
|
118
|
+
:param pulumi.Input[str] created_at: The date and time of the creation of the WAF stage.
|
119
|
+
:param pulumi.Input[str] mode: The mode defining WAF behavior (`disable`/`log_only`/`enable`).
|
120
|
+
:param pulumi.Input[int] paranoia_level: The sensitivity level (`1`,`2`,`3`,`4`) to use when classifying requests as malicious. With a high level, requests are more likely to be classed as malicious, and false positives are expected. With a lower level, requests are more likely to be classed as benign.
|
121
|
+
:param pulumi.Input[str] pipeline_id: The ID of the pipeline.
|
122
|
+
:param pulumi.Input[str] project_id: `project_id`) The ID of the project the WAF stage is associated with.
|
123
|
+
:param pulumi.Input[str] updated_at: The date and time of the last update of the WAF stage.
|
124
|
+
"""
|
125
|
+
if backend_stage_id is not None:
|
126
|
+
pulumi.set(__self__, "backend_stage_id", backend_stage_id)
|
127
|
+
if created_at is not None:
|
128
|
+
pulumi.set(__self__, "created_at", created_at)
|
129
|
+
if mode is not None:
|
130
|
+
pulumi.set(__self__, "mode", mode)
|
131
|
+
if paranoia_level is not None:
|
132
|
+
pulumi.set(__self__, "paranoia_level", paranoia_level)
|
133
|
+
if pipeline_id is not None:
|
134
|
+
pulumi.set(__self__, "pipeline_id", pipeline_id)
|
135
|
+
if project_id is not None:
|
136
|
+
pulumi.set(__self__, "project_id", project_id)
|
137
|
+
if updated_at is not None:
|
138
|
+
pulumi.set(__self__, "updated_at", updated_at)
|
139
|
+
|
140
|
+
@property
|
141
|
+
@pulumi.getter(name="backendStageId")
|
142
|
+
def backend_stage_id(self) -> Optional[pulumi.Input[str]]:
|
143
|
+
"""
|
144
|
+
The ID of the backend stage to forward requests to after the WAF stage.
|
145
|
+
"""
|
146
|
+
return pulumi.get(self, "backend_stage_id")
|
147
|
+
|
148
|
+
@backend_stage_id.setter
|
149
|
+
def backend_stage_id(self, value: Optional[pulumi.Input[str]]):
|
150
|
+
pulumi.set(self, "backend_stage_id", value)
|
151
|
+
|
152
|
+
@property
|
153
|
+
@pulumi.getter(name="createdAt")
|
154
|
+
def created_at(self) -> Optional[pulumi.Input[str]]:
|
155
|
+
"""
|
156
|
+
The date and time of the creation of the WAF stage.
|
157
|
+
"""
|
158
|
+
return pulumi.get(self, "created_at")
|
159
|
+
|
160
|
+
@created_at.setter
|
161
|
+
def created_at(self, value: Optional[pulumi.Input[str]]):
|
162
|
+
pulumi.set(self, "created_at", value)
|
163
|
+
|
164
|
+
@property
|
165
|
+
@pulumi.getter
|
166
|
+
def mode(self) -> Optional[pulumi.Input[str]]:
|
167
|
+
"""
|
168
|
+
The mode defining WAF behavior (`disable`/`log_only`/`enable`).
|
169
|
+
"""
|
170
|
+
return pulumi.get(self, "mode")
|
171
|
+
|
172
|
+
@mode.setter
|
173
|
+
def mode(self, value: Optional[pulumi.Input[str]]):
|
174
|
+
pulumi.set(self, "mode", value)
|
175
|
+
|
176
|
+
@property
|
177
|
+
@pulumi.getter(name="paranoiaLevel")
|
178
|
+
def paranoia_level(self) -> Optional[pulumi.Input[int]]:
|
179
|
+
"""
|
180
|
+
The sensitivity level (`1`,`2`,`3`,`4`) to use when classifying requests as malicious. With a high level, requests are more likely to be classed as malicious, and false positives are expected. With a lower level, requests are more likely to be classed as benign.
|
181
|
+
"""
|
182
|
+
return pulumi.get(self, "paranoia_level")
|
183
|
+
|
184
|
+
@paranoia_level.setter
|
185
|
+
def paranoia_level(self, value: Optional[pulumi.Input[int]]):
|
186
|
+
pulumi.set(self, "paranoia_level", value)
|
187
|
+
|
188
|
+
@property
|
189
|
+
@pulumi.getter(name="pipelineId")
|
190
|
+
def pipeline_id(self) -> Optional[pulumi.Input[str]]:
|
191
|
+
"""
|
192
|
+
The ID of the pipeline.
|
193
|
+
"""
|
194
|
+
return pulumi.get(self, "pipeline_id")
|
195
|
+
|
196
|
+
@pipeline_id.setter
|
197
|
+
def pipeline_id(self, value: Optional[pulumi.Input[str]]):
|
198
|
+
pulumi.set(self, "pipeline_id", value)
|
199
|
+
|
200
|
+
@property
|
201
|
+
@pulumi.getter(name="projectId")
|
202
|
+
def project_id(self) -> Optional[pulumi.Input[str]]:
|
203
|
+
"""
|
204
|
+
`project_id`) The ID of the project the WAF stage is associated with.
|
205
|
+
"""
|
206
|
+
return pulumi.get(self, "project_id")
|
207
|
+
|
208
|
+
@project_id.setter
|
209
|
+
def project_id(self, value: Optional[pulumi.Input[str]]):
|
210
|
+
pulumi.set(self, "project_id", value)
|
211
|
+
|
212
|
+
@property
|
213
|
+
@pulumi.getter(name="updatedAt")
|
214
|
+
def updated_at(self) -> Optional[pulumi.Input[str]]:
|
215
|
+
"""
|
216
|
+
The date and time of the last update of the WAF stage.
|
217
|
+
"""
|
218
|
+
return pulumi.get(self, "updated_at")
|
219
|
+
|
220
|
+
@updated_at.setter
|
221
|
+
def updated_at(self, value: Optional[pulumi.Input[str]]):
|
222
|
+
pulumi.set(self, "updated_at", value)
|
223
|
+
|
224
|
+
|
225
|
+
class EdgeServicesWafStage(pulumi.CustomResource):
|
226
|
+
@overload
|
227
|
+
def __init__(__self__,
|
228
|
+
resource_name: str,
|
229
|
+
opts: Optional[pulumi.ResourceOptions] = None,
|
230
|
+
backend_stage_id: Optional[pulumi.Input[str]] = None,
|
231
|
+
mode: Optional[pulumi.Input[str]] = None,
|
232
|
+
paranoia_level: Optional[pulumi.Input[int]] = None,
|
233
|
+
pipeline_id: Optional[pulumi.Input[str]] = None,
|
234
|
+
project_id: Optional[pulumi.Input[str]] = None,
|
235
|
+
__props__=None):
|
236
|
+
"""
|
237
|
+
Creates and manages Scaleway Edge Services WAF Stages.
|
238
|
+
|
239
|
+
## Example Usage
|
240
|
+
|
241
|
+
### Basic
|
242
|
+
|
243
|
+
```python
|
244
|
+
import pulumi
|
245
|
+
import pulumiverse_scaleway as scaleway
|
246
|
+
|
247
|
+
main = scaleway.EdgeServicesWafStage("main",
|
248
|
+
pipeline_id=main_scaleway_edge_services_pipeline["id"],
|
249
|
+
mode="enable",
|
250
|
+
paranoia_level=3)
|
251
|
+
```
|
252
|
+
|
253
|
+
## Import
|
254
|
+
|
255
|
+
WAF stages can be imported using the `{id}`, e.g.
|
256
|
+
|
257
|
+
bash
|
258
|
+
|
259
|
+
```sh
|
260
|
+
$ pulumi import scaleway:index/edgeServicesWafStage:EdgeServicesWafStage basic 11111111-1111-1111-1111-111111111111
|
261
|
+
```
|
262
|
+
|
263
|
+
:param str resource_name: The name of the resource.
|
264
|
+
:param pulumi.ResourceOptions opts: Options for the resource.
|
265
|
+
:param pulumi.Input[str] backend_stage_id: The ID of the backend stage to forward requests to after the WAF stage.
|
266
|
+
:param pulumi.Input[str] mode: The mode defining WAF behavior (`disable`/`log_only`/`enable`).
|
267
|
+
:param pulumi.Input[int] paranoia_level: The sensitivity level (`1`,`2`,`3`,`4`) to use when classifying requests as malicious. With a high level, requests are more likely to be classed as malicious, and false positives are expected. With a lower level, requests are more likely to be classed as benign.
|
268
|
+
:param pulumi.Input[str] pipeline_id: The ID of the pipeline.
|
269
|
+
:param pulumi.Input[str] project_id: `project_id`) The ID of the project the WAF stage is associated with.
|
270
|
+
"""
|
271
|
+
...
|
272
|
+
@overload
|
273
|
+
def __init__(__self__,
|
274
|
+
resource_name: str,
|
275
|
+
args: EdgeServicesWafStageArgs,
|
276
|
+
opts: Optional[pulumi.ResourceOptions] = None):
|
277
|
+
"""
|
278
|
+
Creates and manages Scaleway Edge Services WAF Stages.
|
279
|
+
|
280
|
+
## Example Usage
|
281
|
+
|
282
|
+
### Basic
|
283
|
+
|
284
|
+
```python
|
285
|
+
import pulumi
|
286
|
+
import pulumiverse_scaleway as scaleway
|
287
|
+
|
288
|
+
main = scaleway.EdgeServicesWafStage("main",
|
289
|
+
pipeline_id=main_scaleway_edge_services_pipeline["id"],
|
290
|
+
mode="enable",
|
291
|
+
paranoia_level=3)
|
292
|
+
```
|
293
|
+
|
294
|
+
## Import
|
295
|
+
|
296
|
+
WAF stages can be imported using the `{id}`, e.g.
|
297
|
+
|
298
|
+
bash
|
299
|
+
|
300
|
+
```sh
|
301
|
+
$ pulumi import scaleway:index/edgeServicesWafStage:EdgeServicesWafStage basic 11111111-1111-1111-1111-111111111111
|
302
|
+
```
|
303
|
+
|
304
|
+
:param str resource_name: The name of the resource.
|
305
|
+
:param EdgeServicesWafStageArgs args: The arguments to use to populate this resource's properties.
|
306
|
+
:param pulumi.ResourceOptions opts: Options for the resource.
|
307
|
+
"""
|
308
|
+
...
|
309
|
+
def __init__(__self__, resource_name: str, *args, **kwargs):
|
310
|
+
resource_args, opts = _utilities.get_resource_args_opts(EdgeServicesWafStageArgs, pulumi.ResourceOptions, *args, **kwargs)
|
311
|
+
if resource_args is not None:
|
312
|
+
__self__._internal_init(resource_name, opts, **resource_args.__dict__)
|
313
|
+
else:
|
314
|
+
__self__._internal_init(resource_name, *args, **kwargs)
|
315
|
+
|
316
|
+
def _internal_init(__self__,
|
317
|
+
resource_name: str,
|
318
|
+
opts: Optional[pulumi.ResourceOptions] = None,
|
319
|
+
backend_stage_id: Optional[pulumi.Input[str]] = None,
|
320
|
+
mode: Optional[pulumi.Input[str]] = None,
|
321
|
+
paranoia_level: Optional[pulumi.Input[int]] = None,
|
322
|
+
pipeline_id: Optional[pulumi.Input[str]] = None,
|
323
|
+
project_id: Optional[pulumi.Input[str]] = None,
|
324
|
+
__props__=None):
|
325
|
+
opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts)
|
326
|
+
if not isinstance(opts, pulumi.ResourceOptions):
|
327
|
+
raise TypeError('Expected resource options to be a ResourceOptions instance')
|
328
|
+
if opts.id is None:
|
329
|
+
if __props__ is not None:
|
330
|
+
raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource')
|
331
|
+
__props__ = EdgeServicesWafStageArgs.__new__(EdgeServicesWafStageArgs)
|
332
|
+
|
333
|
+
__props__.__dict__["backend_stage_id"] = backend_stage_id
|
334
|
+
__props__.__dict__["mode"] = mode
|
335
|
+
if paranoia_level is None and not opts.urn:
|
336
|
+
raise TypeError("Missing required property 'paranoia_level'")
|
337
|
+
__props__.__dict__["paranoia_level"] = paranoia_level
|
338
|
+
if pipeline_id is None and not opts.urn:
|
339
|
+
raise TypeError("Missing required property 'pipeline_id'")
|
340
|
+
__props__.__dict__["pipeline_id"] = pipeline_id
|
341
|
+
__props__.__dict__["project_id"] = project_id
|
342
|
+
__props__.__dict__["created_at"] = None
|
343
|
+
__props__.__dict__["updated_at"] = None
|
344
|
+
super(EdgeServicesWafStage, __self__).__init__(
|
345
|
+
'scaleway:index/edgeServicesWafStage:EdgeServicesWafStage',
|
346
|
+
resource_name,
|
347
|
+
__props__,
|
348
|
+
opts)
|
349
|
+
|
350
|
+
@staticmethod
|
351
|
+
def get(resource_name: str,
|
352
|
+
id: pulumi.Input[str],
|
353
|
+
opts: Optional[pulumi.ResourceOptions] = None,
|
354
|
+
backend_stage_id: Optional[pulumi.Input[str]] = None,
|
355
|
+
created_at: Optional[pulumi.Input[str]] = None,
|
356
|
+
mode: Optional[pulumi.Input[str]] = None,
|
357
|
+
paranoia_level: Optional[pulumi.Input[int]] = None,
|
358
|
+
pipeline_id: Optional[pulumi.Input[str]] = None,
|
359
|
+
project_id: Optional[pulumi.Input[str]] = None,
|
360
|
+
updated_at: Optional[pulumi.Input[str]] = None) -> 'EdgeServicesWafStage':
|
361
|
+
"""
|
362
|
+
Get an existing EdgeServicesWafStage resource's state with the given name, id, and optional extra
|
363
|
+
properties used to qualify the lookup.
|
364
|
+
|
365
|
+
:param str resource_name: The unique name of the resulting resource.
|
366
|
+
:param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
|
367
|
+
:param pulumi.ResourceOptions opts: Options for the resource.
|
368
|
+
:param pulumi.Input[str] backend_stage_id: The ID of the backend stage to forward requests to after the WAF stage.
|
369
|
+
:param pulumi.Input[str] created_at: The date and time of the creation of the WAF stage.
|
370
|
+
:param pulumi.Input[str] mode: The mode defining WAF behavior (`disable`/`log_only`/`enable`).
|
371
|
+
:param pulumi.Input[int] paranoia_level: The sensitivity level (`1`,`2`,`3`,`4`) to use when classifying requests as malicious. With a high level, requests are more likely to be classed as malicious, and false positives are expected. With a lower level, requests are more likely to be classed as benign.
|
372
|
+
:param pulumi.Input[str] pipeline_id: The ID of the pipeline.
|
373
|
+
:param pulumi.Input[str] project_id: `project_id`) The ID of the project the WAF stage is associated with.
|
374
|
+
:param pulumi.Input[str] updated_at: The date and time of the last update of the WAF stage.
|
375
|
+
"""
|
376
|
+
opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
|
377
|
+
|
378
|
+
__props__ = _EdgeServicesWafStageState.__new__(_EdgeServicesWafStageState)
|
379
|
+
|
380
|
+
__props__.__dict__["backend_stage_id"] = backend_stage_id
|
381
|
+
__props__.__dict__["created_at"] = created_at
|
382
|
+
__props__.__dict__["mode"] = mode
|
383
|
+
__props__.__dict__["paranoia_level"] = paranoia_level
|
384
|
+
__props__.__dict__["pipeline_id"] = pipeline_id
|
385
|
+
__props__.__dict__["project_id"] = project_id
|
386
|
+
__props__.__dict__["updated_at"] = updated_at
|
387
|
+
return EdgeServicesWafStage(resource_name, opts=opts, __props__=__props__)
|
388
|
+
|
389
|
+
@property
|
390
|
+
@pulumi.getter(name="backendStageId")
|
391
|
+
def backend_stage_id(self) -> pulumi.Output[str]:
|
392
|
+
"""
|
393
|
+
The ID of the backend stage to forward requests to after the WAF stage.
|
394
|
+
"""
|
395
|
+
return pulumi.get(self, "backend_stage_id")
|
396
|
+
|
397
|
+
@property
|
398
|
+
@pulumi.getter(name="createdAt")
|
399
|
+
def created_at(self) -> pulumi.Output[str]:
|
400
|
+
"""
|
401
|
+
The date and time of the creation of the WAF stage.
|
402
|
+
"""
|
403
|
+
return pulumi.get(self, "created_at")
|
404
|
+
|
405
|
+
@property
|
406
|
+
@pulumi.getter
|
407
|
+
def mode(self) -> pulumi.Output[str]:
|
408
|
+
"""
|
409
|
+
The mode defining WAF behavior (`disable`/`log_only`/`enable`).
|
410
|
+
"""
|
411
|
+
return pulumi.get(self, "mode")
|
412
|
+
|
413
|
+
@property
|
414
|
+
@pulumi.getter(name="paranoiaLevel")
|
415
|
+
def paranoia_level(self) -> pulumi.Output[int]:
|
416
|
+
"""
|
417
|
+
The sensitivity level (`1`,`2`,`3`,`4`) to use when classifying requests as malicious. With a high level, requests are more likely to be classed as malicious, and false positives are expected. With a lower level, requests are more likely to be classed as benign.
|
418
|
+
"""
|
419
|
+
return pulumi.get(self, "paranoia_level")
|
420
|
+
|
421
|
+
@property
|
422
|
+
@pulumi.getter(name="pipelineId")
|
423
|
+
def pipeline_id(self) -> pulumi.Output[str]:
|
424
|
+
"""
|
425
|
+
The ID of the pipeline.
|
426
|
+
"""
|
427
|
+
return pulumi.get(self, "pipeline_id")
|
428
|
+
|
429
|
+
@property
|
430
|
+
@pulumi.getter(name="projectId")
|
431
|
+
def project_id(self) -> pulumi.Output[str]:
|
432
|
+
"""
|
433
|
+
`project_id`) The ID of the project the WAF stage is associated with.
|
434
|
+
"""
|
435
|
+
return pulumi.get(self, "project_id")
|
436
|
+
|
437
|
+
@property
|
438
|
+
@pulumi.getter(name="updatedAt")
|
439
|
+
def updated_at(self) -> pulumi.Output[str]:
|
440
|
+
"""
|
441
|
+
The date and time of the last update of the WAF stage.
|
442
|
+
"""
|
443
|
+
return pulumi.get(self, "updated_at")
|
444
|
+
|
@@ -34,7 +34,7 @@ class IpArgs:
|
|
34
34
|
:param pulumi.Input[str] reverse: The reverse domain associated with this flexible IP.
|
35
35
|
:param pulumi.Input[str] server_id: The ID of the associated server.
|
36
36
|
:param pulumi.Input[Sequence[pulumi.Input[str]]] tags: A list of tags to apply to the flexible IP.
|
37
|
-
:param pulumi.Input[str] zone: The zone of the Flexible IP.
|
37
|
+
:param pulumi.Input[str] zone: `zone`) The zone of the Flexible IP.
|
38
38
|
"""
|
39
39
|
if description is not None:
|
40
40
|
pulumi.set(__self__, "description", description)
|
@@ -127,7 +127,7 @@ class IpArgs:
|
|
127
127
|
@pulumi.getter
|
128
128
|
def zone(self) -> Optional[pulumi.Input[str]]:
|
129
129
|
"""
|
130
|
-
The zone of the Flexible IP.
|
130
|
+
`zone`) The zone of the Flexible IP.
|
131
131
|
"""
|
132
132
|
return pulumi.get(self, "zone")
|
133
133
|
|
@@ -164,7 +164,7 @@ class _IpState:
|
|
164
164
|
:param pulumi.Input[str] status: The status of the flexible IP.
|
165
165
|
:param pulumi.Input[Sequence[pulumi.Input[str]]] tags: A list of tags to apply to the flexible IP.
|
166
166
|
:param pulumi.Input[str] updated_at: The date and time of the last update of the Flexible IP (Format ISO 8601).
|
167
|
-
:param pulumi.Input[str] zone: The zone of the Flexible IP.
|
167
|
+
:param pulumi.Input[str] zone: `zone`) The zone of the Flexible IP.
|
168
168
|
"""
|
169
169
|
if created_at is not None:
|
170
170
|
pulumi.set(__self__, "created_at", created_at)
|
@@ -327,7 +327,7 @@ class _IpState:
|
|
327
327
|
@pulumi.getter
|
328
328
|
def zone(self) -> Optional[pulumi.Input[str]]:
|
329
329
|
"""
|
330
|
-
The zone of the Flexible IP.
|
330
|
+
`zone`) The zone of the Flexible IP.
|
331
331
|
"""
|
332
332
|
return pulumi.get(self, "zone")
|
333
333
|
|
@@ -353,6 +353,9 @@ class Ip(pulumi.CustomResource):
|
|
353
353
|
Creates and manages Scaleway flexible IPs.
|
354
354
|
For more information, see the [API documentation](https://www.scaleway.com/en/developers/api/elastic-metal-flexible-ip).
|
355
355
|
|
356
|
+
> **Note:**
|
357
|
+
Flexible IPs are exclusively available for Elastic Metal (bare metal) servers. They are not compatible with other Scaleway products.
|
358
|
+
|
356
359
|
## Example Usage
|
357
360
|
|
358
361
|
### Basic
|
@@ -425,7 +428,7 @@ class Ip(pulumi.CustomResource):
|
|
425
428
|
:param pulumi.Input[str] reverse: The reverse domain associated with this flexible IP.
|
426
429
|
:param pulumi.Input[str] server_id: The ID of the associated server.
|
427
430
|
:param pulumi.Input[Sequence[pulumi.Input[str]]] tags: A list of tags to apply to the flexible IP.
|
428
|
-
:param pulumi.Input[str] zone: The zone of the Flexible IP.
|
431
|
+
:param pulumi.Input[str] zone: `zone`) The zone of the Flexible IP.
|
429
432
|
"""
|
430
433
|
...
|
431
434
|
@overload
|
@@ -437,6 +440,9 @@ class Ip(pulumi.CustomResource):
|
|
437
440
|
Creates and manages Scaleway flexible IPs.
|
438
441
|
For more information, see the [API documentation](https://www.scaleway.com/en/developers/api/elastic-metal-flexible-ip).
|
439
442
|
|
443
|
+
> **Note:**
|
444
|
+
Flexible IPs are exclusively available for Elastic Metal (bare metal) servers. They are not compatible with other Scaleway products.
|
445
|
+
|
440
446
|
## Example Usage
|
441
447
|
|
442
448
|
### Basic
|
@@ -586,7 +592,7 @@ class Ip(pulumi.CustomResource):
|
|
586
592
|
:param pulumi.Input[str] status: The status of the flexible IP.
|
587
593
|
:param pulumi.Input[Sequence[pulumi.Input[str]]] tags: A list of tags to apply to the flexible IP.
|
588
594
|
:param pulumi.Input[str] updated_at: The date and time of the last update of the Flexible IP (Format ISO 8601).
|
589
|
-
:param pulumi.Input[str] zone: The zone of the Flexible IP.
|
595
|
+
:param pulumi.Input[str] zone: `zone`) The zone of the Flexible IP.
|
590
596
|
"""
|
591
597
|
opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
|
592
598
|
|
@@ -698,7 +704,7 @@ class Ip(pulumi.CustomResource):
|
|
698
704
|
@pulumi.getter
|
699
705
|
def zone(self) -> pulumi.Output[str]:
|
700
706
|
"""
|
701
|
-
The zone of the Flexible IP.
|
707
|
+
`zone`) The zone of the Flexible IP.
|
702
708
|
"""
|
703
709
|
return pulumi.get(self, "zone")
|
704
710
|
|
@@ -34,7 +34,7 @@ class FlexibleIpArgs:
|
|
34
34
|
:param pulumi.Input[str] reverse: The reverse domain associated with this flexible IP.
|
35
35
|
:param pulumi.Input[str] server_id: The ID of the associated server.
|
36
36
|
:param pulumi.Input[Sequence[pulumi.Input[str]]] tags: A list of tags to apply to the flexible IP.
|
37
|
-
:param pulumi.Input[str] zone: The zone of the Flexible IP.
|
37
|
+
:param pulumi.Input[str] zone: `zone`) The zone of the Flexible IP.
|
38
38
|
"""
|
39
39
|
if description is not None:
|
40
40
|
pulumi.set(__self__, "description", description)
|
@@ -127,7 +127,7 @@ class FlexibleIpArgs:
|
|
127
127
|
@pulumi.getter
|
128
128
|
def zone(self) -> Optional[pulumi.Input[str]]:
|
129
129
|
"""
|
130
|
-
The zone of the Flexible IP.
|
130
|
+
`zone`) The zone of the Flexible IP.
|
131
131
|
"""
|
132
132
|
return pulumi.get(self, "zone")
|
133
133
|
|
@@ -164,7 +164,7 @@ class _FlexibleIpState:
|
|
164
164
|
:param pulumi.Input[str] status: The status of the flexible IP.
|
165
165
|
:param pulumi.Input[Sequence[pulumi.Input[str]]] tags: A list of tags to apply to the flexible IP.
|
166
166
|
:param pulumi.Input[str] updated_at: The date and time of the last update of the Flexible IP (Format ISO 8601).
|
167
|
-
:param pulumi.Input[str] zone: The zone of the Flexible IP.
|
167
|
+
:param pulumi.Input[str] zone: `zone`) The zone of the Flexible IP.
|
168
168
|
"""
|
169
169
|
if created_at is not None:
|
170
170
|
pulumi.set(__self__, "created_at", created_at)
|
@@ -327,7 +327,7 @@ class _FlexibleIpState:
|
|
327
327
|
@pulumi.getter
|
328
328
|
def zone(self) -> Optional[pulumi.Input[str]]:
|
329
329
|
"""
|
330
|
-
The zone of the Flexible IP.
|
330
|
+
`zone`) The zone of the Flexible IP.
|
331
331
|
"""
|
332
332
|
return pulumi.get(self, "zone")
|
333
333
|
|
@@ -358,6 +358,9 @@ class FlexibleIp(pulumi.CustomResource):
|
|
358
358
|
Creates and manages Scaleway flexible IPs.
|
359
359
|
For more information, see the [API documentation](https://www.scaleway.com/en/developers/api/elastic-metal-flexible-ip).
|
360
360
|
|
361
|
+
> **Note:**
|
362
|
+
Flexible IPs are exclusively available for Elastic Metal (bare metal) servers. They are not compatible with other Scaleway products.
|
363
|
+
|
361
364
|
## Example Usage
|
362
365
|
|
363
366
|
### Basic
|
@@ -430,7 +433,7 @@ class FlexibleIp(pulumi.CustomResource):
|
|
430
433
|
:param pulumi.Input[str] reverse: The reverse domain associated with this flexible IP.
|
431
434
|
:param pulumi.Input[str] server_id: The ID of the associated server.
|
432
435
|
:param pulumi.Input[Sequence[pulumi.Input[str]]] tags: A list of tags to apply to the flexible IP.
|
433
|
-
:param pulumi.Input[str] zone: The zone of the Flexible IP.
|
436
|
+
:param pulumi.Input[str] zone: `zone`) The zone of the Flexible IP.
|
434
437
|
"""
|
435
438
|
...
|
436
439
|
@overload
|
@@ -442,6 +445,9 @@ class FlexibleIp(pulumi.CustomResource):
|
|
442
445
|
Creates and manages Scaleway flexible IPs.
|
443
446
|
For more information, see the [API documentation](https://www.scaleway.com/en/developers/api/elastic-metal-flexible-ip).
|
444
447
|
|
448
|
+
> **Note:**
|
449
|
+
Flexible IPs are exclusively available for Elastic Metal (bare metal) servers. They are not compatible with other Scaleway products.
|
450
|
+
|
445
451
|
## Example Usage
|
446
452
|
|
447
453
|
### Basic
|
@@ -590,7 +596,7 @@ class FlexibleIp(pulumi.CustomResource):
|
|
590
596
|
:param pulumi.Input[str] status: The status of the flexible IP.
|
591
597
|
:param pulumi.Input[Sequence[pulumi.Input[str]]] tags: A list of tags to apply to the flexible IP.
|
592
598
|
:param pulumi.Input[str] updated_at: The date and time of the last update of the Flexible IP (Format ISO 8601).
|
593
|
-
:param pulumi.Input[str] zone: The zone of the Flexible IP.
|
599
|
+
:param pulumi.Input[str] zone: `zone`) The zone of the Flexible IP.
|
594
600
|
"""
|
595
601
|
opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
|
596
602
|
|
@@ -702,7 +708,7 @@ class FlexibleIp(pulumi.CustomResource):
|
|
702
708
|
@pulumi.getter
|
703
709
|
def zone(self) -> pulumi.Output[str]:
|
704
710
|
"""
|
705
|
-
The zone of the Flexible IP.
|
711
|
+
`zone`) The zone of the Flexible IP.
|
706
712
|
"""
|
707
713
|
return pulumi.get(self, "zone")
|
708
714
|
|
@@ -29,7 +29,7 @@ class GetLbFrontendResult:
|
|
29
29
|
"""
|
30
30
|
A collection of values returned by getLbFrontend.
|
31
31
|
"""
|
32
|
-
def __init__(__self__, acls=None, backend_id=None, certificate_id=None, certificate_ids=None, enable_http3=None, external_acls=None, frontend_id=None, id=None, inbound_port=None, lb_id=None, name=None, timeout_client=None):
|
32
|
+
def __init__(__self__, acls=None, backend_id=None, certificate_id=None, certificate_ids=None, connection_rate_limit=None, enable_http3=None, external_acls=None, frontend_id=None, id=None, inbound_port=None, lb_id=None, name=None, timeout_client=None):
|
33
33
|
if acls and not isinstance(acls, list):
|
34
34
|
raise TypeError("Expected argument 'acls' to be a list")
|
35
35
|
pulumi.set(__self__, "acls", acls)
|
@@ -42,6 +42,9 @@ class GetLbFrontendResult:
|
|
42
42
|
if certificate_ids and not isinstance(certificate_ids, list):
|
43
43
|
raise TypeError("Expected argument 'certificate_ids' to be a list")
|
44
44
|
pulumi.set(__self__, "certificate_ids", certificate_ids)
|
45
|
+
if connection_rate_limit and not isinstance(connection_rate_limit, int):
|
46
|
+
raise TypeError("Expected argument 'connection_rate_limit' to be a int")
|
47
|
+
pulumi.set(__self__, "connection_rate_limit", connection_rate_limit)
|
45
48
|
if enable_http3 and not isinstance(enable_http3, bool):
|
46
49
|
raise TypeError("Expected argument 'enable_http3' to be a bool")
|
47
50
|
pulumi.set(__self__, "enable_http3", enable_http3)
|
@@ -87,6 +90,11 @@ class GetLbFrontendResult:
|
|
87
90
|
def certificate_ids(self) -> Sequence[str]:
|
88
91
|
return pulumi.get(self, "certificate_ids")
|
89
92
|
|
93
|
+
@property
|
94
|
+
@pulumi.getter(name="connectionRateLimit")
|
95
|
+
def connection_rate_limit(self) -> int:
|
96
|
+
return pulumi.get(self, "connection_rate_limit")
|
97
|
+
|
90
98
|
@property
|
91
99
|
@pulumi.getter(name="enableHttp3")
|
92
100
|
def enable_http3(self) -> bool:
|
@@ -141,6 +149,7 @@ class AwaitableGetLbFrontendResult(GetLbFrontendResult):
|
|
141
149
|
backend_id=self.backend_id,
|
142
150
|
certificate_id=self.certificate_id,
|
143
151
|
certificate_ids=self.certificate_ids,
|
152
|
+
connection_rate_limit=self.connection_rate_limit,
|
144
153
|
enable_http3=self.enable_http3,
|
145
154
|
external_acls=self.external_acls,
|
146
155
|
frontend_id=self.frontend_id,
|
@@ -206,6 +215,7 @@ def get_lb_frontend(frontend_id: Optional[str] = None,
|
|
206
215
|
backend_id=pulumi.get(__ret__, 'backend_id'),
|
207
216
|
certificate_id=pulumi.get(__ret__, 'certificate_id'),
|
208
217
|
certificate_ids=pulumi.get(__ret__, 'certificate_ids'),
|
218
|
+
connection_rate_limit=pulumi.get(__ret__, 'connection_rate_limit'),
|
209
219
|
enable_http3=pulumi.get(__ret__, 'enable_http3'),
|
210
220
|
external_acls=pulumi.get(__ret__, 'external_acls'),
|
211
221
|
frontend_id=pulumi.get(__ret__, 'frontend_id'),
|
@@ -268,6 +278,7 @@ def get_lb_frontend_output(frontend_id: Optional[pulumi.Input[Optional[str]]] =
|
|
268
278
|
backend_id=pulumi.get(__response__, 'backend_id'),
|
269
279
|
certificate_id=pulumi.get(__response__, 'certificate_id'),
|
270
280
|
certificate_ids=pulumi.get(__response__, 'certificate_ids'),
|
281
|
+
connection_rate_limit=pulumi.get(__response__, 'connection_rate_limit'),
|
271
282
|
enable_http3=pulumi.get(__response__, 'enable_http3'),
|
272
283
|
external_acls=pulumi.get(__response__, 'external_acls'),
|
273
284
|
frontend_id=pulumi.get(__response__, 'frontend_id'),
|