pulumiverse-scaleway 1.26.0a1743166124__py3-none-any.whl → 1.27.0__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (30) hide show
  1. pulumiverse_scaleway/_inputs.py +113 -0
  2. pulumiverse_scaleway/baremetal_server.py +82 -0
  3. pulumiverse_scaleway/cockpit.py +7 -0
  4. pulumiverse_scaleway/edge_services_cache_stage.py +104 -10
  5. pulumiverse_scaleway/edge_services_dns_stage.py +21 -21
  6. pulumiverse_scaleway/edge_services_pipeline.py +44 -2
  7. pulumiverse_scaleway/edge_services_tls_stage.py +111 -17
  8. pulumiverse_scaleway/elasticmetal/__init__.py +1 -0
  9. pulumiverse_scaleway/elasticmetal/get_easy_partitioning.py +177 -0
  10. pulumiverse_scaleway/elasticmetal/server.py +82 -0
  11. pulumiverse_scaleway/get_cockpit_plan.py +1 -0
  12. pulumiverse_scaleway/get_instance_server.py +12 -1
  13. pulumiverse_scaleway/hosting/hosting.py +2 -2
  14. pulumiverse_scaleway/instance/get_server.py +12 -1
  15. pulumiverse_scaleway/instance/outputs.py +0 -11
  16. pulumiverse_scaleway/instance/server.py +54 -7
  17. pulumiverse_scaleway/instance_server.py +54 -7
  18. pulumiverse_scaleway/job/_inputs.py +113 -0
  19. pulumiverse_scaleway/job/definition.py +107 -0
  20. pulumiverse_scaleway/job/outputs.py +88 -0
  21. pulumiverse_scaleway/job_definition.py +107 -0
  22. pulumiverse_scaleway/observability/cockpit.py +7 -0
  23. pulumiverse_scaleway/observability/get_plan.py +1 -0
  24. pulumiverse_scaleway/outputs.py +88 -11
  25. pulumiverse_scaleway/pulumi-plugin.json +1 -1
  26. pulumiverse_scaleway/webhosting.py +2 -2
  27. {pulumiverse_scaleway-1.26.0a1743166124.dist-info → pulumiverse_scaleway-1.27.0.dist-info}/METADATA +1 -1
  28. {pulumiverse_scaleway-1.26.0a1743166124.dist-info → pulumiverse_scaleway-1.27.0.dist-info}/RECORD +30 -29
  29. {pulumiverse_scaleway-1.26.0a1743166124.dist-info → pulumiverse_scaleway-1.27.0.dist-info}/WHEEL +1 -1
  30. {pulumiverse_scaleway-1.26.0a1743166124.dist-info → pulumiverse_scaleway-1.27.0.dist-info}/top_level.txt +0 -0
@@ -28,11 +28,11 @@ class EdgeServicesDnsStageArgs:
28
28
  """
29
29
  The set of arguments for constructing a EdgeServicesDnsStage resource.
30
30
  :param pulumi.Input[str] pipeline_id: The ID of the pipeline.
31
- :param pulumi.Input[str] backend_stage_id: The backend stage ID the DNS stage will be linked to.
32
- :param pulumi.Input[str] cache_stage_id: The cache stage ID the DNS stage will be linked to.
31
+ :param pulumi.Input[str] backend_stage_id: The backend stage ID the DNS stage will be linked to. Only one of `backend_stage_id`, `cache_stage_id` and `tls_stage_id` should be specified.
32
+ :param pulumi.Input[str] cache_stage_id: The cache stage ID the DNS stage will be linked to. Only one of `backend_stage_id`, `cache_stage_id` and `tls_stage_id` should be specified.
33
33
  :param pulumi.Input[Sequence[pulumi.Input[str]]] fqdns: Fully Qualified Domain Name (in the format subdomain.example.com) to attach to the stage.
34
34
  :param pulumi.Input[str] project_id: `project_id`) The ID of the project the DNS stage is associated with.
35
- :param pulumi.Input[str] tls_stage_id: The TLS stage ID the DNS stage will be linked to.
35
+ :param pulumi.Input[str] tls_stage_id: The TLS stage ID the DNS stage will be linked to. Only one of `backend_stage_id`, `cache_stage_id` and `tls_stage_id` should be specified.
36
36
  """
37
37
  pulumi.set(__self__, "pipeline_id", pipeline_id)
38
38
  if backend_stage_id is not None:
@@ -62,7 +62,7 @@ class EdgeServicesDnsStageArgs:
62
62
  @pulumi.getter(name="backendStageId")
63
63
  def backend_stage_id(self) -> Optional[pulumi.Input[str]]:
64
64
  """
65
- The backend stage ID the DNS stage will be linked to.
65
+ The backend stage ID the DNS stage will be linked to. Only one of `backend_stage_id`, `cache_stage_id` and `tls_stage_id` should be specified.
66
66
  """
67
67
  return pulumi.get(self, "backend_stage_id")
68
68
 
@@ -74,7 +74,7 @@ class EdgeServicesDnsStageArgs:
74
74
  @pulumi.getter(name="cacheStageId")
75
75
  def cache_stage_id(self) -> Optional[pulumi.Input[str]]:
76
76
  """
77
- The cache stage ID the DNS stage will be linked to.
77
+ The cache stage ID the DNS stage will be linked to. Only one of `backend_stage_id`, `cache_stage_id` and `tls_stage_id` should be specified.
78
78
  """
