Skip to content

Commit 2d3e3e4

Browse files
Upgrade to aws provider 4.x in releases/
This brings in a few new resources, which will be useful when merging #108. The code delta is a no-op at plan time (after importing the new resources from S3 bucket resource expansion in 4.x).
1 parent 5449ea0 commit 2d3e3e4

File tree

7 files changed

+86
-78
lines changed

7 files changed

+86
-78
lines changed

terraform/releases/.terraform.lock.hcl

Lines changed: 31 additions & 49 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

terraform/releases/_terraform.tf

Lines changed: 4 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ terraform {
66
required_providers {
77
aws = {
88
source = "hashicorp/aws"
9-
version = "~> 3.59"
9+
version = "~> 4.20"
1010
}
1111
external = {
1212
source = "hashicorp/external"
@@ -33,14 +33,12 @@ data "terraform_remote_state" "shared" {
3333
}
3434

3535
provider "aws" {
36-
profile = "default"
37-
region = "us-west-1"
36+
region = "us-west-1"
3837
}
3938

4039
provider "aws" {
41-
profile = "default"
42-
region = "us-east-1"
43-
alias = "east1"
40+
region = "us-east-1"
41+
alias = "east1"
4442
}
4543

4644
data "aws_caller_identity" "current" {}

terraform/releases/impl/main.tf

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@ terraform {
22
required_providers {
33
aws = {
44
source = "hashicorp/aws"
5-
version = "~> 3.59"
5+
version = "~> 4.20"
66
configuration_aliases = [aws.east1]
77
}
88
}

terraform/releases/impl/storage.tf

Lines changed: 34 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -1,33 +1,56 @@
11
resource "aws_s3_bucket" "static" {
22
bucket = var.bucket
3-
acl = "public-read"
3+
}
4+
5+
resource "aws_s3_bucket_versioning" "static" {
6+
bucket = aws_s3_bucket.static.bucket
47

5-
versioning {
6-
enabled = true
8+
versioning_configuration {
9+
status = "Enabled"
710
}
11+
}
812

13+
resource "aws_s3_bucket_acl" "static" {
14+
bucket = aws_s3_bucket.static.id
15+
acl = "public-read"
16+
}
17+
18+
resource "aws_s3_bucket_cors_configuration" "static" {
19+
bucket = aws_s3_bucket.static.id
920
cors_rule {
1021
allowed_origins = ["*"]
1122
allowed_methods = ["GET"]
1223
max_age_seconds = 3000
1324
allowed_headers = ["Authorization"]
1425
}
26+
}
27+
1528

16-
website {
17-
index_document = "index.html"
18-
error_document = "doc/nightly/not_found.html"
29+
resource "aws_s3_bucket_website_configuration" "static" {
30+
bucket = aws_s3_bucket.static.id
31+
index_document {
32+
suffix = "index.html"
33+
}
34+
error_document {
35+
key = "doc/nightly/not_found.html"
1936
}
37+
}
38+
39+
resource "aws_s3_bucket_lifecycle_configuration" "static" {
40+
bucket = aws_s3_bucket.static.id
2041

2142
// Some files (such as the nightly tarballs) are overridden daily, creating
2243
// a bunch of old versions nobody cares about. This cleans up those files,
2344
// while keeping the past 3 months archived in case we need to rollback.
24-
lifecycle_rule {
25-
id = "remove-old-versions"
26-
enabled = true
45+
rule {
46+
id = "remove-old-versions"
47+
status = "Enabled"
2748

28-
abort_incomplete_multipart_upload_days = 2
49+
abort_incomplete_multipart_upload {
50+
days_after_initiation = 2
51+
}
2952
noncurrent_version_expiration {
30-
days = 90
53+
noncurrent_days = 90
3154
}
3255
}
3356
}

terraform/releases/keys.tf

Lines changed: 14 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -10,21 +10,26 @@ locals {
1010

1111
resource "aws_s3_bucket" "release_keys" {
1212
bucket = "rust-release-keys"
13-
acl = "private"
13+
}
1414

15-
versioning {
16-
enabled = true
17-
}
15+
resource "aws_s3_bucket_server_side_encryption_configuration" "release_keys" {
16+
bucket = aws_s3_bucket.release_keys.bucket
1817

19-
server_side_encryption_configuration {
20-
rule {
21-
apply_server_side_encryption_by_default {
22-
sse_algorithm = "AES256"
23-
}
18+
rule {
19+
apply_server_side_encryption_by_default {
20+
sse_algorithm = "AES256"
2421
}
2522
}
2623
}
2724

25+
resource "aws_s3_bucket_versioning" "release_keys" {
26+
bucket = aws_s3_bucket.release_keys.bucket
27+
28+
versioning_configuration {
29+
status = "Enabled"
30+
}
31+
}
32+
2833
resource "aws_s3_bucket_public_access_block" "release_keys" {
2934
bucket = aws_s3_bucket.release_keys.id
3035

terraform/shared/modules/acm-certificate/main.tf

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ terraform {
66
required_providers {
77
aws = {
88
source = "hashicorp/aws"
9-
version = "~> 3.59"
9+
version = "~> 4.20"
1010
}
1111
}
1212
}

terraform/shared/modules/lambda/main.tf

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@ terraform {
22
required_providers {
33
aws = {
44
source = "hashicorp/aws"
5-
version = "~> 3.59"
5+
version = "~> 4.20"
66
}
77
}
88
}

0 commit comments

Comments
 (0)