Skip to content

Commit abd72bc

Browse files
author
Sohan Yadav
authored
Merge pull request #25 from clouddrove/0.15
fix terratest
2 parents 4c3277c + 2878cf3 commit abd72bc

File tree

19 files changed

+66
-74
lines changed

19 files changed

+66
-74
lines changed

.github/workflows/readme.yml

Lines changed: 7 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -10,31 +10,32 @@ jobs:
1010
runs-on: ubuntu-latest
1111
steps:
1212
- name: 'Checkout'
13-
uses: actions/checkout@master
13+
uses: actions/checkout@v2.3.4
1414

15-
- name: Set up Python 3.7.
15+
- name: 'Set up Python 3.7'
1616
uses: actions/setup-python@v2
1717
with:
1818
python-version: '3.x'
1919

2020
- name: 'create readme'
21-
uses: 'clouddrove/github-actions@v6.0'
21+
uses: 'clouddrove/github-actions@v8.0'
2222
with:
2323
actions_subcommand: 'readme'
2424
github_token: '${{ secrets.GITHUB}}'
2525
env:
2626
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN}}
2727

28-
- name: pre-commit check errors
28+
29+
- name: 'pre-commit check errors'
2930
uses: pre-commit/action@v2.0.0
3031
continue-on-error: true
3132

32-
- name: pre-commit fix erros
33+
- name: 'pre-commit fix errors'
3334
uses: pre-commit/action@v2.0.0
3435
continue-on-error: true
3536

3637
- name: 'push readme'
37-
uses: 'clouddrove/github-actions@v6.0'
38+
uses: 'clouddrove/github-actions@v8.0'
3839
continue-on-error: true
3940
with:
4041
actions_subcommand: 'push'

.github/workflows/terraform.yml

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -13,11 +13,11 @@ jobs:
1313
uses: actions/checkout@v2.3.4
1414

1515
- name: 'Terraform Format'
16-
uses: 'clouddrove/github-actions@v7.0'
16+
uses: 'clouddrove/github-actions@v8.0'
1717
with:
1818
actions_subcommand: 'fmt'
1919
- name: 'Terraform Format'
20-
uses: 'clouddrove/github-actions@v7.0'
20+
uses: 'clouddrove/github-actions@v8.0'
2121
with:
2222
actions_subcommand: 'fmt'
2323

@@ -36,13 +36,13 @@ jobs:
3636
aws-region: us-east-2
3737

3838
- name: 'Terraform init'
39-
uses: 'clouddrove/github-actions@v7.0'
39+
uses: 'clouddrove/github-actions@v8.0'
4040
with:
4141
actions_subcommand: 'init'
4242
tf_actions_working_dir: ./_example/default-s3
4343

4444
- name: 'Terraform validate'
45-
uses: 'clouddrove/github-actions@v7.0'
45+
uses: 'clouddrove/github-actions@v8.0'
4646
with:
4747
actions_subcommand: 'validate'
4848
tf_actions_working_dir: ./_example/default-s3
@@ -55,7 +55,7 @@ jobs:
5555
uses: actions/checkout@v2.3.4
5656

5757
- name: 'Terraform init'
58-
uses: 'clouddrove/github-actions@v7.0'
58+
uses: 'clouddrove/github-actions@v8.0'
5959
with:
6060
actions_subcommand: 'init'
6161
tf_actions_working_dir: ./_example/default-s3
@@ -68,7 +68,7 @@ jobs:
6868
aws-region: us-east-2
6969

7070
- name: 'Terraform plan'
71-
uses: 'clouddrove/github-actions@v7.0'
71+
uses: 'clouddrove/github-actions@v8.0'
7272
with:
7373
actions_subcommand: 'plan'
7474
tf_actions_working_dir: ./_example/default-s3

.github/workflows/terratest.yml

Lines changed: 10 additions & 30 deletions
Original file line numberDiff line numberDiff line change
@@ -21,45 +21,25 @@ jobs:
2121
aws-secret-access-key: ${{ secrets.TEST_AWS_ACCESS_SECRET_KEY }}
2222
aws-region: us-east-2
2323