79
79
  return pulumi.get(self, "cache_stage_id")
80
80
 
@@ -110,7 +110,7 @@ class EdgeServicesDnsStageArgs:
110
110
  @pulumi.getter(name="tlsStageId")
111
111
  def tls_stage_id(self) -> Optional[pulumi.Input[str]]:
112
112
  """
113
- The TLS stage ID the DNS stage will be linked to.
113
+ The TLS stage ID the DNS stage will be linked to. Only one of `backend_stage_id`, `cache_stage_id` and `tls_stage_id` should be specified.
114
114
  """
115
115
  return pulumi.get(self, "tls_stage_id")
116
116
 
@@ -133,13 +133,13 @@ class _EdgeServicesDnsStageState:
133
133
  updated_at: Optional[pulumi.Input[str]] = None):
134
134
  """
135
135
  Input properties used for looking up and filtering EdgeServicesDnsStage resources.
136
- :param pulumi.Input[str] backend_stage_id: The backend stage ID the DNS stage will be linked to.
137
- :param pulumi.Input[str] cache_stage_id: The cache stage ID the DNS stage will be linked to.
136
+ :param pulumi.Input[str] backend_stage_id: The backend stage ID the DNS stage will be linked to. Only one of `backend_stage_id`, `cache_stage_id` and `tls_stage_id` should be specified.
137
+ :param pulumi.Input[str] cache_stage_id: The cache stage ID the DNS stage will be linked to. Only one of `backend_stage_id`, `cache_stage_id` and `tls_stage_id` should be specified.
138
138
  :param pulumi.Input[str] created_at: The date and time of the creation of the DNS stage.
139
139
  :param pulumi.Input[Sequence[pulumi.Input[str]]] fqdns: Fully Qualified Domain Name (in the format subdomain.example.com) to attach to the stage.
140
140
  :param pulumi.Input[str] pipeline_id: The ID of the pipeline.
141
141
  :param pulumi.Input[str] project_id: `project_id`) The ID of the project the DNS stage is associated with.
142
- :param pulumi.Input[str] tls_stage_id: The TLS stage ID the DNS stage will be linked to.
142
+ :param pulumi.Input[str] tls_stage_id: The TLS stage ID the DNS stage will be linked to. Only one of `backend_stage_id`, `cache_stage_id` and `tls_stage_id` should be specified.
143
143
  :param pulumi.Input[str] type: The type of the stage.
144
144
  :param pulumi.Input[str] updated_at: The date and time of the last update of the DNS stage.
145
145
  """
@@ -166,7 +166,7 @@ class _EdgeServicesDnsStageState:
166
166
  @pulumi.getter(name="backendStageId")
167
167
  def backend_stage_id(self) -> Optional[pulumi.Input[str]]:
168
168
  """
169
- The backend stage ID the DNS stage will be linked to.
169
+ The backend stage ID the DNS stage will be linked to. Only one of `backend_stage_id`, `cache_stage_id` and `tls_stage_id` should be specified.
170
170
  """
171
171
  return pulumi.get(self, "backend_stage_id")
172
172
 
@@ -178,7 +178,7 @@ class _EdgeServicesDnsStageState:
178
178
  @pulumi.getter(name="cacheStageId")
179
179
  def cache_stage_id(self) -> Optional[pulumi.Input[str]]:
180
180
  """
181
- The cache stage ID the DNS stage will be linked to.
181
+ The cache stage ID the DNS stage will be linked to. Only one of `backend_stage_id`, `cache_stage_id` and `tls_stage_id` should be specified.
182
182
  """
183
183
  return pulumi.get(self, "cache_stage_id")
184
184
 
@@ -238,7 +238,7 @@ class _EdgeServicesDnsStageState:
238
238
  @pulumi.getter(name="tlsStageId")
239
239
  def tls_stage_id(self) -> Optional[pulumi.Input[str]]:
240
240
  """
241
- The TLS stage ID the DNS stage will be linked to.
241
+ The TLS stage ID the DNS stage will be linked to. Only one of `backend_stage_id`, `cache_stage_id` and `tls_stage_id` should be specified.
242
242
  """
243
243
  return pulumi.get(self, "tls_stage_id")
244
244
 
@@ -311,12 +311,12 @@ class EdgeServicesDnsStage(pulumi.CustomResource):
311
311
 
312
312
  :param str resource_name: The name of the resource.
313
313
  :param pulumi.ResourceOptions opts: Options for the resource.
314
- :param pulumi.Input[str] backend_stage_id: The backend stage ID the DNS stage will be linked to.
315
- :param pulumi.Input[str] cache_stage_id: The cache stage ID the DNS stage will be linked to.
314
+ :param pulumi.Input[str] backend_stage_id: The backend stage ID the DNS stage will be linked to. Only one of `backend_stage_id`, `cache_stage_id` and `tls_stage_id` should be specified.
315
+ :param pulumi.Input[str] cache_stage_id: The cache stage ID the DNS stage will be linked to. Only one of `backend_stage_id`, `cache_stage_id` and `tls_stage_id` should be specified.
316
316
  :param pulumi.Input[Sequence[pulumi.Input[str]]] fqdns: Fully Qualified Domain Name (in the format subdomain.example.com) to attach to the stage.
