Skip to content

Commit 98fa0f4

Browse files
authored
Merge branch 'master' into fix/domain-record-update
2 parents 0dcc12c + 14ce6b4 commit 98fa0f4

34 files changed

+6029
-0
lines changed

.github/workflows/nightly.yml

+1
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,7 @@ jobs:
2020
- cockpit
2121
- container
2222
- domain
23+
- edgeservices
2324
- flexibleip
2425
- function
2526
- iam
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,101 @@
1+
---
2+
subcategory: "Edge Services"
3+
page_title: "Scaleway: scaleway_edge_services_backend_stage"
4+
---
5+
6+
# Resource: scaleway_edge_services_backend_stage
7+
8+
Creates and manages Scaleway Edge Services Backend Stages.
9+
10+
## Example Usage
11+
12+
### With object backend
13+
14+
```terraform
15+
resource "scaleway_object_bucket" "main" {
16+
name = "my-bucket-name"
17+
tags = {
18+
foo = "bar"
19+
}
20+
}
21+
22+
resource "scaleway_edge_services_pipeline" "main" {
23+
name = "my-pipeline"
24+
}
25+
26+
resource "scaleway_edge_services_backend_stage" "main" {
27+
pipeline_id = scaleway_edge_services_pipeline.main.id
28+
s3_backend_config {
29+
bucket_name = scaleway_object_bucket.main.name
30+
bucket_region = "fr-par"
31+
}
32+
}
33+
```
34+
35+
### With LB backend
36+
37+
```terraform
38+
resource "scaleway_lb" "main" {
39+
ip_ids = [scaleway_lb_ip.main.id]
40+
zone = "fr-par-1"
41+
type = "LB-S"
42+
}
43+
44+
resource "scaleway_lb_frontend" "main" {
45+
lb_id = scaleway_lb.main.id
46+
backend_id = scaleway_lb_backend.main.id
47+
name = "frontend01"
48+
inbound_port = "443"
49+
certificate_ids = [
50+
scaleway_lb_certificate.cert01.id,
51+
]
52+
}
53+
54+
resource "scaleway_edge_services_pipeline" "main" {
55+
name = "my-pipeline"
56+
}
57+
58+
resource "scaleway_edge_services_backend_stage" "main" {
59+
pipeline_id = scaleway_edge_services_pipeline.main.id
60+
lb_backend_config {
61+
lb_config {
62+
id = scaleway_lb.main.id
63+
frontend_id = scaleway_lb_frontend.id
64+
is_ssl = true
65+
zone = "fr-par-1"
66+
}
67+
}
68+
}
69+
```
70+
71+
## Argument Reference
72+
73+
- `pipeline_id` - (Required) The ID of the pipeline.
74+
- `s3_backend_config` - (Optional) The Scaleway Object Storage origin bucket (S3) linked to the backend stage.
75+
- `bucket_name` - The name of the Bucket.
76+
- `bucket_region` - The region of the Bucket.
77+
- `is_website` - Defines whether the bucket website feature is enabled.
78+
- `lb_backend_config` - (Optional) The Scaleway Load Balancer linked to the backend stage.
79+
- `lb_config` - The Load Balancer config.
80+
- `id` - The ID of the Load Balancer.
81+
- `frontend_id` - The ID of the frontend.
82+
- `is_ssl` - Defines whether the Load Balancer's frontend handles SSL connections.
83+
- `domain_name` - The Fully Qualified Domain Name (in the format subdomain.example.com) to use in HTTP requests sent towards your Load Balancer.
84+
- `zone` - (Defaults to [provider](../index.md#zone) `zone`) The [zone](../guides/regions_and_zones.md#zones) of the Load Balancer.
85+
- `project_id` - (Defaults to [provider](../index.md#project_id) `project_id`) The ID of the project the backend stage is associated with.
86+
87+
## Attributes Reference
88+
89+
In addition to all arguments above, the following attributes are exported:
90+
91+
- `id` - The ID of the backend stage (UUID format).
92+
- `created_at` - The date and time of the creation of the backend stage.
93+
- `updated_at` - The date and time of the last update of the backend stage.
94+
95+
## Import
96+
97+
Backend stages can be imported using the `{id}`, e.g.
98+
99+
```bash
100+
$ terraform import scaleway_edge_services_backend_stage.basic 11111111-1111-1111-1111-111111111111
101+
```
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,61 @@
1+
---
2+
subcategory: "Edge Services"
3+
page_title: "Scaleway: scaleway_edge_services_cache_stage"
4+
---
5+
6+
# Resource: scaleway_edge_services_cache_stage
7+
8+
Creates and manages Scaleway Edge Services Cache Stages.
9+
10+
## Example Usage
11+
12+
### Basic
13+
14+
```terraform
15+
resource "scaleway_edge_services_cache_stage" "main" {
16+
pipeline_id = scaleway_edge_services_pipeline.main.id
17+
backend_stage_id = scaleway_edge_services_backend_stage.main.id
18+
}
19+
```
20+
21+
### Purge request
22+
23+
```terraform
24+
resource "scaleway_edge_services_cache_stage" "main" {
25+
pipeline_id = scaleway_edge_services_pipeline.main.id
26+
backend_stage_id = scaleway_edge_services_backend_stage.main.id
27+
28+
purge {
29+
pipeline_id = scaleway_edge_services_pipeline.main.id
30+
all = true
31+
}
32+
}
33+
```
34+
35+
## Argument Reference
36+
37+
- `pipeline_id` - (Required) The ID of the pipeline.
38+
- `backend_stage_id` - (Optional) The backend stage ID the cache stage will be linked to.
39+
- `fallback_ttl` - (Optional) The Time To Live (TTL) in seconds. Defines how long content is cached.
40+
- `refresh_cache` - (Optional) Trigger a refresh of the cache by changing this field's value.
41+
- `purge_requests` - (Optional) The Scaleway Object Storage origin bucket (S3) linked to the backend stage.
42+
- `pipeline_id` - The pipeline ID in which the purge request will be created.
43+
- `assets` - The list of asserts to purge.
44+
- `all` - Defines whether to purge all content.
45+
- `project_id` - (Defaults to [provider](../index.md#project_id) `project_id`) The ID of the project the cache stage is associated with.
46+
47+
## Attributes Reference
48+
49+
In addition to all arguments above, the following attributes are exported:
50+
51+
- `id` - The ID of the cache stage (UUID format).
52+
- `created_at` - The date and time of the creation of the cache stage.
53+
- `updated_at` - The date and time of the last update of the cache stage.
54+
55+
## Import
56+
57+
Cache stages can be imported using the `{id}`, e.g.
58+
59+
```bash
60+
$ terraform import scaleway_edge_services_cache_stage.basic 11111111-1111-1111-1111-111111111111
61+
```
+45
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,45 @@
1+
---
2+
subcategory: "Edge Services"
3+
page_title: "Scaleway: scaleway_edge_services_dns_stage"
4+
---
5+
6+
# Resource: scaleway_edge_services_dns_stage
7+
8+
Creates and manages Scaleway Edge Services DNS Stages.
9+
10+
## Example Usage
11+
12+
### Basic
13+
14+
```terraform
15+
resource "scaleway_edge_services_dns_stage" "main" {
16+
pipeline_id = scaleway_edge_services_pipeline.main.id
17+
fqdns = ["subdomain.example.com"]
18+
}
19+
```
20+
21+
## Argument Reference
22+
23+
- `pipeline_id` - (Required) The ID of the pipeline.
24+
- `backend_stage_id` - (Optional) The backend stage ID the DNS stage will be linked to.
25+
- `tls_stage_id` - (Optional) The TLS stage ID the DNS stage will be linked to.
26+
- `cache_stage_id` - (Optional) The cache stage ID the DNS stage will be linked to.
27+
- `fqdns` - (Optional) Fully Qualified Domain Name (in the format subdomain.example.com) to attach to the stage.
28+
- `project_id` - (Defaults to [provider](../index.md#project_id) `project_id`) The ID of the project the DNS stage is associated with.
29+
30+
## Attributes Reference
31+
32+
In addition to all arguments above, the following attributes are exported:
33+
34+
- `id` - The ID of the DNS stage (UUID format).
35+
- `type` - The type of the stage.
36+
- `created_at` - The date and time of the creation of the DNS stage.
37+
- `updated_at` - The date and time of the last update of the DNS stage.
38+
39+
## Import
40+
41+
DNS stages can be imported using the `{id}`, e.g.
42+
43+
```bash
44+
$ terraform import scaleway_edge_services_dns_stage.basic 11111111-1111-1111-1111-111111111111
45+
```
+48
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,48 @@
1+
---
2+
subcategory: "Edge Services"
3+
page_title: "Scaleway: scaleway_edge_services_head_stage"
4+
---
5+
6+
# Resource: scaleway_edge_services_head_stage
7+
8+
Sets the Scaleway Edge Services head stage of your pipeline.
9+
10+
## Example Usage
11+
12+
### Basic
13+
14+
```terraform
15+
resource "scaleway_edge_services_pipeline" "main" {
16+
name = "my-edge_services-pipeline"
17+
description = "pipeline description"
18+
}
19+
20+
resource "scaleway_edge_services_dns_stage" "main" {
21+
pipeline_id = scaleway_edge_services_pipeline.main.id
22+
tls_stage_id = scaleway_edge_services_tls_stage.main.id
23+
fqdns = ["subdomain.example.com"]
24+
}
25+
26+
resource "scaleway_edge_services_head_stage" "main" {
27+
pipeline_id = scaleway_edge_services_pipeline.main.id
28+
head_stage_id = scaleway_edge_services_dns_stage.main.id
29+
}
30+
31+
```
32+
33+
## Argument Reference
34+
35+
- `pipeline_id` - (Required) The ID of the pipeline.
36+
- `head_stage_id` - (Required) The ID of head stage of the pipeline.
37+
38+
## Attributes Reference
39+
40+
No additional attributes are exported.
41+
42+
## Import
43+
44+
Head stages can be imported using the `{id}`, e.g.
45+
46+
```bash
47+
$ terraform import scaleway_edge_services_head_stage.main 11111111-1111-1111-1111-111111111111
48+
```
+81
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,81 @@
1+
---
2+
subcategory: "Edge Services"
3+
page_title: "Scaleway: scaleway_edge_services_pipeline"
4+
---
5+
6+
# Resource: scaleway_edge_services_pipeline
7+
8+
Creates and manages Scaleway Edge Services Pipelines.
9+
10+
## Example Usage
11+
12+
### Basic
13+
14+
```terraform
15+
resource "scaleway_edge_services_pipeline" "main" {
16+
name = "pipeline-name"
17+
description = "pipeline description"
18+
}
19+
```
20+
21+
### Complete pipeline
22+
23+
```terraform
24+
resource "scaleway_edge_services_pipeline" "main" {
25+
name = "pipeline-name"
26+
description = "pipeline description"
27+
}
28+
29+
resource "scaleway_edge_services_backend_stage" "main" {
30+
pipeline_id = scaleway_edge_services_pipeline.main.id
31+
s3_backend_config {
32+
bucket_name = "my-bucket-name"
33+
bucket_region = "fr-par"
34+
}
35+
}
36+
37+
resource "scaleway_edge_services_tls_stage" "main" {
38+
pipeline_id = scaleway_edge_services_pipeline.main.id
39+
cache_stage_id = scaleway_edge_services_cache_stage.main.id
40+
managed_certificate = true
41+
}
42+
43+
resource "scaleway_edge_services_dns_stage" "main" {
44+
pipeline_id = scaleway_edge_services_pipeline.main.id
45+
tls_stage_id = scaleway_edge_services_tls_stage.main.id
46+
fqdns = ["subdomain.example.com"]
47+
}
48+
49+
resource "scaleway_edge_services_head_stage" "main" {
50+
pipeline_id = scaleway_edge_services_pipeline.main.id
51+
head_stage_id = scaleway_edge_services_dns_stage.main.id
52+
}
53+
54+
resource "scaleway_edge_services_cache_stage" "main" {
55+
pipeline_id = scaleway_edge_services_pipeline.main.id
56+
backend_stage_id = scaleway_edge_services_backend_stage.main.id
57+
}
58+
```
59+
60+
## Argument Reference
61+
62+
- `name` - (Optional) The name of the pipeline.
63+
- `description` - (Optional) The description of the pipeline.
64+
- `project_id` - (Defaults to [provider](../index.md#project_id) `project_id`) The ID of the project the pipeline is associated with.
65+
66+
## Attributes Reference
67+
68+
In addition to all arguments above, the following attributes are exported:
69+
70+
- `id` - The ID of the pipeline (UUID format).
71+
- `created_at` - The date and time of the creation of the pipeline.
72+
- `updated_at` - The date and time of the last update of the pipeline.
73+
- `status` - The status of user pipeline.
74+
75+
## Import
76+
77+
Pipelines can be imported using the `{id}`, e.g.
78+
79+
```bash
80+
$ terraform import scaleway_edge_services_pipeline.basic 11111111-1111-1111-1111-111111111111
81+
```

docs/resources/edge_services_plan.md

+35
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,35 @@
1+
---
2+
subcategory: "Edge Services"
3+
page_title: "Scaleway: scaleway_edge_services_plan"
4+
---
5+
6+
# Resource: scaleway_edge_services_plan
7+
8+
Creates and manages Scaleway Edge Services plans.
9+
10+
## Example Usage
11+
12+
### Basic
13+
14+
```terraform
15+
resource "scaleway_edge_services_plan" "main" {
16+
name = "starter"
17+
}
18+
```
19+
20+
## Argument Reference
21+
22+
- `name` - (Optional) The name of the plan.
23+
- `project_id` - (Defaults to [provider](../index.md#project_id) `project_id`) The ID of the project the plan is associated with.
24+
25+
## Attributes Reference
26+
27+
No additional attributes are exported.
28+
29+
## Import
30+
31+
Plans can be imported using `{project_id}/{plan_name}`, e.g.
32+
33+
```bash
34+
$ terraform import scaleway_edge_services_plan.main 11111111-1111-1111-1111-111111111111/starter
35+
```

0 commit comments

Comments
 (0)