24-
- name: 'Terratest'
25-
uses: 'clouddrove/github-actions@v6.0'
24+
- name: 'Terratest for default-s3'
25+
if: ${{ github.event.label.name == 'terratest' }}
26+
uses: 'clouddrove/github-actions@v8.0'
2627
with:
2728
actions_subcommand: 'terratest'
28-
if: ${{ github.event.label.name == 'terratest' }}
2929
tf_actions_working_dir: '_test/default-s3'
30-
31-
- name: 'Slack Notification'
32-
uses: clouddrove/action-slack@v2
33-
with:
34-
status: ${{ job.status }}
35-
fields: repo,author
36-
author_name: 'CloudDrove'
3730
env:
38-
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} # required
39-
SLACK_WEBHOOK_URL: ${{ secrets.SLACK_WEBHOOK_TERRAFORM }} # required
40-
if: always()
41-
42-
encryption-s3:
43-
name: 'Terratest for encryption-s3'
44-
runs-on: ubuntu-latest
45-
steps:
46-
47-
- name: 'Checkout'
48-
uses: actions/checkout@v2.3.4
31+
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
4932

50-
- name: 'Configure AWS Credentials'
51-
uses: clouddrove/configure-aws-credentials@v1
52-
with:
53-
aws-access-key-id: ${{ secrets.TEST_AWS_ACCESS_KEY }}
54-
aws-secret-access-key: ${{ secrets.TEST_AWS_ACCESS_SECRET_KEY }}
55-
aws-region: us-east-2
5633

57-
- name: 'Terratest'
58-
uses: 'clouddrove/github-actions@v6.0'
34+
- name: 'Terratest for encryption-s3'
35+
if: ${{ github.event.label.name == 'terratest' }}
36+
uses: 'clouddrove/github-actions@v8.0'
5937
with:
6038
actions_subcommand: 'terratest'
61-
if: ${{ github.event.label.name == 'terratest' }}
6239
tf_actions_working_dir: '_test/encryption-s3'
40+
env:
41+
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
42+
6343

6444
- name: 'Slack Notification'
6545
uses: clouddrove/action-slack@v2

README.yaml

Lines changed: 23 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -35,7 +35,7 @@ include:
3535
# yamllint disable rule:line-length
3636
usage: |-
3737
Here are some examples of how you can use this module in your inventory structure:
38-
### Basic Bucket
38+
### Default Bucket
3939
```hcl
4040
module "s3_bucket" {
4141
source = "clouddrove/s3/aws"
@@ -126,3 +126,25 @@ usage: |-
126126
}
127127
}
128128
```
129+
130+
### Cors Bucket
131+
```hcl
132+
module "s3_bucket" {
133+
source = "./../../"
134+
135+
name = "clouddrove-secure-bucket"
136+
environment = "test"
137+
attributes = ["private"]
138+
label_order = ["name", "environment"]
139+
140+
versioning = true
141+
acl = "private"
142+
cors_rule = [{
143+
"allowed_headers" : ["*"]
144+
allowed_methods = ["PUT", "POST"],
145+
allowed_origins = ["https://s3-website-test.hashicorp.com"],
146+
expose_headers = ["ETag"],
147+
max_age_seconds = 3000 }]
148+
}
149+
150+
```