317
317
  :param pulumi.Input[str] pipeline_id: The ID of the pipeline.
318
318
  :param pulumi.Input[str] project_id: `project_id`) The ID of the project the DNS stage is associated with.
319
- :param pulumi.Input[str] tls_stage_id: The TLS stage ID the DNS stage will be linked to.
319
+ :param pulumi.Input[str] tls_stage_id: The TLS stage ID the DNS stage will be linked to. Only one of `backend_stage_id`, `cache_stage_id` and `tls_stage_id` should be specified.
320
320
  """
321
321
  ...
322
322
  @overload
@@ -417,13 +417,13 @@ class EdgeServicesDnsStage(pulumi.CustomResource):
417
417
  :param str resource_name: The unique name of the resulting resource.
418
418
  :param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
419
419
  :param pulumi.ResourceOptions opts: Options for the resource.
420
- :param pulumi.Input[str] backend_stage_id: The backend stage ID the DNS stage will be linked to.
421
- :param pulumi.Input[str] cache_stage_id: The cache stage ID the DNS stage will be linked to.
420
+ :param pulumi.Input[str] backend_stage_id: The backend stage ID the DNS stage will be linked to. Only one of `backend_stage_id`, `cache_stage_id` and `tls_stage_id` should be specified.
421
+ :param pulumi.Input[str] cache_stage_id: The cache stage ID the DNS stage will be linked to. Only one of `backend_stage_id`, `cache_stage_id` and `tls_stage_id` should be specified.
422
422
  :param pulumi.Input[str] created_at: The date and time of the creation of the DNS stage.
423
423
  :param pulumi.Input[Sequence[pulumi.Input[str]]] fqdns: Fully Qualified Domain Name (in the format subdomain.example.com) to attach to the stage.
424
424
  :param pulumi.Input[str] pipeline_id: The ID of the pipeline.
425
425
  :param pulumi.Input[str] project_id: `project_id`) The ID of the project the DNS stage is associated with.
426
- :param pulumi.Input[str] tls_stage_id: The TLS stage ID the DNS stage will be linked to.
426
+ :param pulumi.Input[str] tls_stage_id: The TLS stage ID the DNS stage will be linked to. Only one of `backend_stage_id`, `cache_stage_id` and `tls_stage_id` should be specified.
427
427
  :param pulumi.Input[str] type: The type of the stage.
428
428
  :param pulumi.Input[str] updated_at: The date and time of the last update of the DNS stage.
429
429
  """
@@ -446,7 +446,7 @@ class EdgeServicesDnsStage(pulumi.CustomResource):
446
446
  @pulumi.getter(name="backendStageId")
447
447
  def backend_stage_id(self) -> pulumi.Output[str]:
448
448
  """
449
- The backend stage ID the DNS stage will be linked to.
449
+ The backend stage ID the DNS stage will be linked to. Only one of `backend_stage_id`, `cache_stage_id` and `tls_stage_id` should be specified.
450
450
  """
451
451
  return pulumi.get(self, "backend_stage_id")
452
452
 
@@ -454,7 +454,7 @@ class EdgeServicesDnsStage(pulumi.CustomResource):
454
454
  @pulumi.getter(name="cacheStageId")
455
455
  def cache_stage_id(self) -> pulumi.Output[str]:
456
456
  """
457
- The cache stage ID the DNS stage will be linked to.
457
+ The cache stage ID the DNS stage will be linked to. Only one of `backend_stage_id`, `cache_stage_id` and `tls_stage_id` should be specified.
458
458
  """
459
459
  return pulumi.get(self, "cache_stage_id")
460
460
 
@@ -494,7 +494,7 @@ class EdgeServicesDnsStage(pulumi.CustomResource):
494
494
  @pulumi.getter(name="tlsStageId")
495
495
  def tls_stage_id(self) -> pulumi.Output[str]:
496
496
  """
497
- The TLS stage ID the DNS stage will be linked to.
497
+ The TLS stage ID the DNS stage will be linked to. Only one of `backend_stage_id`, `cache_stage_id` and `tls_stage_id` should be specified.
498
498
  """
499
499
  return pulumi.get(self, "tls_stage_id")
500
500
 
@@ -216,9 +216,30 @@ class EdgeServicesPipeline(pulumi.CustomResource):
216
216
  "bucket_name": "my-bucket-name",
217
217
  "bucket_region": "fr-par",
218
218
  })
219
+ main_edge_services_waf_stage = scaleway.EdgeServicesWafStage("main",
220
+ pipeline_id=main.id,
221
+ backend_stage_id=main_edge_services_backend_stage.id,
222
+ mode="enable",
223
+ paranoia_level=3)
224
+ main_edge_services_route_stage = scaleway.EdgeServicesRouteStage("main",
225
+ pipeline_id=main.id,
226
+ waf_stage_id=main_edge_services_waf_stage.id,
227
+ rules=[{
228
+ "backend_stage_id": main_edge_services_backend_stage.id,
229
+ "rule_http_match": {
230
+ "method_filters": [
231
+ "get",
232
+ "post",
233
+ ],
234
+ "path_filter": {
235
+ "path_filter_type": "regex",
236
+ "value": ".*",
237
+ },
238
+ },
239
+ }])
219
240
  main_edge_services_cache_stage = scaleway.EdgeServicesCacheStage("main",
220
241
  pipeline_id=main.id,
221
- backend_stage_id=main_edge_services_backend_stage.id)
242
+ route_stage_id=main_edge_services_route_stage.id)
222
243
  main_edge_services_tls_stage = scaleway.EdgeServicesTlsStage("main",
223
244
  pipeline_id=main.id,
224
245
  cache_stage_id=main_edge_services_cache_stage.id,
@@ -285,9 +306,30 @@ class EdgeServicesPipeline(pulumi.CustomResource):
285
306
  "bucket_name": "my-bucket-name",
286
307
  "bucket_region": "fr-par",
287
308
  })
309
+ main_edge_services_waf_stage = scaleway.EdgeServicesWafStage("main",
310
+ pipeline_id=main.id,
311
+ backend_stage_id=main_edge_services_backend_stage.id,
312
+ mode="enable",
313
+ paranoia_level=3)
314
+ main_edge_services_route_stage = scaleway.EdgeServicesRouteStage("main",
315
+ pipeline_id=main.id,
316
+ waf_stage_id=main_edge_services_waf_stage.id,
317
+ rules=[{
318
+ "backend_stage_id": main_edge_services_backend_stage.id,
319
+ "rule_http_match": {
320
+ "method_filters": [
321
+ "get",
322
+ "post",
323
+ ],
324
+ "path_filter": {
325
+ "path_filter_type": "regex",
326
+ "value": ".*",
327
+ },
328
+ },
329
+ }])
288
330
  main_edge_services_cache_stage = scaleway.EdgeServicesCacheStage("main",
289
331
  pipeline_id=main.id,
290
- backend_stage_id=main_edge_services_backend_stage.id)
332
+ route_stage_id=main_edge_services_route_stage.id)
291
333
  main_edge_services_tls_stage = scaleway.EdgeServicesTlsStage("main",
292
334
  pipeline_id=main.id,
293
335
  cache_stage_id=main_edge_services_cache_stage.id,
@@ -26,15 +26,19 @@ class EdgeServicesTlsStageArgs:
26
26
  cache_stage_id: Optional[pulumi.Input[str]] = None,
27
27
  managed_certificate: Optional[pulumi.Input[bool]] = None,
28
28
  project_id: Optional[pulumi.Input[str]] = None,
29
- secrets: Optional[pulumi.Input[Sequence[pulumi.Input['EdgeServicesTlsStageSecretArgs']]]] = None):
29
+ route_stage_id: Optional[pulumi.Input[str]] = None,
30
+ secrets: Optional[pulumi.Input[Sequence[pulumi.Input['EdgeServicesTlsStageSecretArgs']]]] = None,
31
+ waf_stage_id: Optional[pulumi.Input[str]] = None):
30
32
  """
31
33
  The set of arguments for constructing a EdgeServicesTlsStage resource.
32
34
  :param pulumi.Input[str] pipeline_id: The ID of the pipeline.
33
- :param pulumi.Input[str] backend_stage_id: The backend stage ID the TLS stage will be linked to.
34
- :param pulumi.Input[str] cache_stage_id: The cache stage ID the TLS stage will be linked to.
35
+ :param pulumi.Input[str] backend_stage_id: The backend stage ID the TLS stage will be linked to. Only one of `backend_stage_id`, `cache_stage_id`, `route_stage_id` and `waf_stage_id` should be specified.
36
+ :param pulumi.Input[str] cache_stage_id: The cache stage ID the TLS stage will be linked to. Only one of `backend_stage_id`, `cache_stage_id`, `route_stage_id` and `waf_stage_id` should be specified.
35
37
  :param pulumi.Input[bool] managed_certificate: Set to true when Scaleway generates and manages a Let's Encrypt certificate for the TLS stage/custom endpoint.
36
38
  :param pulumi.Input[str] project_id: `project_id`) The ID of the project the TLS stage is associated with.
39
+ :param pulumi.Input[str] route_stage_id: The route stage ID the TLS stage will be linked to. Only one of `backend_stage_id`, `cache_stage_id`, `route_stage_id` and `waf_stage_id` should be specified.
37
40
  :param pulumi.Input[Sequence[pulumi.Input['EdgeServicesTlsStageSecretArgs']]] secrets: The TLS secrets.
41
+ :param pulumi.Input[str] waf_stage_id: The WAF stage ID the TLS stage will be linked to. Only one of `backend_stage_id`, `cache_stage_id`, `route_stage_id` and `waf_stage_id` should be specified.
38
42
  """
39
43
  pulumi.set(__self__, "pipeline_id", pipeline_id)
40
44
  if backend_stage_id is not None:
@@ -45,8 +49,12 @@ class EdgeServicesTlsStageArgs:
45
49
  pulumi.set(__self__, "managed_certificate", managed_certificate)
46
50
  if project_id is not None:
47
51
  pulumi.set(__self__, "project_id", project_id)
52
+ if route_stage_id is not None:
53
+ pulumi.set(__self__, "route_stage_id", route_stage_id)
48
54
  if secrets is not None:
49
55
  pulumi.set(__self__, "secrets", secrets)
56
+ if waf_stage_id is not None:
57
+ pulumi.set(__self__, "waf_stage_id", waf_stage_id)
50
58
 
51
59
  @property