_example/cors_s3/example.tf

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ module "s3_bucket" {
88
name = "clouddrove-secure-bucket"
99
environment = "test"
1010
attributes = ["private"]
11-
label_order = ["name", "environment", "attributes"]
11+
label_order = ["name", "environment"]
1212

1313
versioning = true
1414
acl = "private"

_example/default-s3/example.tf

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ module "s3_bucket" {
88
name = "clouddrove-secure-bucket"
99
environment = "test"
1010
attributes = ["private"]
11-
label_order = ["name", "environment", "attributes"]
11+
label_order = ["name", "environment"]
1212

1313
versioning = true
1414
acl = "private"

_example/encryption-s3/example.tf

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -38,7 +38,7 @@ module "s3_bucket" {
3838
name = "clouddrove-encryption-bucket"
3939
environment = "test"
4040
attributes = ["public"]
41-
label_order = ["name", "environment", "attributes"]
41+
label_order = ["name", "environment"]
4242

4343
versioning = true
4444
acl = "private"
Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,15 @@
1+
12
provider "aws" {
23
region = "eu-west-1"
34
}
45

56
module "logging_bucket" {
67
source = "./../../"
78

8-
name = "test-loging "
9+
name = "logging"
910
environment = "test"
1011
attributes = ["public"]
11-
label_order = ["name", "environment", "attributes"]
12+
label_order = ["name", "environment"]
1213
acl = "log-delivery-write"
1314
}
1415

@@ -19,12 +20,12 @@ module "s3_bucket" {
1920
name = "clouddrove-logging-encryption-bucket"
2021
environment = "test"
2122
attributes = ["public"]
22-
label_order = ["name", "environment", "attributes"]
23+
label_order = ["name", "environment"]
2324

2425
versioning = true
2526
acl = "private"
2627
sse_algorithm = "AES256"
2728
logging = { target_bucket : module.logging_bucket.id, target_prefix = "logs" }
2829

2930
depends_on = [module.logging_bucket]
30-
}
31+
}

_example/logging-encryption-s3/outputs.tf

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,4 +6,4 @@ output "id" {
66
output "tags" {
77
value = module.s3_bucket.tags
88
description = "A mapping of tags to assign to the S3."
9-
}
9+
}

_example/logging-s3/example.tf

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -5,10 +5,10 @@ provider "aws" {
55
module "logging_bucket" {
66
source = "./../../"
77

8-
name = "test-loging-cd"
8+
name = "logging-s3"
99
environment = "test"
1010
attributes = ["public"]
11-
label_order = ["name", "environment", "attributes"]
11+
label_order = ["name", "environment"]
1212
acl = "log-delivery-write"
1313
}
1414

@@ -18,12 +18,12 @@ module "s3_bucket" {
1818
name = "clouddrove-logging-bucket"
1919
environment = "test"
2020
attributes = ["public"]
21-
label_order = ["name", "environment", "attributes"]
21+
label_order = ["name", "environment"]
2222

2323
versioning = true
2424
acl = "private"
2525
logging = { target_bucket : module.logging_bucket.id, target_prefix = "logs" }
2626

2727
depends_on = [module.logging_bucket]
2828

29-
}
29+
}

_example/logging-s3/outputs.tf

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,4 +6,4 @@ output "id" {
66
output "tags" {
77
value = module.s3_bucket.tags
88
description = "A mapping of tags to assign to the S3."
9-
}
9+
}

_example/website-s3/.terraform.tfstate.lock.info

Lines changed: 0 additions & 1 deletion
This file was deleted.

_example/website-s3/example.tf

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ module "s3_bucket" {
88
name = "clouddrove-website-bucket"
99
environment = "test"
1010
attributes = ["public"]
11-
label_order = ["name", "environment", "attributes"]
11+
label_order = ["name", "environment"]
1212

1313
versioning = true
1414
acl = "private"
@@ -33,4 +33,4 @@ data "aws_iam_policy_document" "default" {
3333
actions = ["s3:GetObject"]
3434
resources = ["arn:aws:s3:::clouddrove-website-bucket-test-public/*"]
3535
}
36-
}
36+
}

_example/website-s3/outputs.tf

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,4 +6,4 @@ output "id" {
66
output "tags" {
77
value = module.s3_bucket.tags
88
description = "A mapping of tags to assign to the S3."
9-
}
9+
}

_test/default-s3/s3_test.go

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -30,6 +30,6 @@ func Test(t *testing.T) {
3030
Tags := terraform.OutputMap(t, terraformOptions, "tags")
3131

3232
// Verify we're getting back the outputs we expect
33-
assert.Equal(t, "clouddrove-secure-bucket-test", s3BucketId)
34-
assert.Equal(t, "clouddrove-secure-bucket-test", Tags["Name"])
33+
assert.Equal(t, "clouddrove-secure-bucket-test-private", s3BucketId)
34+
assert.Equal(t, "clouddrove-secure-bucket-test-private", Tags["Name"])
3535
}

_test/encryption-s3/s3_test.go

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,6 @@ package test
55

66
import (
77
"testing"
8-
"strings"
98
"github.com/stretchr/testify/assert"
109
"github.com/gruntwork-io/terratest/modules/terraform"
1110
)
@@ -26,10 +25,8 @@ func Test(t *testing.T) {
2625
defer terraform.Destroy(t, terraformOptions)
2726

2827
// To get the value of an output variable, run 'terraform output'
29-
s3BucketId := strings.Join(terraform.OutputList(t, terraformOptions, "id")," ")
3028
Tags := terraform.OutputMap(t, terraformOptions, "tags")
3129

3230
// Verify we're getting back the outputs we expect
33-
assert.Equal(t, "clouddrove-encryption-bucket-test", s3BucketId)
34-
assert.Equal(t, "clouddrove-encryption-bucket-test", Tags["Name"])
31+
assert.Equal(t, "clouddrove-encryption-bucket-test-public", Tags["Name"])
3532
}

_test/logging-encryption-s3/s3_test.go

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,6 @@ package test
55

66
import (
77
"testing"
8-
"strings"
98
"github.com/stretchr/testify/assert"
109
"github.com/gruntwork-io/terratest/modules/terraform"
1110
)
@@ -26,10 +25,8 @@ func Test(t *testing.T) {
2625
defer terraform.Destroy(t, terraformOptions)
2726

2827
// To get the value of an output variable, run 'terraform output'
29-
s3BucketId := strings.Join(terraform.OutputList(t, terraformOptions, "id")," ")
3028
Tags := terraform.OutputMap(t, terraformOptions, "tags")
3129

3230
// Verify we're getting back the outputs we expect
33-
assert.Equal(t, "clouddrove-logging-encryption-bucket-test", s3BucketId)
3431
assert.Equal(t, "clouddrove-logging-encryption-bucket-test", Tags["Name"])
3532
}

_test/logging-s3/s3_test.go

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,6 @@ package test
55

66
import (
77
"testing"
8-
"strings"
98
"github.com/stretchr/testify/assert"
109
"github.com/gruntwork-io/terratest/modules/terraform"
1110
)
@@ -30,6 +29,5 @@ func Test(t *testing.T) {
3029
Tags := terraform.OutputMap(t, terraformOptions, "tags")
3130

3231
// Verify we're getting back the outputs we expect
33-
assert.Equal(t, "clouddrove-logging-bucket-test", s3BucketId)
3432
assert.Equal(t, "clouddrove-logging-bucket-test", Tags["Name"])
3533
}

_test/website-s3/s3_test.go

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,6 @@ package test
55

66
import (
77
"testing"
8-
"strings"
98
"github.com/stretchr/testify/assert"
109
"github.com/gruntwork-io/terratest/modules/terraform"
1110
)
@@ -26,10 +25,8 @@ func Test(t *testing.T) {
2625
defer terraform.Destroy(t, terraformOptions)
2726

2827
// To get the value of an output variable, run 'terraform output'
29-
s3BucketId := strings.Join(terraform.OutputList(t, terraformOptions, "id")," ")
3028
Tags := terraform.OutputMap(t, terraformOptions, "tags")
3129

3230
// Verify we're getting back the outputs we expect
33-
assert.Equal(t, "clouddrove-website-bucket-test", s3BucketId)
3431
assert.Equal(t, "clouddrove-website-bucket-test", Tags["Name"])
3532
}

0 commit comments

Comments
 (0)