52
60
  @pulumi.getter(name="pipelineId")
@@ -64,7 +72,7 @@ class EdgeServicesTlsStageArgs:
64
72
  @pulumi.getter(name="backendStageId")
65
73
  def backend_stage_id(self) -> Optional[pulumi.Input[str]]:
66
74
  """
67
- The backend stage ID the TLS stage will be linked to.
75
+ The backend stage ID the TLS stage will be linked to. Only one of `backend_stage_id`, `cache_stage_id`, `route_stage_id` and `waf_stage_id` should be specified.
68
76
  """
69
77
  return pulumi.get(self, "backend_stage_id")
70
78
 
@@ -76,7 +84,7 @@ class EdgeServicesTlsStageArgs:
76
84
  @pulumi.getter(name="cacheStageId")
77
85
  def cache_stage_id(self) -> Optional[pulumi.Input[str]]:
78
86
  """
79
- The cache stage ID the TLS stage will be linked to.
87
+ The cache stage ID the TLS stage will be linked to. Only one of `backend_stage_id`, `cache_stage_id`, `route_stage_id` and `waf_stage_id` should be specified.
80
88
  """
81
89
  return pulumi.get(self, "cache_stage_id")
82
90
 
@@ -108,6 +116,18 @@ class EdgeServicesTlsStageArgs:
108
116
  def project_id(self, value: Optional[pulumi.Input[str]]):
109
117
  pulumi.set(self, "project_id", value)
110
118
 
119
+ @property
120
+ @pulumi.getter(name="routeStageId")
121
+ def route_stage_id(self) -> Optional[pulumi.Input[str]]:
122
+ """
123
+ The route stage ID the TLS stage will be linked to. Only one of `backend_stage_id`, `cache_stage_id`, `route_stage_id` and `waf_stage_id` should be specified.
124
+ """
125
+ return pulumi.get(self, "route_stage_id")
126
+
127
+ @route_stage_id.setter
128
+ def route_stage_id(self, value: Optional[pulumi.Input[str]]):
129
+ pulumi.set(self, "route_stage_id", value)
130
+
111
131
  @property
112
132
  @pulumi.getter
113
133
  def secrets(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['EdgeServicesTlsStageSecretArgs']]]]:
@@ -120,6 +140,18 @@ class EdgeServicesTlsStageArgs:
120
140
  def secrets(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['EdgeServicesTlsStageSecretArgs']]]]):
121
141
  pulumi.set(self, "secrets", value)
122
142
 
143
+ @property
144
+ @pulumi.getter(name="wafStageId")
145
+ def waf_stage_id(self) -> Optional[pulumi.Input[str]]:
146
+ """
147
+ The WAF stage ID the TLS stage will be linked to. Only one of `backend_stage_id`, `cache_stage_id`, `route_stage_id` and `waf_stage_id` should be specified.
148
+ """
149
+ return pulumi.get(self, "waf_stage_id")
150
+
151
+ @waf_stage_id.setter
152
+ def waf_stage_id(self, value: Optional[pulumi.Input[str]]):
153
+ pulumi.set(self, "waf_stage_id", value)
154
+
123
155
 
124
156
  @pulumi.input_type
125
157
  class _EdgeServicesTlsStageState:
@@ -131,19 +163,23 @@ class _EdgeServicesTlsStageState:
131
163
  managed_certificate: Optional[pulumi.Input[bool]] = None,
132
164
  pipeline_id: Optional[pulumi.Input[str]] = None,
133
165
  project_id: Optional[pulumi.Input[str]] = None,
166
+ route_stage_id: Optional[pulumi.Input[str]] = None,
134
167
  secrets: Optional[pulumi.Input[Sequence[pulumi.Input['EdgeServicesTlsStageSecretArgs']]]] = None,
135
- updated_at: Optional[pulumi.Input[str]] = None):
168
+ updated_at: Optional[pulumi.Input[str]] = None,
169
+ waf_stage_id: Optional[pulumi.Input[str]] = None):
136
170
  """
137
171
  Input properties used for looking up and filtering EdgeServicesTlsStage resources.
138
- :param pulumi.Input[str] backend_stage_id: The backend stage ID the TLS stage will be linked to.
139
- :param pulumi.Input[str] cache_stage_id: The cache stage ID the TLS stage will be linked to.
172
+ :param pulumi.Input[str] backend_stage_id: The backend stage ID the TLS stage will be linked to. Only one of `backend_stage_id`, `cache_stage_id`, `route_stage_id` and `waf_stage_id` should be specified.
173
+ :param pulumi.Input[str] cache_stage_id: The cache stage ID the TLS stage will be linked to. Only one of `backend_stage_id`, `cache_stage_id`, `route_stage_id` and `waf_stage_id` should be specified.
140
174
  :param pulumi.Input[str] certificate_expires_at: The expiration date of the certificate.
141
175
  :param pulumi.Input[str] created_at: The date and time of the creation of the TLS stage.
142
176
  :param pulumi.Input[bool] managed_certificate: Set to true when Scaleway generates and manages a Let's Encrypt certificate for the TLS stage/custom endpoint.
143
177
  :param pulumi.Input[str] pipeline_id: The ID of the pipeline.
144
178
  :param pulumi.Input[str] project_id: `project_id`) The ID of the project the TLS stage is associated with.
179
+ :param pulumi.Input[str] route_stage_id: The route stage ID the TLS stage will be linked to. Only one of `backend_stage_id`, `cache_stage_id`, `route_stage_id` and `waf_stage_id` should be specified.
145
180
  :param pulumi.Input[Sequence[pulumi.Input['EdgeServicesTlsStageSecretArgs']]] secrets: The TLS secrets.
146
181
  :param pulumi.Input[str] updated_at: The date and time of the last update of the TLS stage.
182
+ :param pulumi.Input[str] waf_stage_id: The WAF stage ID the TLS stage will be linked to. Only one of `backend_stage_id`, `cache_stage_id`, `route_stage_id` and `waf_stage_id` should be specified.
147
183
  """
148
184
  if backend_stage_id is not None:
149
185
  pulumi.set(__self__, "backend_stage_id", backend_stage_id)
@@ -159,16 +195,20 @@ class _EdgeServicesTlsStageState:
159
195
  pulumi.set(__self__, "pipeline_id", pipeline_id)
160
196
  if project_id is not None:
161
197
  pulumi.set(__self__, "project_id", project_id)
198
+ if route_stage_id is not None:
199
+ pulumi.set(__self__, "route_stage_id", route_stage_id)
162
200
  if secrets is not None:
163
201
  pulumi.set(__self__, "secrets", secrets)
164
202
  if updated_at is not None:
165
203
  pulumi.set(__self__, "updated_at", updated_at)
204
+ if waf_stage_id is not None:
205
+ pulumi.set(__self__, "waf_stage_id", waf_stage_id)
166
206
 
167
207
  @property
168
208
  @pulumi.getter(name="backendStageId")
169
209
  def backend_stage_id(self) -> Optional[pulumi.Input[str]]:
170
210
  """
171
- The backend stage ID the TLS stage will be linked to.
211
+ The backend stage ID the TLS stage will be linked to. Only one of `backend_stage_id`, `cache_stage_id`, `route_stage_id` and `waf_stage_id` should be specified.
172
212
  """
173
213
  return pulumi.get(self, "backend_stage_id")
174
214
 
@@ -180,7 +220,7 @@ class _EdgeServicesTlsStageState:
180
220
  @pulumi.getter(name="cacheStageId")
181
221
  def cache_stage_id(self) -> Optional[pulumi.Input[str]]:
182
222
  """
183
- The cache stage ID the TLS stage will be linked to.
223
+ The cache stage ID the TLS stage will be linked to. Only one of `backend_stage_id`, `cache_stage_id`, `route_stage_id` and `waf_stage_id` should be specified.
184
224
  """
185
225
  return pulumi.get(self, "cache_stage_id")
186
226
 
@@ -248,6 +288,18 @@ class _EdgeServicesTlsStageState:
248
288
  def project_id(self, value: Optional[pulumi.Input[str]]):
249
289
  pulumi.set(self, "project_id", value)
250
290
 
291
+ @property
292
+ @pulumi.getter(name="routeStageId")
293
+ def route_stage_id(self) -> Optional[pulumi.Input[str]]:
294
+ """
295
+ The route stage ID the TLS stage will be linked to. Only one of `backend_stage_id`, `cache_stage_id`, `route_stage_id` and `waf_stage_id` should be specified.
296
+ """
297
+ return pulumi.get(self, "route_stage_id")
298
+
299
+ @route_stage_id.setter
300
+ def route_stage_id(self, value: Optional[pulumi.Input[str]]):
301
+ pulumi.set(self, "route_stage_id", value)
302
+
251
303
  @property
252
304
  @pulumi.getter
253
305
  def secrets(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['EdgeServicesTlsStageSecretArgs']]]]:
@@ -272,6 +324,18 @@ class _EdgeServicesTlsStageState:
272
324
  def updated_at(self, value: Optional[pulumi.Input[str]]):
273
325
  pulumi.set(self, "updated_at", value)
274
326
 
327
+ @property
328
+ @pulumi.getter(name="wafStageId")
329
+ def waf_stage_id(self) -> Optional[pulumi.Input[str]]:
330
+ """
331
+ The WAF stage ID the TLS stage will be linked to. Only one of `backend_stage_id`, `cache_stage_id`, `route_stage_id` and `waf_stage_id` should be specified.
332
+ """
333
+ return pulumi.get(self, "waf_stage_id")
334
+
335
+ @waf_stage_id.setter
336
+ def waf_stage_id(self, value: Optional[pulumi.Input[str]]):
337
+ pulumi.set(self, "waf_stage_id", value)
338
+
275
339
 
276
340
  class EdgeServicesTlsStage(pulumi.CustomResource):
277
341
  @overload
@@ -283,7 +347,9 @@ class EdgeServicesTlsStage(pulumi.CustomResource):
283
347
  managed_certificate: Optional[pulumi.Input[bool]] = None,
284
348
  pipeline_id: Optional[pulumi.Input[str]] = None,
285
349
  project_id: Optional[pulumi.Input[str]] = None,
350
+ route_stage_id: Optional[pulumi.Input[str]] = None,
286
351
  secrets: Optional[pulumi.Input[Sequence[pulumi.Input[Union['EdgeServicesTlsStageSecretArgs', 'EdgeServicesTlsStageSecretArgsDict']]]]] = None,
352
+ waf_stage_id: Optional[pulumi.Input[str]] = None,
287
353
  __props__=None):
288
354
  """
289
355
  Creates and manages Scaleway Edge Services TLS Stages.
@@ -327,12 +393,14 @@ class EdgeServicesTlsStage(pulumi.CustomResource):
327
393
 
328
394
  :param str resource_name: The name of the resource.
329
395
  :param pulumi.ResourceOptions opts: Options for the resource.
330
- :param pulumi.Input[str] backend_stage_id: The backend stage ID the TLS stage will be linked to.
331
- :param pulumi.Input[str] cache_stage_id: The cache stage ID the TLS stage will be linked to.
396
+ :param pulumi.Input[str] backend_stage_id: The backend stage ID the TLS stage will be linked to. Only one of `backend_stage_id`, `cache_stage_id`, `route_stage_id` and `waf_stage_id` should be specified.
397
+ :param pulumi.Input[str] cache_stage_id: The cache stage ID the TLS stage will be linked to. Only one of `backend_stage_id`, `cache_stage_id`, `route_stage_id` and `waf_stage_id` should be specified.
332
398
  :param pulumi.Input[bool] managed_certificate: Set to true when Scaleway generates and manages a Let's Encrypt certificate for the TLS stage/custom endpoint.
333
399
  :param pulumi.Input[str] pipeline_id: The ID of the pipeline.
334
400
  :param pulumi.Input[str] project_id: `project_id`) The ID of the project the TLS stage is associated with.
401
+ :param pulumi.Input[str] route_stage_id: The route stage ID the TLS stage will be linked to. Only one of `backend_stage_id`, `cache_stage_id`, `route_stage_id` and `waf_stage_id` should be specified.
335
402
  :param pulumi.Input[Sequence[pulumi.Input[Union['EdgeServicesTlsStageSecretArgs', 'EdgeServicesTlsStageSecretArgsDict']]]] secrets: The TLS secrets.
403
+ :param pulumi.Input[str] waf_stage_id: The WAF stage ID the TLS stage will be linked to. Only one of `backend_stage_id`, `cache_stage_id`, `route_stage_id` and `waf_stage_id` should be specified.
336
404
  """
337
405
  ...
338
406
  @overload
@@ -400,7 +468,9 @@ class EdgeServicesTlsStage(pulumi.CustomResource):
400
468
  managed_certificate: Optional[pulumi.Input[bool]] = None,
401
469
  pipeline_id: Optional[pulumi.Input[str]] = None,
402
470
  project_id: Optional[pulumi.Input[str]] = None,
471
+ route_stage_id: Optional[pulumi.Input[str]] = None,
403
472
  secrets: Optional[pulumi.Input[Sequence[pulumi.Input[Union['EdgeServicesTlsStageSecretArgs', 'EdgeServicesTlsStageSecretArgsDict']]]]] = None,
473
+ waf_stage_id: Optional[pulumi.Input[str]] = None,
404
474
  __props__=None):
405
475
  opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts)
406
476
  if not isinstance(opts, pulumi.ResourceOptions):
@@ -417,7 +487,9 @@ class EdgeServicesTlsStage(pulumi.CustomResource):
417
487
  raise TypeError("Missing required property 'pipeline_id'")
418
488
  __props__.__dict__["pipeline_id"] = pipeline_id
419
489
  __props__.__dict__["project_id"] = project_id
490
+ __props__.__dict__["route_stage_id"] = route_stage_id
420
491
  __props__.__dict__["secrets"] = secrets
492
+ __props__.__dict__["waf_stage_id"] = waf_stage_id
421
493
  __props__.__dict__["certificate_expires_at"] = None
422
494
  __props__.__dict__["created_at"] = None
423
495
  __props__.__dict__["updated_at"] = None
@@ -438,8 +510,10 @@ class EdgeServicesTlsStage(pulumi.CustomResource):
438
510
  managed_certificate: Optional[pulumi.Input[bool]] = None,
439
511
  pipeline_id: Optional[pulumi.Input[str]] = None,
440
512
  project_id: Optional[pulumi.Input[str]] = None,
513
+ route_stage_id: Optional[pulumi.Input[str]] = None,
441
514
  secrets: Optional[pulumi.Input[Sequence[pulumi.Input[Union['EdgeServicesTlsStageSecretArgs', 'EdgeServicesTlsStageSecretArgsDict']]]]] = None,
442
- updated_at: Optional[pulumi.Input[str]] = None) -> 'EdgeServicesTlsStage':
515
+ updated_at: Optional[pulumi.Input[str]] = None,
516
+ waf_stage_id: Optional[pulumi.Input[str]] = None) -> 'EdgeServicesTlsStage':
443
517
  """
444
518
  Get an existing EdgeServicesTlsStage resource's state with the given name, id, and optional extra
445
519
  properties used to qualify the lookup.
@@ -447,15 +521,17 @@ class EdgeServicesTlsStage(pulumi.CustomResource):
447
521
  :param str resource_name: The unique name of the resulting resource.
448
522
  :param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
449
523
  :param pulumi.ResourceOptions opts: Options for the resource.
450
- :param pulumi.Input[str] backend_stage_id: The backend stage ID the TLS stage will be linked to.
451
- :param pulumi.Input[str] cache_stage_id: The cache stage ID the TLS stage will be linked to.
524
+ :param pulumi.Input[str] backend_stage_id: The backend stage ID the TLS stage will be linked to. Only one of `backend_stage_id`, `cache_stage_id`, `route_stage_id` and `waf_stage_id` should be specified.
525
+ :param pulumi.Input[str] cache_stage_id: The cache stage ID the TLS stage will be linked to. Only one of `backend_stage_id`, `cache_stage_id`, `route_stage_id` and `waf_stage_id` should be specified.
452
526
  :param pulumi.Input[str] certificate_expires_at: The expiration date of the certificate.
453
527
  :param pulumi.Input[str] created_at: The date and time of the creation of the TLS stage.
454
528
  :param pulumi.Input[bool] managed_certificate: Set to true when Scaleway generates and manages a Let's Encrypt certificate for the TLS stage/custom endpoint.
455
529
  :param pulumi.Input[str] pipeline_id: The ID of the pipeline.
456
530
  :param pulumi.Input[str] project_id: `project_id`) The ID of the project the TLS stage is associated with.
531
+ :param pulumi.Input[str] route_stage_id: The route stage ID the TLS stage will be linked to. Only one of `backend_stage_id`, `cache_stage_id`, `route_stage_id` and `waf_stage_id` should be specified.
457
532
  :param pulumi.Input[Sequence[pulumi.Input[Union['EdgeServicesTlsStageSecretArgs', 'EdgeServicesTlsStageSecretArgsDict']]]] secrets: The TLS secrets.
458
533
  :param pulumi.Input[str] updated_at: The date and time of the last update of the TLS stage.
534
+ :param pulumi.Input[str] waf_stage_id: The WAF stage ID the TLS stage will be linked to. Only one of `backend_stage_id`, `cache_stage_id`, `route_stage_id` and `waf_stage_id` should be specified.
459
535
  """
460
536
  opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
461
537
 
@@ -468,15 +544,17 @@ class EdgeServicesTlsStage(pulumi.CustomResource):
468
544
  __props__.__dict__["managed_certificate"] = managed_certificate
469
545
  __props__.__dict__["pipeline_id"] = pipeline_id
470
546
  __props__.__dict__["project_id"] = project_id
547
+ __props__.__dict__["route_stage_id"] = route_stage_id
471
548
  __props__.__dict__["secrets"] = secrets
472
549
  __props__.__dict__["updated_at"] = updated_at
550
+ __props__.__dict__["waf_stage_id"] = waf_stage_id
473
551
  return EdgeServicesTlsStage(resource_name, opts=opts, __props__=__props__)
474
552
 
475
553
  @property
476
554
  @pulumi.getter(name="backendStageId")
477
555
  def backend_stage_id(self) -> pulumi.Output[str]:
478
556
  """
479
- The backend stage ID the TLS stage will be linked to.
557
+ The backend stage ID the TLS stage will be linked to. Only one of `backend_stage_id`, `cache_stage_id`, `route_stage_id` and `waf_stage_id` should be specified.
480
558
  """
481
559
  return pulumi.get(self, "backend_stage_id")
482
560
 
@@ -484,7 +562,7 @@ class EdgeServicesTlsStage(pulumi.CustomResource):
484
562
  @pulumi.getter(name="cacheStageId")
485
563
  def cache_stage_id(self) -> pulumi.Output[str]:
486
564
  """
487
- The cache stage ID the TLS stage will be linked to.
565
+ The cache stage ID the TLS stage will be linked to. Only one of `backend_stage_id`, `cache_stage_id`, `route_stage_id` and `waf_stage_id` should be specified.
488
566
  """
489
567
  return pulumi.get(self, "cache_stage_id")
490
568
 
@@ -528,6 +606,14 @@ class EdgeServicesTlsStage(pulumi.CustomResource):
528
606
  """
529
607
  return pulumi.get(self, "project_id")
530
608
 
609
+ @property
610
+ @pulumi.getter(name="routeStageId")
611
+ def route_stage_id(self) -> pulumi.Output[str]:
612
+ """
613
+ The route stage ID the TLS stage will be linked to. Only one of `backend_stage_id`, `cache_stage_id`, `route_stage_id` and `waf_stage_id` should be specified.
614
+ """
615
+ return pulumi.get(self, "route_stage_id")
616
+
531
617
  @property
532
618
  @pulumi.getter
533
619
  def secrets(self) -> pulumi.Output[Sequence['outputs.EdgeServicesTlsStageSecret']]:
@@ -544,3 +630,11 @@ class EdgeServicesTlsStage(pulumi.CustomResource):
544
630
  """
545
631
  return pulumi.get(self, "updated_at")
546
632
 
633
+ @property
634
+ @pulumi.getter(name="wafStageId")
635
+ def waf_stage_id(self) -> pulumi.Output[str]:
636
+ """
637
+ The WAF stage ID the TLS stage will be linked to. Only one of `backend_stage_id`, `cache_stage_id`, `route_stage_id` and `waf_stage_id` should be specified.
638
+ """
639
+ return pulumi.get(self, "waf_stage_id")
640
+
@@ -5,6 +5,7 @@
5
5
  from .. import _utilities
6
6
  import typing
7
7
  # Export this package's modules as members:
8
+ from .get_easy_partitioning import *
8
9
  from .get_ip import *
9
10
  from .get_ips import *
10
11
  from .get_offer import *