From d0181e8bf97f6ee343812b0e994bec1df885139c Mon Sep 17 00:00:00 2001 From: Kazuma Watanabe Date: Sun, 18 Apr 2021 15:24:12 +0900 Subject: [PATCH] Terraform v0.15 (#1099) * Bump Terraform to v0.15 * Fix module fixtures for v0.15 * Checkout submodules in GitHub Actions * Update docs --- .github/ISSUE_TEMPLATE/bug_report.md | 2 +- .github/workflows/build.yml | 2 + .github/workflows/docker.yml | 2 + .github/workflows/e2e.yml | 2 + .github/workflows/generated_code_checks.yml | 2 + .github/workflows/install_script.yml | 2 + .github/workflows/lint.yml | 2 + .github/workflows/release.yml | 2 + .gitmodules | 3 + docs/user-guide/compatibility.md | 2 +- go.mod | 2 +- go.sum | 66 +++- tflint/loader_test.go | 18 +- .../.gitignore | 22 -- .../CONTRIBUTING.md | 86 ----- .../LICENSE | 202 ---------- .../NOTICE | 4 - .../README.md | 130 ------- .../_ci/publish-amis-in-new-account.md | 26 -- .../_ci/publish-amis.sh | 54 --- .../_docs/amazon-linux-ami-list.md | 21 - .../_docs/architecture.png | Bin 436584 -> 0 bytes .../_docs/consul-ui-screenshot.png | Bin 100083 -> 0 bytes .../_docs/package-managers.md | 178 --------- .../_docs/ubuntu16-ami-list.md | 21 - .../circle.yml | 39 -- .../examples/consul-ami/README.md | 84 ---- .../examples/consul-ami/consul.json | 58 --- .../examples/consul-examples-helper/README.md | 11 - .../consul-examples-helper.sh | 185 --------- .../examples/root-example/README.md | 37 -- .../examples/root-example/user-data-client.sh | 15 - .../examples/root-example/user-data-server.sh | 13 - .../main.tf | 160 -------- .../modules/consul-cluster/README.md | 348 ----------------- .../modules/consul-cluster/main.tf | 201 ---------- .../modules/consul-cluster/outputs.tf | 31 -- .../modules/consul-cluster/variables.tf | 186 --------- .../modules/consul-iam-policies/README.md | 47 --- .../modules/consul-iam-policies/main.tf | 23 -- .../modules/consul-iam-policies/variables.tf | 8 - .../consul-security-group-rules/README.md | 47 --- .../consul-security-group-rules/main.tf | 201 ---------- .../consul-security-group-rules/variables.tf | 54 --- .../modules/install-consul/README.md | 111 ------ .../modules/install-consul/install-consul | 248 ------------ .../install-consul/supervisor-initd-script.sh | 116 ------ .../modules/install-consul/supervisord.conf | 39 -- .../modules/install-dnsmasq/README.md | 68 ---- .../modules/install-dnsmasq/install-dnsmasq | 158 -------- .../modules/run-consul/README.md | 225 ----------- .../modules/run-consul/run-consul | 359 ------------------ .../outputs.tf | 59 --- .../test/README.md | 64 ---- .../test/aws_helpers.go | 81 ---- .../test/consul_cluster_test.go | 16 - .../test/consul_helpers.go | 131 ------- .../test/file_helpers.go | 73 ---- .../test/glide.lock | 76 ---- .../test/glide.yaml | 19 - .../test/terratest_helpers.go | 63 --- .../variables.tf | 52 --- .../modules/ecs_on_spotfleet/.gitignore | 11 - .../modules/ecs_on_spotfleet/LICENSE | 22 -- .../modules/ecs_on_spotfleet/README.md | 90 ----- .../modules/ecs_on_spotfleet/alb.tf | 63 --- .../modules/ecs_on_spotfleet/cli/Gemfile | 4 - .../ecs_on_spotfleet/cli/template.tf.erb | 16 - .../modules/ecs_on_spotfleet/cli/wizard.rb | 36 -- .../modules/ecs_on_spotfleet/ecs.tf | 64 ---- .../modules/ecs_on_spotfleet/outputs.tf | 3 - .../modules/ecs_on_spotfleet/spotfleet.tf | 131 ------- .../modules/ecs_on_spotfleet/variables.tf | 104 ----- .../.terraform/modules/modules.json | 1 - tflint/test-fixtures/v0.12.0_module/module.tf | 13 - .../v0.15.0_module/.terraform/modules/consul | 1 + .../.terraform/modules/modules.json | 1 + .../ec2/main.tf | 0 tflint/test-fixtures/v0.15.0_module/module.tf | 9 + 79 files changed, 86 insertions(+), 5040 deletions(-) create mode 100644 .gitmodules delete mode 100644 tflint/test-fixtures/v0.12.0_module/.terraform/modules/consul/hashicorp-terraform-aws-consul-ee980b4/.gitignore delete mode 100644 tflint/test-fixtures/v0.12.0_module/.terraform/modules/consul/hashicorp-terraform-aws-consul-ee980b4/CONTRIBUTING.md delete mode 100644 tflint/test-fixtures/v0.12.0_module/.terraform/modules/consul/hashicorp-terraform-aws-consul-ee980b4/LICENSE delete mode 100644 tflint/test-fixtures/v0.12.0_module/.terraform/modules/consul/hashicorp-terraform-aws-consul-ee980b4/NOTICE delete mode 100644 tflint/test-fixtures/v0.12.0_module/.terraform/modules/consul/hashicorp-terraform-aws-consul-ee980b4/README.md delete mode 100644 tflint/test-fixtures/v0.12.0_module/.terraform/modules/consul/hashicorp-terraform-aws-consul-ee980b4/_ci/publish-amis-in-new-account.md delete mode 100755 tflint/test-fixtures/v0.12.0_module/.terraform/modules/consul/hashicorp-terraform-aws-consul-ee980b4/_ci/publish-amis.sh delete mode 100644 tflint/test-fixtures/v0.12.0_module/.terraform/modules/consul/hashicorp-terraform-aws-consul-ee980b4/_docs/amazon-linux-ami-list.md delete mode 100644 tflint/test-fixtures/v0.12.0_module/.terraform/modules/consul/hashicorp-terraform-aws-consul-ee980b4/_docs/architecture.png delete mode 100644 tflint/test-fixtures/v0.12.0_module/.terraform/modules/consul/hashicorp-terraform-aws-consul-ee980b4/_docs/consul-ui-screenshot.png delete mode 100644 tflint/test-fixtures/v0.12.0_module/.terraform/modules/consul/hashicorp-terraform-aws-consul-ee980b4/_docs/package-managers.md delete mode 100644 tflint/test-fixtures/v0.12.0_module/.terraform/modules/consul/hashicorp-terraform-aws-consul-ee980b4/_docs/ubuntu16-ami-list.md delete mode 100644 tflint/test-fixtures/v0.12.0_module/.terraform/modules/consul/hashicorp-terraform-aws-consul-ee980b4/circle.yml delete mode 100644 tflint/test-fixtures/v0.12.0_module/.terraform/modules/consul/hashicorp-terraform-aws-consul-ee980b4/examples/consul-ami/README.md delete mode 100644 tflint/test-fixtures/v0.12.0_module/.terraform/modules/consul/hashicorp-terraform-aws-consul-ee980b4/examples/consul-ami/consul.json delete mode 100644 tflint/test-fixtures/v0.12.0_module/.terraform/modules/consul/hashicorp-terraform-aws-consul-ee980b4/examples/consul-examples-helper/README.md delete mode 100755 tflint/test-fixtures/v0.12.0_module/.terraform/modules/consul/hashicorp-terraform-aws-consul-ee980b4/examples/consul-examples-helper/consul-examples-helper.sh delete mode 100644 tflint/test-fixtures/v0.12.0_module/.terraform/modules/consul/hashicorp-terraform-aws-consul-ee980b4/examples/root-example/README.md delete mode 100644 tflint/test-fixtures/v0.12.0_module/.terraform/modules/consul/hashicorp-terraform-aws-consul-ee980b4/examples/root-example/user-data-client.sh delete mode 100755 tflint/test-fixtures/v0.12.0_module/.terraform/modules/consul/hashicorp-terraform-aws-consul-ee980b4/examples/root-example/user-data-server.sh delete mode 100644 tflint/test-fixtures/v0.12.0_module/.terraform/modules/consul/hashicorp-terraform-aws-consul-ee980b4/main.tf delete mode 100644 tflint/test-fixtures/v0.12.0_module/.terraform/modules/consul/hashicorp-terraform-aws-consul-ee980b4/modules/consul-cluster/README.md delete mode 100644 tflint/test-fixtures/v0.12.0_module/.terraform/modules/consul/hashicorp-terraform-aws-consul-ee980b4/modules/consul-cluster/main.tf delete mode 100644 tflint/test-fixtures/v0.12.0_module/.terraform/modules/consul/hashicorp-terraform-aws-consul-ee980b4/modules/consul-cluster/outputs.tf delete mode 100644 tflint/test-fixtures/v0.12.0_module/.terraform/modules/consul/hashicorp-terraform-aws-consul-ee980b4/modules/consul-cluster/variables.tf delete mode 100644 tflint/test-fixtures/v0.12.0_module/.terraform/modules/consul/hashicorp-terraform-aws-consul-ee980b4/modules/consul-iam-policies/README.md delete mode 100644 tflint/test-fixtures/v0.12.0_module/.terraform/modules/consul/hashicorp-terraform-aws-consul-ee980b4/modules/consul-iam-policies/main.tf delete mode 100644 tflint/test-fixtures/v0.12.0_module/.terraform/modules/consul/hashicorp-terraform-aws-consul-ee980b4/modules/consul-iam-policies/variables.tf delete mode 100644 tflint/test-fixtures/v0.12.0_module/.terraform/modules/consul/hashicorp-terraform-aws-consul-ee980b4/modules/consul-security-group-rules/README.md delete mode 100644 tflint/test-fixtures/v0.12.0_module/.terraform/modules/consul/hashicorp-terraform-aws-consul-ee980b4/modules/consul-security-group-rules/main.tf delete mode 100644 tflint/test-fixtures/v0.12.0_module/.terraform/modules/consul/hashicorp-terraform-aws-consul-ee980b4/modules/consul-security-group-rules/variables.tf delete mode 100644 tflint/test-fixtures/v0.12.0_module/.terraform/modules/consul/hashicorp-terraform-aws-consul-ee980b4/modules/install-consul/README.md delete mode 100755 tflint/test-fixtures/v0.12.0_module/.terraform/modules/consul/hashicorp-terraform-aws-consul-ee980b4/modules/install-consul/install-consul delete mode 100755 tflint/test-fixtures/v0.12.0_module/.terraform/modules/consul/hashicorp-terraform-aws-consul-ee980b4/modules/install-consul/supervisor-initd-script.sh delete mode 100644 tflint/test-fixtures/v0.12.0_module/.terraform/modules/consul/hashicorp-terraform-aws-consul-ee980b4/modules/install-consul/supervisord.conf delete mode 100644 tflint/test-fixtures/v0.12.0_module/.terraform/modules/consul/hashicorp-terraform-aws-consul-ee980b4/modules/install-dnsmasq/README.md delete mode 100755 tflint/test-fixtures/v0.12.0_module/.terraform/modules/consul/hashicorp-terraform-aws-consul-ee980b4/modules/install-dnsmasq/install-dnsmasq delete mode 100644 tflint/test-fixtures/v0.12.0_module/.terraform/modules/consul/hashicorp-terraform-aws-consul-ee980b4/modules/run-consul/README.md delete mode 100755 tflint/test-fixtures/v0.12.0_module/.terraform/modules/consul/hashicorp-terraform-aws-consul-ee980b4/modules/run-consul/run-consul delete mode 100644 tflint/test-fixtures/v0.12.0_module/.terraform/modules/consul/hashicorp-terraform-aws-consul-ee980b4/outputs.tf delete mode 100644 tflint/test-fixtures/v0.12.0_module/.terraform/modules/consul/hashicorp-terraform-aws-consul-ee980b4/test/README.md delete mode 100644 tflint/test-fixtures/v0.12.0_module/.terraform/modules/consul/hashicorp-terraform-aws-consul-ee980b4/test/aws_helpers.go delete mode 100644 tflint/test-fixtures/v0.12.0_module/.terraform/modules/consul/hashicorp-terraform-aws-consul-ee980b4/test/consul_cluster_test.go delete mode 100644 tflint/test-fixtures/v0.12.0_module/.terraform/modules/consul/hashicorp-terraform-aws-consul-ee980b4/test/consul_helpers.go delete mode 100644 tflint/test-fixtures/v0.12.0_module/.terraform/modules/consul/hashicorp-terraform-aws-consul-ee980b4/test/file_helpers.go delete mode 100644 tflint/test-fixtures/v0.12.0_module/.terraform/modules/consul/hashicorp-terraform-aws-consul-ee980b4/test/glide.lock delete mode 100644 tflint/test-fixtures/v0.12.0_module/.terraform/modules/consul/hashicorp-terraform-aws-consul-ee980b4/test/glide.yaml delete mode 100644 tflint/test-fixtures/v0.12.0_module/.terraform/modules/consul/hashicorp-terraform-aws-consul-ee980b4/test/terratest_helpers.go delete mode 100644 tflint/test-fixtures/v0.12.0_module/.terraform/modules/consul/hashicorp-terraform-aws-consul-ee980b4/variables.tf delete mode 100644 tflint/test-fixtures/v0.12.0_module/.terraform/modules/ecs_on_spotfleet/.gitignore delete mode 100644 tflint/test-fixtures/v0.12.0_module/.terraform/modules/ecs_on_spotfleet/LICENSE delete mode 100644 tflint/test-fixtures/v0.12.0_module/.terraform/modules/ecs_on_spotfleet/README.md delete mode 100644 tflint/test-fixtures/v0.12.0_module/.terraform/modules/ecs_on_spotfleet/alb.tf delete mode 100644 tflint/test-fixtures/v0.12.0_module/.terraform/modules/ecs_on_spotfleet/cli/Gemfile delete mode 100644 tflint/test-fixtures/v0.12.0_module/.terraform/modules/ecs_on_spotfleet/cli/template.tf.erb delete mode 100644 tflint/test-fixtures/v0.12.0_module/.terraform/modules/ecs_on_spotfleet/cli/wizard.rb delete mode 100644 tflint/test-fixtures/v0.12.0_module/.terraform/modules/ecs_on_spotfleet/ecs.tf delete mode 100644 tflint/test-fixtures/v0.12.0_module/.terraform/modules/ecs_on_spotfleet/outputs.tf delete mode 100644 tflint/test-fixtures/v0.12.0_module/.terraform/modules/ecs_on_spotfleet/spotfleet.tf delete mode 100644 tflint/test-fixtures/v0.12.0_module/.terraform/modules/ecs_on_spotfleet/variables.tf delete mode 100644 tflint/test-fixtures/v0.12.0_module/.terraform/modules/modules.json delete mode 100644 tflint/test-fixtures/v0.12.0_module/module.tf create mode 160000 tflint/test-fixtures/v0.15.0_module/.terraform/modules/consul create mode 100644 tflint/test-fixtures/v0.15.0_module/.terraform/modules/modules.json rename tflint/test-fixtures/{v0.12.0_module => v0.15.0_module}/ec2/main.tf (100%) create mode 100644 tflint/test-fixtures/v0.15.0_module/module.tf diff --git a/.github/ISSUE_TEMPLATE/bug_report.md b/.github/ISSUE_TEMPLATE/bug_report.md index 67814b49a..5c76a27bb 100644 --- a/.github/ISSUE_TEMPLATE/bug_report.md +++ b/.github/ISSUE_TEMPLATE/bug_report.md @@ -30,6 +30,6 @@ $ tflint -v TFLint version 0.26.0 + ruleset.aws (0.3.1-bundled) $ terraform -v -Terraform v0.14.9 +Terraform v0.15.0 ``` --> diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index e9f823dc0..f0dbffc17 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -20,6 +20,8 @@ jobs: steps: - name: Checkout uses: actions/checkout@v2 + with: + submodules: true - name: Set up Go uses: actions/setup-go@v2.1.3 with: diff --git a/.github/workflows/docker.yml b/.github/workflows/docker.yml index 09c240cda..b310d9ff4 100644 --- a/.github/workflows/docker.yml +++ b/.github/workflows/docker.yml @@ -8,6 +8,8 @@ jobs: steps: - name: Checkout uses: actions/checkout@v2 + with: + submodules: true - name: docker build run: docker build -t terraform-linters/tflint . - name: docker run diff --git a/.github/workflows/e2e.yml b/.github/workflows/e2e.yml index 68c93e503..7a2738502 100644 --- a/.github/workflows/e2e.yml +++ b/.github/workflows/e2e.yml @@ -20,6 +20,8 @@ jobs: steps: - name: Checkout uses: actions/checkout@v2 + with: + submodules: true - name: Set up Go uses: actions/setup-go@v2.1.3 with: diff --git a/.github/workflows/generated_code_checks.yml b/.github/workflows/generated_code_checks.yml index 981fe5b4e..9fd0408f8 100644 --- a/.github/workflows/generated_code_checks.yml +++ b/.github/workflows/generated_code_checks.yml @@ -8,6 +8,8 @@ jobs: steps: - name: Checkout uses: actions/checkout@v2 + with: + submodules: true - name: Set up Go uses: actions/setup-go@v2.1.3 with: diff --git a/.github/workflows/install_script.yml b/.github/workflows/install_script.yml index 4515da951..7a884e046 100644 --- a/.github/workflows/install_script.yml +++ b/.github/workflows/install_script.yml @@ -18,6 +18,8 @@ jobs: steps: - name: Checkout uses: actions/checkout@v2 + with: + submodules: true - name: Install latest version run: | bash install_linux.sh diff --git a/.github/workflows/lint.yml b/.github/workflows/lint.yml index fd2bd09c0..c13498330 100644 --- a/.github/workflows/lint.yml +++ b/.github/workflows/lint.yml @@ -14,6 +14,8 @@ jobs: steps: - name: Checkout uses: actions/checkout@v2 + with: + submodules: true - name: Set up Go uses: actions/setup-go@v2.1.3 with: diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 102a272c9..114f1324b 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -13,6 +13,8 @@ jobs: steps: - name: Checkout uses: actions/checkout@v2 + with: + submodules: true - name: Set up Go uses: actions/setup-go@v2.1.3 with: diff --git a/.gitmodules b/.gitmodules new file mode 100644 index 000000000..632d48b23 --- /dev/null +++ b/.gitmodules @@ -0,0 +1,3 @@ +[submodule "tflint/test-fixtures/v0.15.0_module/.terraform/modules/consul"] + path = tflint/test-fixtures/v0.15.0_module/.terraform/modules/consul + url = https://github.com/hashicorp/terraform-aws-consul diff --git a/docs/user-guide/compatibility.md b/docs/user-guide/compatibility.md index 4db2bb1ac..5b012fb89 100644 --- a/docs/user-guide/compatibility.md +++ b/docs/user-guide/compatibility.md @@ -1,6 +1,6 @@ # Compatibility with Terraform -Since TFLint embeds a specific version of Terraform as a library, some features implicitly assume the behavior of Terraform v0.14.9. +Since TFLint embeds a specific version of Terraform as a library, some features implicitly assume the behavior of Terraform v0.15.0 Of course, TFLint may work correctly if you run it on other versions. But, false positives/negatives can occur based on this assumption. diff --git a/go.mod b/go.mod index a82b15235..1d706c632 100644 --- a/go.mod +++ b/go.mod @@ -10,7 +10,7 @@ require ( github.com/hashicorp/go-version v1.3.0 github.com/hashicorp/hcl/v2 v2.9.1 github.com/hashicorp/logutils v1.0.0 - github.com/hashicorp/terraform v0.14.10 + github.com/hashicorp/terraform v0.15.0 github.com/jessevdk/go-flags v1.5.0 github.com/jstemmer/go-junit-report v0.9.1 github.com/mattn/go-colorable v0.1.8 diff --git a/go.sum b/go.sum index 215c18aa2..2e49396a7 100644 --- a/go.sum +++ b/go.sum @@ -35,15 +35,26 @@ cloud.google.com/go/storage v1.10.0 h1:STgFzyU5/8miMl0//zKh2aQeTyeaUH3WN9bSUiJ09 cloud.google.com/go/storage v1.10.0/go.mod h1:FLPqc6j+Ki4BU591ie1oL6qBQGu2Bl/tZ9ullr3+Kg0= dmitri.shuralyov.com/gpu/mtl v0.0.0-20190408044501-666a987793e9/go.mod h1:H6x//7gZCb22OMCxBHrMx7a5I7Hp++hsVxbQ4BYO7hU= github.com/Azure/azure-sdk-for-go v45.0.0+incompatible/go.mod h1:9XXNKU+eRnpl9moKnB4QOLf1HestfXbmab5FXxiDBjc= +github.com/Azure/azure-sdk-for-go v47.1.0+incompatible/go.mod h1:9XXNKU+eRnpl9moKnB4QOLf1HestfXbmab5FXxiDBjc= +github.com/Azure/azure-sdk-for-go v51.2.0+incompatible/go.mod h1:9XXNKU+eRnpl9moKnB4QOLf1HestfXbmab5FXxiDBjc= +github.com/Azure/azure-sdk-for-go v52.5.0+incompatible/go.mod h1:9XXNKU+eRnpl9moKnB4QOLf1HestfXbmab5FXxiDBjc= github.com/Azure/go-autorest v14.2.0+incompatible/go.mod h1:r+4oMnoxhatjLLJ6zxSWATqVooLgysK6ZNox3g/xq24= github.com/Azure/go-autorest/autorest v0.11.3/go.mod h1:JFgpikqFJ/MleTTxwepExTKnFUKKszPS8UavbQYUMuw= +github.com/Azure/go-autorest/autorest v0.11.10/go.mod h1:eipySxLmqSyC5s5k1CLupqet0PSENBEDP93LQ9a8QYw= +github.com/Azure/go-autorest/autorest v0.11.18/go.mod h1:dSiJPy22c3u0OtOKDNttNgqpNFY/GeWa7GH/Pz56QRA= github.com/Azure/go-autorest/autorest/adal v0.9.0/go.mod h1:/c022QCutn2P7uY+/oQWWNcK9YU+MH96NgK+jErpbcg= +github.com/Azure/go-autorest/autorest/adal v0.9.5/go.mod h1:B7KF7jKIeC9Mct5spmyCB/A8CG/sEz1vwIRGv/bbw7A= +github.com/Azure/go-autorest/autorest/adal v0.9.13/go.mod h1:W/MM4U6nLxnIskrw4UwWzlHfGjwUS50aOsc/I3yuU8M= github.com/Azure/go-autorest/autorest/azure/cli v0.4.0/go.mod h1:JljT387FplPzBA31vUcvsetLKF3pec5bdAxjVU4kI2s= +github.com/Azure/go-autorest/autorest/azure/cli v0.4.2/go.mod h1:7qkJkT+j6b+hIpzMOwPChJhTqS8VbsqqgULzMNRugoM= github.com/Azure/go-autorest/autorest/date v0.3.0/go.mod h1:BI0uouVdmngYNUzGWeSYnokU+TrmwEsOqdt8Y6sso74= github.com/Azure/go-autorest/autorest/mocks v0.4.0/go.mod h1:LTp+uSrOhSkaKrUy935gNZuuIPPVsHlr9DSOxSayd+k= +github.com/Azure/go-autorest/autorest/mocks v0.4.1/go.mod h1:LTp+uSrOhSkaKrUy935gNZuuIPPVsHlr9DSOxSayd+k= github.com/Azure/go-autorest/autorest/to v0.4.0/go.mod h1:fE8iZBn7LQR7zH/9XU2NcPR4o9jEImooCeWJcYV/zLE= github.com/Azure/go-autorest/autorest/validation v0.3.0/go.mod h1:yhLgjC0Wda5DYXl6JAsWyUe4KVNffhoDhG0zVzUMo3E= +github.com/Azure/go-autorest/autorest/validation v0.3.1/go.mod h1:yhLgjC0Wda5DYXl6JAsWyUe4KVNffhoDhG0zVzUMo3E= github.com/Azure/go-autorest/logger v0.2.0/go.mod h1:T9E3cAhj2VqvPOtCYAvby9aBXkZmbF5NWuPV8+WeEW8= +github.com/Azure/go-autorest/logger v0.2.1/go.mod h1:T9E3cAhj2VqvPOtCYAvby9aBXkZmbF5NWuPV8+WeEW8= github.com/Azure/go-autorest/tracing v0.6.0/go.mod h1:+vhtPC754Xsa23ID7GlGsrdKBpUA79WCAKPPZVC2DeU= github.com/Azure/go-ntlmssp v0.0.0-20180810175552-4a21cbd618b4/go.mod h1:chxPXzSsl7ZWRAuOIE23GDNzjWuZquvFlgA8xmpunjU= github.com/Azure/go-ntlmssp v0.0.0-20200615164410-66371956d46c/go.mod h1:chxPXzSsl7ZWRAuOIE23GDNzjWuZquvFlgA8xmpunjU= @@ -51,6 +62,9 @@ github.com/BurntSushi/toml v0.3.1/go.mod h1:xHWCNGjB5oqiDr8zfno3MHue2Ht5sIBksp03 github.com/BurntSushi/xgb v0.0.0-20160522181843-27f122750802/go.mod h1:IVnqGOEym/WlBOVXweHU+Q+/VP0lqqI8lqeDx9IjBqo= github.com/ChrisTrenkamp/goxpath v0.0.0-20170922090931-c385f95c6022/go.mod h1:nuWgzSkT5PnyOd+272uUmV0dnAnAn42Mk7PiQC5VzN4= github.com/ChrisTrenkamp/goxpath v0.0.0-20190607011252-c5096ec8773d/go.mod h1:nuWgzSkT5PnyOd+272uUmV0dnAnAn42Mk7PiQC5VzN4= +github.com/Masterminds/goutils v1.1.0/go.mod h1:8cTjp+g8YejhMuvIA5y2vz3BpJxksy863GQaJW2MFNU= +github.com/Masterminds/semver v1.5.0/go.mod h1:MB6lktGJrhw8PrUyiEoblNEGEQ+RzHPF078ddwwvV3Y= +github.com/Masterminds/sprig v2.22.0+incompatible/go.mod h1:y6hNFY5UBTIWBxnzTeuNhlNS5hqE0NB0E6fgfo2Br3o= github.com/NYTimes/gziphandler v0.0.0-20170623195520-56545f4a5d46/go.mod h1:3wb06e3pkSAbeQ52E9H9iFoQsEEwGN64994WTCIhntQ= github.com/PuerkitoBio/purell v1.0.0/go.mod h1:c11w/QuzBsJSee3cPx9rAFu61PvFxuPbtSwDGJws/X0= github.com/PuerkitoBio/urlesc v0.0.0-20160726150825-5bd2802263f2/go.mod h1:uGdkoq3SwY9Y+13GIhn11/XLaGBb4BfwItxLd5jeuXE= @@ -76,6 +90,7 @@ github.com/apparentlymart/go-cidr v1.1.0/go.mod h1:EBcsNrHc3zQeuaeCeCtQruQm+n9/Y github.com/apparentlymart/go-dump v0.0.0-20180507223929-23540a00eaa3/go.mod h1:oL81AME2rN47vu18xqj1S1jPIPuN7afo62yKTNn3XMM= github.com/apparentlymart/go-dump v0.0.0-20190214190832-042adf3cf4a0 h1:MzVXffFUye+ZcSR6opIgz9Co7WcDx6ZcY+RjfFHoA0I= github.com/apparentlymart/go-dump v0.0.0-20190214190832-042adf3cf4a0/go.mod h1:oL81AME2rN47vu18xqj1S1jPIPuN7afo62yKTNn3XMM= +github.com/apparentlymart/go-shquot v0.0.1/go.mod h1:lw58XsE5IgUXZ9h0cxnypdx31p9mPFIVEQ9P3c7MlrU= github.com/apparentlymart/go-textseg v1.0.0 h1:rRmlIsPEEhUTIKQb7T++Nz/A5Q6C9IuX2wFoYVvnCs0= github.com/apparentlymart/go-textseg v1.0.0/go.mod h1:z96Txxhf3xSFMPmb5X/1W05FF/Nj9VFpLOpjS5yuumk= github.com/apparentlymart/go-textseg/v12 v12.0.0/go.mod h1:S/4uRK2UtaQttw1GenVJEynmyUenKwP++x/+DdGV/Ec= @@ -130,6 +145,7 @@ github.com/davecgh/go-spew v1.1.1 h1:vj9j/u1bqnvCEfJOwUhtlOARqs3+rkHYY13jYWTU97c github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= github.com/dgrijalva/jwt-go v3.2.0+incompatible/go.mod h1:E3ru+11k8xSBh+hMPgOLZmtrrCbhqsmaPHjLKYnJCaQ= github.com/dimchansky/utfbom v1.1.0/go.mod h1:rO41eb7gLfo8SF1jd9F8HplJm1Fewwi4mQvIirEdv+8= +github.com/dimchansky/utfbom v1.1.1/go.mod h1:SxdoEBH5qIqFocHMyGOXVAybYJdr71b1Q/j0mACtrfE= github.com/docker/spdystream v0.0.0-20160310174837-449fdfce4d96/go.mod h1:Qh8CwZgvJUkLughtfhJv5dyTYa91l1fOUCrgjqmcifM= github.com/dylanmei/iso8601 v0.1.0/go.mod h1:w9KhXSgIyROl1DefbMYIE7UVSIvELTbMrCfx+QkYnoQ= github.com/dylanmei/winrmtest v0.0.0-20190225150635-99b7fe2fddf1/go.mod h1:lcy9/2gH1jn/VCLouHA6tOEwLoNVd4GW6zhuKLmHC2Y= @@ -147,6 +163,7 @@ github.com/fatih/color v1.9.0/go.mod h1:eQcE1qtQxscV5RaZvpXrrb8Drkc3/DdQ+uUYCNjL github.com/fatih/color v1.10.0 h1:s36xzo75JdqLaaWoiEHk767eHiwo0598uUxyfiPkDsg= github.com/fatih/color v1.10.0/go.mod h1:ELkj/draVOlAH/xkhN6mQ50Qd0MPOk5AAr3maGEBuJM= github.com/flynn/go-shlex v0.0.0-20150515145356-3f9db97f8568/go.mod h1:xEzjJPgXI435gkrCt3MPfRiAkVrwSbHsst4LCFVfpJc= +github.com/form3tech-oss/jwt-go v3.2.2+incompatible/go.mod h1:pbq4aXjuKjdthFRnoDwaVPLA+WlJuPGy+QneDUgJi2k= github.com/fsnotify/fsnotify v1.4.7/go.mod h1:jwhsz4b93w/PPRr/qN1Yymfu8t87LnFCMoQvtojpjFo= github.com/fsnotify/fsnotify v1.4.9/go.mod h1:znqG4EE+3YCdAaPaxE2ZRY/06pZUdp0tY4IgpuI1SZQ= github.com/ghodss/yaml v0.0.0-20150909031657-73d445a93680/go.mod h1:4dBDuWmgqj2HViK6kFavaiC9ZROes6MMH2rRYeMEF04= @@ -205,8 +222,9 @@ github.com/golang/protobuf v1.4.0-rc.2/go.mod h1:LlEzMj4AhA7rCAGe4KMBDvJI+AwstrU github.com/golang/protobuf v1.4.0-rc.4.0.20200313231945-b860323f09d0/go.mod h1:WU3c8KckQ9AFe+yFwt9sWVRKCVIyN9cPHBJSNnbL67w= github.com/golang/protobuf v1.4.0/go.mod h1:jodUvKwWbYaEsadDk5Fwe5c77LiNKVO9IDvqG2KuDX0= github.com/golang/protobuf v1.4.1/go.mod h1:U8fpvMrcmy5pZrNK1lt4xCsGvpyWQ/VVv6QDs8UjoX8= -github.com/golang/protobuf v1.4.2 h1:+Z5KGCizgyZCbGh1KZqA0fcLLkwbsjIzS4aV2v7wJX0= github.com/golang/protobuf v1.4.2/go.mod h1:oDoupMAO8OvCJWAcko0GGGIgR6R6ocIYbsSw735rRwI= +github.com/golang/protobuf v1.4.3 h1:JjCZWpVbqXDqFVmTfYWEVTMIYrL/NPdPSCHPJ0T/raM= +github.com/golang/protobuf v1.4.3/go.mod h1:oDoupMAO8OvCJWAcko0GGGIgR6R6ocIYbsSw735rRwI= github.com/golang/snappy v0.0.1/go.mod h1:/XxbfmMg8lxefKM7IXC3fBNl/7bRcc72aCRzEWrmP2Q= github.com/google/btree v0.0.0-20180813153112-4030bb1f1f0c/go.mod h1:lNA+9X1NB3Zf8V7Ke586lFgjr2dZNuvo3lPJSGZ5JPQ= github.com/google/btree v1.0.0/go.mod h1:lNA+9X1NB3Zf8V7Ke586lFgjr2dZNuvo3lPJSGZ5JPQ= @@ -236,8 +254,10 @@ github.com/google/pprof v0.0.0-20200430221834-fc25d7d30c6d/go.mod h1:ZgVRPoUq/hf github.com/google/pprof v0.0.0-20200708004538-1a94d8640e99/go.mod h1:ZgVRPoUq/hfqzAqh7sHMqb3I9Rq5C59dIz2SbBwJ4eM= github.com/google/renameio v0.1.0/go.mod h1:KWCgfxg9yswjAJkECMjeO8J8rahYeXnNhOm40UhjYkI= github.com/google/uuid v1.0.0/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo= -github.com/google/uuid v1.1.1 h1:Gkbcsh/GbpXz7lPftLA3P6TYMwjCLYm83jiFQZF/3gY= github.com/google/uuid v1.1.1/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo= +github.com/google/uuid v1.1.2/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo= +github.com/google/uuid v1.2.0 h1:qJYtXnJRWmpe7m/3XlyhrsLrEURqHRM2kxzoxXqyUDs= +github.com/google/uuid v1.2.0/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo= github.com/googleapis/gax-go/v2 v2.0.4/go.mod h1:0Wqv26UfaUD9n4G6kQubkQ+KchISgw+vpHVxEJEs9eg= github.com/googleapis/gax-go/v2 v2.0.5 h1:sjZBwGj9Jlw33ImPtvFviGYvseOtDM7hkSKB7+Tv3SM= github.com/googleapis/gax-go/v2 v2.0.5/go.mod h1:DWXyrwAJ9X0FpwwEdw+IPEYBICEFu5mhpdKc/us6bOk= @@ -255,9 +275,11 @@ github.com/hashicorp/aws-sdk-go-base v0.6.0/go.mod h1:2fRjWDv3jJBeN6mVWFHV6hFTNe github.com/hashicorp/aws-sdk-go-base v0.7.0 h1:Umcq11kcoARameDgxPiYBbyltTZqO7GgBVSdq4pzX/w= github.com/hashicorp/aws-sdk-go-base v0.7.0/go.mod h1:2fRjWDv3jJBeN6mVWFHV6hFTNeFBx2gpDLQaZNxUVAY= github.com/hashicorp/consul v0.0.0-20171026175957-610f3c86a089/go.mod h1:mFrjN1mfidgJfYP1xrJCF+AfRhr6Eaqhb2+sfyn/OOI= -github.com/hashicorp/errwrap v1.0.0 h1:hLrqtEDnRye3+sgx6z4qVLNuviH3MR5aQ0ykNJa/UYA= github.com/hashicorp/errwrap v1.0.0/go.mod h1:YH+1FKiLXxHSkmPseP+kNlulaMuP3n2brvKWEqk/Jc4= +github.com/hashicorp/errwrap v1.1.0 h1:OxrOeh75EUXMY8TBjag2fzXGZ40LB6IKw45YeGUDY2I= +github.com/hashicorp/errwrap v1.1.0/go.mod h1:YH+1FKiLXxHSkmPseP+kNlulaMuP3n2brvKWEqk/Jc4= github.com/hashicorp/go-azure-helpers v0.12.0/go.mod h1:Zc3v4DNeX6PDdy7NljlYpnrdac1++qNW0I4U+ofGwpg= +github.com/hashicorp/go-azure-helpers v0.14.0/go.mod h1:kR7+sTDEb9TOp/O80ss1UEJg1t4/BHLD/U8wHLS4BGQ= github.com/hashicorp/go-checkpoint v0.5.0/go.mod h1:7nfLNL10NsxqO4iWuW6tWW0HjZuDrwkBuEQsVcpCOgg= github.com/hashicorp/go-cleanhttp v0.5.0/go.mod h1:JpRdi6/HCYpAwUzNwuwqhbovhLtngrth3wmdIIUrZ80= github.com/hashicorp/go-cleanhttp v0.5.1/go.mod h1:JpRdi6/HCYpAwUzNwuwqhbovhLtngrth3wmdIIUrZ80= @@ -269,7 +291,6 @@ github.com/hashicorp/go-getter v1.5.0/go.mod h1:a7z7NPPfNQpJWcn4rSWFtdrSldqLdLPE github.com/hashicorp/go-getter v1.5.1 h1:lM9sM02nvEApQGFgkXxWbhfqtyN+AyhQmi+MaMdBDOI= github.com/hashicorp/go-getter v1.5.1/go.mod h1:a7z7NPPfNQpJWcn4rSWFtdrSldqLdLPEF3d8nFMsSLM= github.com/hashicorp/go-hclog v0.0.0-20180709165350-ff2cf002a8dd/go.mod h1:9bjs9uLqI8l75knNv3lV1kA55veR+WUPSiKIWcQHudI= -github.com/hashicorp/go-hclog v0.9.2/go.mod h1:5CU+agLiy3J7N7QjHK5d05KxGsuXiQLrjA0H7acj2lQ= github.com/hashicorp/go-hclog v0.14.1/go.mod h1:whpDNt7SSdeAju8AWKIWsul05p54N/39EeqMAyrmvFQ= github.com/hashicorp/go-hclog v0.15.0 h1:qMuK0wxsoW4D0ddCCYwPSTm4KQv1X1ke3WmPWZ0Mvsk= github.com/hashicorp/go-hclog v0.15.0/go.mod h1:whpDNt7SSdeAju8AWKIWsul05p54N/39EeqMAyrmvFQ= @@ -310,12 +331,10 @@ github.com/hashicorp/logutils v1.0.0 h1:dLEQVugN8vlakKOUE3ihGLTZJRB4j+M2cdTm/ORI github.com/hashicorp/logutils v1.0.0/go.mod h1:QIAnNjmIWmVIIkWDTG1z5v++HQmx9WQRO+LraFDTW64= github.com/hashicorp/memberlist v0.1.0/go.mod h1:ncdBp14cuox2iFOq3kDiquKU6fqsTBc3W6JvZwjxxsE= github.com/hashicorp/serf v0.0.0-20160124182025-e4ec8cc423bb/go.mod h1:h/Ru6tmZazX7WO/GDmwdpS975F019L4t5ng5IgwbNrE= -github.com/hashicorp/terraform v0.14.9 h1:hZ8s+YuOee7A1o3kOVyBNQs7C4bVqzSHg5TiS6jOkps= -github.com/hashicorp/terraform v0.14.9/go.mod h1:K/LAcRZgbGdSBY+3NB9qdLSPkkFdZ+bTrbzpZ65p4BY= -github.com/hashicorp/terraform v0.14.10 h1:hefSc7icxWFW4t8T2BSQ+RPkOiI9YE0otQ8S4EtneZw= -github.com/hashicorp/terraform v0.14.10/go.mod h1:K/LAcRZgbGdSBY+3NB9qdLSPkkFdZ+bTrbzpZ65p4BY= -github.com/hashicorp/terraform-config-inspect v0.0.0-20191212124732-c6ae6269b9d7 h1:Pc5TCv9mbxFN6UVX0LH6CpQrdTM5YjbVI2w15237Pjk= -github.com/hashicorp/terraform-config-inspect v0.0.0-20191212124732-c6ae6269b9d7/go.mod h1:p+ivJws3dpqbp1iP84+npOyAmTTOLMgCzrXd3GSdn/A= +github.com/hashicorp/terraform v0.15.0 h1:Q6GHeuUuobJ85NT85scFoYpLSp+tVylBi3D4yCIk+p4= +github.com/hashicorp/terraform v0.15.0/go.mod h1:rijD3l786NWzFS8xfpKrf1dCXyTP5xElJymcC2iBpE0= +github.com/hashicorp/terraform-config-inspect v0.0.0-20210209133302-4fd17a0faac2 h1:l+bLFvHjqtgNQwWxwrFX9PemGAAO2P1AGZM7zlMNvCs= +github.com/hashicorp/terraform-config-inspect v0.0.0-20210209133302-4fd17a0faac2/go.mod h1:Z0Nnk4+3Cy89smEbrq+sl1bxc9198gIP4I7wcQF6Kqs= github.com/hashicorp/terraform-exec v0.13.0/go.mod h1:SGhto91bVRlgXQWcJ5znSz+29UZIa8kpBbkGwQ+g9E8= github.com/hashicorp/terraform-json v0.8.0/go.mod h1:3defM4kkMfttwiE7VakJDwCd4R+umhSQnvJwORXbprE= github.com/hashicorp/terraform-plugin-go v0.2.1/go.mod h1:10V6F3taeDWVAoLlkmArKttR3IULlRWFAGtQIQTIDr4= @@ -326,8 +345,10 @@ github.com/hashicorp/yamux v0.0.0-20180604194846-3520598351bb/go.mod h1:+NfK9FKe github.com/hashicorp/yamux v0.0.0-20181012175058-2f1d1f20f75d h1:kJCB4vdITiW1eC1vq2e6IsrXKrZit1bv/TDYFGMp4BQ= github.com/hashicorp/yamux v0.0.0-20181012175058-2f1d1f20f75d/go.mod h1:+NfK9FKeTrX5uv1uIXGdwYDTeHna2qgaIlx54MXqjAM= github.com/hpcloud/tail v1.0.0/go.mod h1:ab1qPbhIpdTxEkNHXyeSf5vhxWSCs/tWer42PpOxQnU= +github.com/huandu/xstrings v1.3.2/go.mod h1:y5/lhBue+AyNmUVz9RLU9xbLR0o4KIIExikq4ovT0aE= github.com/ianlancetaylor/demangle v0.0.0-20181102032728-5e5cf60278f6/go.mod h1:aSSvb/t6k1mPoxDqO4vJh6VOCGPwU4O0C2/Eqndh1Sc= github.com/imdario/mergo v0.3.9/go.mod h1:2EnlNZ0deacrJVfApfmtdGgDfMuh/nq6Ok1EcJh5FfA= +github.com/imdario/mergo v0.3.11/go.mod h1:jmQim1M+e3UYxmgPu/WyfjB3N3VflVyUjjjwH0dnCYA= github.com/jbenet/go-context v0.0.0-20150711004518-d14ea06fba99/go.mod h1:1lJo3i6rXxKeerYnT8Nvf0QmHCRC1n8sfWVwXF2Frvo= github.com/jen20/awspolicyequivalence v1.1.0/go.mod h1:PV1fS2xyHhCLp83vbgSMFr2drM4GzG61wkz+k4pOG3E= github.com/jessevdk/go-flags v1.4.0/go.mod h1:4FA24M0QyGHXBuZZK/XkWh8h0e1EYbRYJSGM75WSRxI= @@ -382,14 +403,12 @@ github.com/masterzen/simplexml v0.0.0-20160608183007-4572e39b1ab9/go.mod h1:kCEb github.com/masterzen/simplexml v0.0.0-20190410153822-31eea3082786/go.mod h1:kCEbxUJlNDEBNbdQMkPSp6yaKcRXVI6f4ddk8Riv4bc= github.com/masterzen/winrm v0.0.0-20200615185753-c42b5136ff88/go.mod h1:a2HXwefeat3evJHxFXSayvRHpYEPJYtErl4uIzfaUqY= github.com/mattn/go-colorable v0.0.9/go.mod h1:9vuHe8Xs5qXnSaW/c/ABM9alt+Vo+STaOChaDxuIBZU= -github.com/mattn/go-colorable v0.1.1/go.mod h1:FuOcm+DKB9mbwrcAfNl7/TZVBZ6rcnceauSikq3lYCQ= github.com/mattn/go-colorable v0.1.4/go.mod h1:U0ppj6V5qS13XJ6of8GYAs25YV2eR4EVcfRqFIhoBtE= github.com/mattn/go-colorable v0.1.7/go.mod h1:u6P/XSegPjTcexA+o6vUJrdnUu04hMope9wVRipJSqc= github.com/mattn/go-colorable v0.1.8 h1:c1ghPdyEDarC70ftn0y+A/Ee++9zz8ljHG1b13eJ0s8= github.com/mattn/go-colorable v0.1.8/go.mod h1:u6P/XSegPjTcexA+o6vUJrdnUu04hMope9wVRipJSqc= github.com/mattn/go-isatty v0.0.3/go.mod h1:M+lRXTBqGeGNdLjl/ufCoiOlB5xdOkqRJdNxMWT7Zi4= github.com/mattn/go-isatty v0.0.4/go.mod h1:M+lRXTBqGeGNdLjl/ufCoiOlB5xdOkqRJdNxMWT7Zi4= -github.com/mattn/go-isatty v0.0.5/go.mod h1:Iq45c/XA43vh69/j3iqttzPXn0bhXyGjM0Hdxcsrc5s= github.com/mattn/go-isatty v0.0.8/go.mod h1:Iq45c/XA43vh69/j3iqttzPXn0bhXyGjM0Hdxcsrc5s= github.com/mattn/go-isatty v0.0.10/go.mod h1:qgIWMr58cqv1PHHyhnkY9lrL7etaEgOFcMEpPG5Rm84= github.com/mattn/go-isatty v0.0.11/go.mod h1:PhnuNfih5lzO57/f3n+odYbM4JtupLOxQOAqxQCu2WE= @@ -399,8 +418,8 @@ github.com/mattn/go-runewidth v0.0.4/go.mod h1:LwmH8dsx7+W8Uxz3IHJYH5QSwggIsqBzp github.com/mattn/go-shellwords v1.0.4/go.mod h1:3xCvwCdWdlDJUrvuMn7Wuy9eWs4pE8vqg+NOMyg4B2o= github.com/matttproud/golang_protobuf_extensions v1.0.1/go.mod h1:D8He9yQNgCq6Z5Ld7szi9bcBfOoFv/3dc6xSMkL2PC0= github.com/miekg/dns v1.0.8/go.mod h1:W1PPwlIAgtquWBMBEV9nkV9Cazfe8ScdGz/Lj7v3Nrg= -github.com/mitchellh/cli v1.1.0/go.mod h1:xcISNoH86gajksDmfB23e/pu+B+GeFRMYmoHXxx3xhI= github.com/mitchellh/cli v1.1.1/go.mod h1:xcISNoH86gajksDmfB23e/pu+B+GeFRMYmoHXxx3xhI= +github.com/mitchellh/cli v1.1.2/go.mod h1:6iaV0fGdElS6dPBx0EApTxHrcWvmJphyh2n8YBLPPZ4= github.com/mitchellh/colorstring v0.0.0-20190213212951-d06e56a500db/go.mod h1:l0dey0ia/Uv7NcFFVbCLtqEBQbrT4OCwCSKTEv6enCw= github.com/mitchellh/copystructure v1.0.0/go.mod h1:SNtv71yrdKgLRyLFxmLdkAbkKEFWgYaq1OVrnRcwhnw= github.com/mitchellh/copystructure v1.1.1 h1:Bp6x9R1Wn16SIz3OfeDr0b7RnCG2OB66Y7PQyC/cvq4= @@ -421,8 +440,8 @@ github.com/mitchellh/gox v1.0.1/go.mod h1:ED6BioOGXMswlXa2zxfh/xdd5QhwYliBFn9V18 github.com/mitchellh/iochan v1.0.0/go.mod h1:JwYml1nuB7xOzsp52dPpHFffvOCDupsG0QubkSMEySY= github.com/mitchellh/mapstructure v1.0.0/go.mod h1:FVVH3fgwuzCH5S8UJGiWEs2h04kUh9fWfEaFds41c1Y= github.com/mitchellh/mapstructure v1.1.2/go.mod h1:FVVH3fgwuzCH5S8UJGiWEs2h04kUh9fWfEaFds41c1Y= +github.com/mitchellh/panicwrap v1.0.0 h1:67zIyVakCIvcs69A0FGfZjBdPleaonSgGlXRSRlb6fE= github.com/mitchellh/panicwrap v1.0.0/go.mod h1:pKvZHwWrZowLUzftuFq7coarnxbBXU4aQh3N0BJOeeA= -github.com/mitchellh/prefixedio v0.0.0-20190213213902-5733675afd51/go.mod h1:kB1naBgV9ORnkiTVeyJOI1DavaJkG4oNIq0Af6ZVKUo= github.com/mitchellh/reflectwalk v1.0.0/go.mod h1:mSTlrgnPZtwu0c4WaC2kGObEpuNDbx0jmZXqmk4esnw= github.com/mitchellh/reflectwalk v1.0.1 h1:FVzMWA5RllMAKIdUSC8mdWo3XtwoecrH79BY70sEEpE= github.com/mitchellh/reflectwalk v1.0.1/go.mod h1:mSTlrgnPZtwu0c4WaC2kGObEpuNDbx0jmZXqmk4esnw= @@ -456,7 +475,7 @@ github.com/onsi/gomega v1.10.4/go.mod h1:g/HbgYopi++010VEqkFgJHKC09uJiW9UkXvMUuK github.com/packer-community/winrmcp v0.0.0-20180921211025-c76d91c1e7db/go.mod h1:f6Izs6JvFTdnRbziASagjZ2vmf55NSIkC/weStxCHqk= github.com/pascaldekloe/goe v0.0.0-20180627143212-57f6aae5913c/go.mod h1:lzWF7FIEvWOWxwDKqyGYQf6ZUaNfKdP144TG7ZOy1lc= github.com/pierrec/lz4 v2.0.5+incompatible/go.mod h1:pdkljMzZIN41W+lC3N2tnIh5sFi+IEE17M5jbnwPHcY= -github.com/pkg/browser v0.0.0-20180916011732-0a3d74bf9ce4/go.mod h1:4OwLy04Bl9Ef3GJJCoec+30X3LQs/0/m4HFRt/2LUSA= +github.com/pkg/browser v0.0.0-20201207095918-0426ae3fba23/go.mod h1:N6UoU20jOqggOuDwUaBQpluzLNDqif3kq9z2wpdYEfQ= github.com/pkg/errors v0.8.0/go.mod h1:bwawxfHBFNV+L2hUp1rHADufV3IMtnDRdf1r5NINEl0= github.com/pkg/errors v0.8.1/go.mod h1:bwawxfHBFNV+L2hUp1rHADufV3IMtnDRdf1r5NINEl0= github.com/pkg/errors v0.9.1/go.mod h1:bwawxfHBFNV+L2hUp1rHADufV3IMtnDRdf1r5NINEl0= @@ -514,7 +533,7 @@ github.com/terraform-linters/tflint-ruleset-aws v0.3.1 h1:ipsJto4kbVBUdt12E+r1uL github.com/terraform-linters/tflint-ruleset-aws v0.3.1/go.mod h1:8XZ7U81vk51+NGE76ygQKtVEhNP6tuI+m0UFB205jTI= github.com/terraform-providers/terraform-provider-aws v1.60.1-0.20210401223222-6eda2394d8c0/go.mod h1:zHbWVcgJdvGPS7TgOYxr1p2Fgrtok7rVw9EOhSgtC9M= github.com/tmc/grpc-websocket-proxy v0.0.0-20171017195756-830351dc03c6/go.mod h1:ncp9v5uamzpCO7NfCPTXjqaC+bZgJeR0sMTm6dMHP7U= -github.com/tombuildsstuff/giovanni v0.12.0/go.mod h1:qJ5dpiYWkRsuOSXO8wHbee7+wElkLNfWVolcf59N84E= +github.com/tombuildsstuff/giovanni v0.15.1/go.mod h1:0TZugJPEtqzPlMpuJHYfXY6Dq2uLPrXf98D2XQSxNbA= github.com/ugorji/go v0.0.0-20180813092308-00b869d2f4a5/go.mod h1:hnLbHMwcvSihnDhEfx2/BzKp2xb0Y+ErdfYcrs9tkJQ= github.com/ulikunitz/xz v0.5.5/go.mod h1:2bypXElzHzzJZwzH67Y6wb67pO62Rzfn7BSiF4ABRW8= github.com/ulikunitz/xz v0.5.8 h1:ERv8V6GKqVi23rgu5cj9pVfVzJbOqAY2Ntl88O6c2nQ= @@ -563,8 +582,13 @@ golang.org/x/crypto v0.0.0-20190605123033-f99c8df09eb5/go.mod h1:yigFU9vqHzYiE8U golang.org/x/crypto v0.0.0-20191011191535-87dc89f01550/go.mod h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI= golang.org/x/crypto v0.0.0-20191202143827-86a70503ff7e/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto= golang.org/x/crypto v0.0.0-20200302210943-78000ba7a073/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto= -golang.org/x/crypto v0.0.0-20200622213623-75b288015ac9 h1:psW17arqaxU48Z5kZ0CQnkZWQJsqcURM6tKiBApRjXI= golang.org/x/crypto v0.0.0-20200622213623-75b288015ac9/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto= +golang.org/x/crypto v0.0.0-20200820211705-5c72a883971a/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto= +golang.org/x/crypto v0.0.0-20201002170205-7f63de1d35b0/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto= +golang.org/x/crypto v0.0.0-20201016220609-9e8e0b390897/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto= +golang.org/x/crypto v0.0.0-20210220033148-5ea612d1eb83/go.mod h1:jdWPYTVW3xRLrWPugEBEK3UY2ZEsg3UU495nc5E+M+I= +golang.org/x/crypto v0.0.0-20210322153248-0c34fe9e7dc2 h1:It14KIkyBFYkHkwZ7k45minvA9aorojkyjGk9KJ5B/w= +golang.org/x/crypto v0.0.0-20210322153248-0c34fe9e7dc2/go.mod h1:T9bdIzuCu7OtxOm1hfPfRQxPLYneinmdGuTeoZ9dtd4= golang.org/x/exp v0.0.0-20190121172915-509febef88a4/go.mod h1:CJ0aWSM057203Lf6IL+f9T1iT9GByDxfZKAQTCR3kQA= golang.org/x/exp v0.0.0-20190306152737-a1d7652674e8/go.mod h1:CJ0aWSM057203Lf6IL+f9T1iT9GByDxfZKAQTCR3kQA= golang.org/x/exp v0.0.0-20190510132918-efd6b22b2522/go.mod h1:ZjyILWgesfNpC6sMxTJOJm9Kp84zZh5NQWvqDGG3Qr8= @@ -637,8 +661,9 @@ golang.org/x/net v0.0.0-20200707034311-ab3426394381/go.mod h1:/O7V0waA8r7cgGh81R golang.org/x/net v0.0.0-20200822124328-c89045814202/go.mod h1:/O7V0waA8r7cgGh81Ro3o1hOxt32SMVPicZroKQ2sZA= golang.org/x/net v0.0.0-20201021035429-f5854403a974/go.mod h1:sp8m0HH+o8qH0wwXwYZr8TS3Oi6o0r6Gce1SSxlDquU= golang.org/x/net v0.0.0-20201110031124-69a78807bb2b/go.mod h1:sp8m0HH+o8qH0wwXwYZr8TS3Oi6o0r6Gce1SSxlDquU= -golang.org/x/net v0.0.0-20201202161906-c7110b5ffcbb h1:eBmm0M9fYhWpKZLjQUUKka/LtIxf46G4fxeEz5KJr9U= golang.org/x/net v0.0.0-20201202161906-c7110b5ffcbb/go.mod h1:sp8m0HH+o8qH0wwXwYZr8TS3Oi6o0r6Gce1SSxlDquU= +golang.org/x/net v0.0.0-20210226172049-e18ecbb05110 h1:qWPm9rbaAMKs8Bq/9LRpbMqxWRVUAQwMI9fVrssnTfw= +golang.org/x/net v0.0.0-20210226172049-e18ecbb05110/go.mod h1:m0MpNAwzfU5UDzcl9v0D8zg8gWTRqZa9RBIspLL5mdg= golang.org/x/oauth2 v0.0.0-20180821212333-d2e6202438be/go.mod h1:N/0e6XlmueqKjAGxoOufVs8QHGRruUQn6yWY3a++T0U= golang.org/x/oauth2 v0.0.0-20190226205417-e64efc72b421/go.mod h1:gOpvHmFTYa4IltrdGE7lF6nIHvwfUNPOp7c8zoXwtLw= golang.org/x/oauth2 v0.0.0-20190604053449-0f29369cfe45/go.mod h1:gOpvHmFTYa4IltrdGE7lF6nIHvwfUNPOp7c8zoXwtLw= @@ -702,8 +727,13 @@ golang.org/x/sys v0.0.0-20200523222454-059865788121/go.mod h1:h1NjWce9XRLGQEsW7w golang.org/x/sys v0.0.0-20200803210538-64077c9b5642/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20200905004654-be1d3432aa8f/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20200930185726-fdedc70b468f/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20201119102817-f84b799fce68/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20210320140829-1e4c9ba3b0c4 h1:EZ2mChiOa8udjfp6rRmswTbtZN/QzUQp4ptM4rnjHvc= golang.org/x/sys v0.0.0-20210320140829-1e4c9ba3b0c4/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/term v0.0.0-20201117132131-f5c789dd3221/go.mod h1:Nr5EML6q2oocZ2LXRh80K7BxOlk5/8JxuGnuhpl+muw= +golang.org/x/term v0.0.0-20201126162022-7de9c90e9dd1/go.mod h1:bj7SfCRtBDWHUb9snDiAeCFNEtKQo2Wmx5Cou7ajbmo= +golang.org/x/term v0.0.0-20201210144234-2321bbc49cbf h1:MZ2shdL+ZM/XzY3ZGOnh4Nlpnxz5GSOhOmtHo3iPU6M= +golang.org/x/term v0.0.0-20201210144234-2321bbc49cbf/go.mod h1:bj7SfCRtBDWHUb9snDiAeCFNEtKQo2Wmx5Cou7ajbmo= golang.org/x/text v0.0.0-20160726164857-2910a502d2bf/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ= golang.org/x/text v0.0.0-20170915032832-14c0d48ead0c/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ= golang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ= diff --git a/tflint/loader_test.go b/tflint/loader_test.go index c38c8aa80..80142a176 100644 --- a/tflint/loader_test.go +++ b/tflint/loader_test.go @@ -14,8 +14,8 @@ import ( "github.com/zclconf/go-cty/cty" ) -func Test_LoadConfig_v0_12_0(t *testing.T) { - withinFixtureDir(t, "v0.12.0_module", func() { +func Test_LoadConfig_v0_15_0(t *testing.T) { + withinFixtureDir(t, "v0.15.0_module", func() { loader, err := NewLoader(afero.Afero{Fs: afero.NewOsFs()}, moduleConfig()) if err != nil { t.Fatalf("Unexpected error occurred: %s", err) @@ -25,18 +25,14 @@ func Test_LoadConfig_v0_12_0(t *testing.T) { t.Fatalf("Unexpected error occurred: %s", err) } - if _, exists := config.Children["ecs_on_spotfleet"]; !exists { - t.Fatalf("`ecs_on_spotfleet` module is not loaded: %#v", config.Children) - } - - if _, exists := config.Children["ecs_on_spotfleet"].Module.ManagedResources["aws_ecs_cluster.main"]; !exists { - t.Fatalf("`ecs_on_spotfleet` module resource `aws_ecs_cluster.main` is not loaded: %#v", config.Children["ecs_on_spotfleet"].Module.ManagedResources) - } - if _, exists := config.Children["instance"]; !exists { t.Fatalf("`instance` module is not loaded: %#v", config.Children) } + if _, exists := config.Children["instance"].Module.ManagedResources["aws_instance.main"]; !exists { + t.Fatalf("`instance` module resource `aws_instance.main` is not loaded: %#v", config.Children["instance"].Module.ManagedResources) + } + if _, exists := config.Children["consul"]; !exists { t.Fatalf("`consul` module is not loaded: %#v", config.Children) } @@ -137,7 +133,7 @@ func Test_LoadConfig_invalidConfiguration(t *testing.T) { } func Test_Files(t *testing.T) { - withinFixtureDir(t, "v0.12.0_module", func() { + withinFixtureDir(t, "v0.15.0_module", func() { loader, err := NewLoader(afero.Afero{Fs: afero.NewOsFs()}, EmptyConfig()) if err != nil { t.Fatalf("Unexpected error occurred: %s", err) diff --git a/tflint/test-fixtures/v0.12.0_module/.terraform/modules/consul/hashicorp-terraform-aws-consul-ee980b4/.gitignore b/tflint/test-fixtures/v0.12.0_module/.terraform/modules/consul/hashicorp-terraform-aws-consul-ee980b4/.gitignore deleted file mode 100644 index 328454586..000000000 --- a/tflint/test-fixtures/v0.12.0_module/.terraform/modules/consul/hashicorp-terraform-aws-consul-ee980b4/.gitignore +++ /dev/null @@ -1,22 +0,0 @@ -# Terraform files -.terraform -terraform.tfstate -terraform.tfvars -*.tfstate* - -# OS X files -.history -.DS_Store - -# IntelliJ files -.idea_modules -*.iml -*.iws -*.ipr -.idea/ -build/ -*/build/ -out/ - -# Go best practices dictate that libraries should not include the vendor directory -vendor diff --git a/tflint/test-fixtures/v0.12.0_module/.terraform/modules/consul/hashicorp-terraform-aws-consul-ee980b4/CONTRIBUTING.md b/tflint/test-fixtures/v0.12.0_module/.terraform/modules/consul/hashicorp-terraform-aws-consul-ee980b4/CONTRIBUTING.md deleted file mode 100644 index bdfb309d7..000000000 --- a/tflint/test-fixtures/v0.12.0_module/.terraform/modules/consul/hashicorp-terraform-aws-consul-ee980b4/CONTRIBUTING.md +++ /dev/null @@ -1,86 +0,0 @@ -# Contribution Guidelines - -Contributions to this Module are very welcome! We follow a fairly standard [pull request -process](https://help.github.com/articles/about-pull-requests/) for contributions, subject to the following guidelines: - -1. [File a GitHub issue](#file-a-github-issue) -1. [Update the documentation](#update-the-documentation) -1. [Update the tests](#update-the-tests) -1. [Update the code](#update-the-code) -1. [Create a pull request](#create-a-pull-request) -1. [Merge and release](#merge-and-release) - -## File a GitHub issue - -Before starting any work, we recommend filing a GitHub issue in this repo. This is your chance to ask questions and -get feedback from the maintainers and the community before you sink a lot of time into writing (possibly the wrong) -code. If there is anything you're unsure about, just ask! - -## Update the documentation - -We recommend updating the documentation *before* updating any code (see [Readme Driven -Development](http://tom.preston-werner.com/2010/08/23/readme-driven-development.html)). This ensures the documentation -stays up to date and allows you to think through the problem at a high level before you get lost in the weeds of -coding. - -## Update the tests - -We also recommend updating the automated tests *before* updating any code (see [Test Driven -Development](https://en.wikipedia.org/wiki/Test-driven_development)). That means you add or update a test case, -verify that it's failing with a clear error message, and *then* make the code changes to get that test to pass. This -ensures the tests stay up to date and verify all the functionality in this Module, including whatever new -functionality you're adding in your contribution. Check out the [tests](https://github.com/hashicorp/terraform-aws-consul/tree/master/test) folder for instructions on running the -automated tests. - -## Update the code - -At this point, make your code changes and use your new test case to verify that everything is working. As you work, -keep in mind two things: - -1. Backwards compatibility -1. Downtime - -### Backwards compatibility - -Please make every effort to avoid unnecessary backwards incompatible changes. With Terraform code, this means: - -1. Do not delete, rename, or change the type of input variables. -1. If you add an input variable, it should have a `default`. -1. Do not delete, rename, or change the type of output variables. -1. Do not delete or rename a module in the `modules` folder. - -If a backwards incompatible change cannot be avoided, please make sure to call that out when you submit a pull request, -explaining why the change is absolutely necessary. - -### Downtime - -Bear in mind that the Terraform code in this Module is used by real companies to run real infrastructure in -production, and certain types of changes could cause downtime. For example, consider the following: - -1. If you rename a resource (e.g. `aws_instance "foo"` -> `aws_instance "bar"`), Terraform will see that as deleting - the old resource and creating a new one. -1. If you change certain attributes of a resource (e.g. the `name` of an `aws_elb`), the cloud provider (e.g. AWS) may - treat that as an instruction to delete the old resource and a create a new one. - -Deleting certain types of resources (e.g. virtual servers, load balancers) can cause downtime, so when making code -changes, think carefully about how to avoid that. For example, can you avoid downtime by using -[create_before_destroy](https://www.terraform.io/docs/configuration/resources.html#create_before_destroy)? Or via -the `terraform state` command? If so, make sure to note this in our pull request. If downtime cannot be avoided, -please make sure to call that out when you submit a pull request. - -## Create a pull request - -[Create a pull request](https://help.github.com/articles/creating-a-pull-request/) with your changes. Please make sure -to include the following: - -1. A description of the change, including a link to your GitHub issue. -1. The output of your automated test run, preferably in a [GitHub Gist](https://gist.github.com/). We cannot run - automated tests for pull requests automatically due to [security - concerns](https://circleci.com/docs/fork-pr-builds/#security-implications), so we need you to manually provide this - test output so we can verify that everything is working. -1. Any notes on backwards incompatibility or downtime. - -## Merge and release - -The maintainers for this repo will review your code and provide feedback. If everything looks good, they will merge the -code and release a new version, which you'll be able to find in the [releases page](../../releases). \ No newline at end of file diff --git a/tflint/test-fixtures/v0.12.0_module/.terraform/modules/consul/hashicorp-terraform-aws-consul-ee980b4/LICENSE b/tflint/test-fixtures/v0.12.0_module/.terraform/modules/consul/hashicorp-terraform-aws-consul-ee980b4/LICENSE deleted file mode 100644 index 7a4a3ea24..000000000 --- a/tflint/test-fixtures/v0.12.0_module/.terraform/modules/consul/hashicorp-terraform-aws-consul-ee980b4/LICENSE +++ /dev/null @@ -1,202 +0,0 @@ - - Apache License - Version 2.0, January 2004 - http://www.apache.org/licenses/ - - TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION - - 1. Definitions. - - "License" shall mean the terms and conditions for use, reproduction, - and distribution as defined by Sections 1 through 9 of this document. - - "Licensor" shall mean the copyright owner or entity authorized by - the copyright owner that is granting the License. - - "Legal Entity" shall mean the union of the acting entity and all - other entities that control, are controlled by, or are under common - control with that entity. For the purposes of this definition, - "control" means (i) the power, direct or indirect, to cause the - direction or management of such entity, whether by contract or - otherwise, or (ii) ownership of fifty percent (50%) or more of the - outstanding shares, or (iii) beneficial ownership of such entity. - - "You" (or "Your") shall mean an individual or Legal Entity - exercising permissions granted by this License. - - "Source" form shall mean the preferred form for making modifications, - including but not limited to software source code, documentation - source, and configuration files. - - "Object" form shall mean any form resulting from mechanical - transformation or translation of a Source form, including but - not limited to compiled object code, generated documentation, - and conversions to other media types. - - "Work" shall mean the work of authorship, whether in Source or - Object form, made available under the License, as indicated by a - copyright notice that is included in or attached to the work - (an example is provided in the Appendix below). - - "Derivative Works" shall mean any work, whether in Source or Object - form, that is based on (or derived from) the Work and for which the - editorial revisions, annotations, elaborations, or other modifications - represent, as a whole, an original work of authorship. For the purposes - of this License, Derivative Works shall not include works that remain - separable from, or merely link (or bind by name) to the interfaces of, - the Work and Derivative Works thereof. - - "Contribution" shall mean any work of authorship, including - the original version of the Work and any modifications or additions - to that Work or Derivative Works thereof, that is intentionally - submitted to Licensor for inclusion in the Work by the copyright owner - or by an individual or Legal Entity authorized to submit on behalf of - the copyright owner. For the purposes of this definition, "submitted" - means any form of electronic, verbal, or written communication sent - to the Licensor or its representatives, including but not limited to - communication on electronic mailing lists, source code control systems, - and issue tracking systems that are managed by, or on behalf of, the - Licensor for the purpose of discussing and improving the Work, but - excluding communication that is conspicuously marked or otherwise - designated in writing by the copyright owner as "Not a Contribution." - - "Contributor" shall mean Licensor and any individual or Legal Entity - on behalf of whom a Contribution has been received by Licensor and - subsequently incorporated within the Work. - - 2. Grant of Copyright License. Subject to the terms and conditions of - this License, each Contributor hereby grants to You a perpetual, - worldwide, non-exclusive, no-charge, royalty-free, irrevocable - copyright license to reproduce, prepare Derivative Works of, - publicly display, publicly perform, sublicense, and distribute the - Work and such Derivative Works in Source or Object form. - - 3. Grant of Patent License. Subject to the terms and conditions of - this License, each Contributor hereby grants to You a perpetual, - worldwide, non-exclusive, no-charge, royalty-free, irrevocable - (except as stated in this section) patent license to make, have made, - use, offer to sell, sell, import, and otherwise transfer the Work, - where such license applies only to those patent claims licensable - by such Contributor that are necessarily infringed by their - Contribution(s) alone or by combination of their Contribution(s) - with the Work to which such Contribution(s) was submitted. If You - institute patent litigation against any entity (including a - cross-claim or counterclaim in a lawsuit) alleging that the Work - or a Contribution incorporated within the Work constitutes direct - or contributory patent infringement, then any patent licenses - granted to You under this License for that Work shall terminate - as of the date such litigation is filed. - - 4. Redistribution. You may reproduce and distribute copies of the - Work or Derivative Works thereof in any medium, with or without - modifications, and in Source or Object form, provided that You - meet the following conditions: - - (a) You must give any other recipients of the Work or - Derivative Works a copy of this License; and - - (b) You must cause any modified files to carry prominent notices - stating that You changed the files; and - - (c) You must retain, in the Source form of any Derivative Works - that You distribute, all copyright, patent, trademark, and - attribution notices from the Source form of the Work, - excluding those notices that do not pertain to any part of - the Derivative Works; and - - (d) If the Work includes a "NOTICE" text file as part of its - distribution, then any Derivative Works that You distribute must - include a readable copy of the attribution notices contained - within such NOTICE file, excluding those notices that do not - pertain to any part of the Derivative Works, in at least one - of the following places: within a NOTICE text file distributed - as part of the Derivative Works; within the Source form or - documentation, if provided along with the Derivative Works; or, - within a display generated by the Derivative Works, if and - wherever such third-party notices normally appear. The contents - of the NOTICE file are for informational purposes only and - do not modify the License. You may add Your own attribution - notices within Derivative Works that You distribute, alongside - or as an addendum to the NOTICE text from the Work, provided - that such additional attribution notices cannot be construed - as modifying the License. - - You may add Your own copyright statement to Your modifications and - may provide additional or different license terms and conditions - for use, reproduction, or distribution of Your modifications, or - for any such Derivative Works as a whole, provided Your use, - reproduction, and distribution of the Work otherwise complies with - the conditions stated in this License. - - 5. Submission of Contributions. Unless You explicitly state otherwise, - any Contribution intentionally submitted for inclusion in the Work - by You to the Licensor shall be under the terms and conditions of - this License, without any additional terms or conditions. - Notwithstanding the above, nothing herein shall supersede or modify - the terms of any separate license agreement you may have executed - with Licensor regarding such Contributions. - - 6. Trademarks. This License does not grant permission to use the trade - names, trademarks, service marks, or product names of the Licensor, - except as required for reasonable and customary use in describing the - origin of the Work and reproducing the content of the NOTICE file. - - 7. Disclaimer of Warranty. Unless required by applicable law or - agreed to in writing, Licensor provides the Work (and each - Contributor provides its Contributions) on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or - implied, including, without limitation, any warranties or conditions - of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A - PARTICULAR PURPOSE. You are solely responsible for determining the - appropriateness of using or redistributing the Work and assume any - risks associated with Your exercise of permissions under this License. - - 8. Limitation of Liability. In no event and under no legal theory, - whether in tort (including negligence), contract, or otherwise, - unless required by applicable law (such as deliberate and grossly - negligent acts) or agreed to in writing, shall any Contributor be - liable to You for damages, including any direct, indirect, special, - incidental, or consequential damages of any character arising as a - result of this License or out of the use or inability to use the - Work (including but not limited to damages for loss of goodwill, - work stoppage, computer failure or malfunction, or any and all - other commercial damages or losses), even if such Contributor - has been advised of the possibility of such damages. - - 9. Accepting Warranty or Additional Liability. While redistributing - the Work or Derivative Works thereof, You may choose to offer, - and charge a fee for, acceptance of support, warranty, indemnity, - or other liability obligations and/or rights consistent with this - License. However, in accepting such obligations, You may act only - on Your own behalf and on Your sole responsibility, not on behalf - of any other Contributor, and only if You agree to indemnify, - defend, and hold each Contributor harmless for any liability - incurred by, or claims asserted against, such Contributor by reason - of your accepting any such warranty or additional liability. - - END OF TERMS AND CONDITIONS - - APPENDIX: How to apply the Apache License to your work. - - To apply the Apache License to your work, attach the following - boilerplate notice, with the fields enclosed by brackets "[]" - replaced with your own identifying information. (Don't include - the brackets!) The text should be enclosed in the appropriate - comment syntax for the file format. We also recommend that a - file or class name and description of purpose be included on the - same "printed page" as the copyright notice for easier - identification within third-party archives. - - Copyright [yyyy] [name of copyright owner] - - Licensed under the Apache License, Version 2.0 (the "License"); - you may not use this file except in compliance with the License. - You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. \ No newline at end of file diff --git a/tflint/test-fixtures/v0.12.0_module/.terraform/modules/consul/hashicorp-terraform-aws-consul-ee980b4/NOTICE b/tflint/test-fixtures/v0.12.0_module/.terraform/modules/consul/hashicorp-terraform-aws-consul-ee980b4/NOTICE deleted file mode 100644 index 9f6aed2a3..000000000 --- a/tflint/test-fixtures/v0.12.0_module/.terraform/modules/consul/hashicorp-terraform-aws-consul-ee980b4/NOTICE +++ /dev/null @@ -1,4 +0,0 @@ -terraform-aws-consul -Copyright 2017 Gruntwork, Inc. - -This product includes software developed at Gruntwork (http://www.gruntwork.io/). \ No newline at end of file diff --git a/tflint/test-fixtures/v0.12.0_module/.terraform/modules/consul/hashicorp-terraform-aws-consul-ee980b4/README.md b/tflint/test-fixtures/v0.12.0_module/.terraform/modules/consul/hashicorp-terraform-aws-consul-ee980b4/README.md deleted file mode 100644 index c2a284c18..000000000 --- a/tflint/test-fixtures/v0.12.0_module/.terraform/modules/consul/hashicorp-terraform-aws-consul-ee980b4/README.md +++ /dev/null @@ -1,130 +0,0 @@ -# Consul AWS Module - -This repo contains a Module for how to deploy a [Consul](https://www.consul.io/) cluster on -[AWS](https://aws.amazon.com/) using [Terraform](https://www.terraform.io/). Consul is a distributed, highly-available -tool that you can use for service discovery and key/value storage. A Consul cluster typically includes a small number -of server nodes, which are responsible for being part of the [consensus -quorum](https://www.consul.io/docs/internals/consensus.html), and a larger number of client nodes, which you typically -run alongside your apps: - -![Consul architecture](https://github.com/hashicorp/terraform-aws-consul/blob/master/_docs/architecture.png?raw=true) - - - -## How to use this Module - -Each Module has the following folder structure: - -* [root](https://github.com/hashicorp/terraform-aws-consul/tree/master): This folder shows an example of Terraform code - that uses the [consul-cluster](https://github.com/hashicorp/terraform-aws-consul/tree/master/modules/consul-cluster) - module to deploy a [Consul](https://www.consul.io/) cluster in [AWS](https://aws.amazon.com/). -* [modules](https://github.com/hashicorp/terraform-aws-consul/tree/master/modules): This folder contains the reusable code for this Module, broken down into one or more modules. -* [examples](https://github.com/hashicorp/terraform-aws-consul/tree/master/examples): This folder contains examples of how to use the modules. -* [test](https://github.com/hashicorp/terraform-aws-consul/tree/master/test): Automated tests for the modules and examples. - -To deploy Consul servers using this Module: - -1. Create a Consul AMI using a Packer template that references the [install-consul module](https://github.com/hashicorp/terraform-aws-consul/tree/master/modules/install-consul). - Here is an [example Packer template](https://github.com/hashicorp/terraform-aws-consul/tree/master/examples/consul-ami#quick-start). - - If you are just experimenting with this Module, you may find it more convenient to use one of our official public AMIs: - - [Latest Ubuntu 16 AMIs](https://github.com/hashicorp/terraform-aws-consul/tree/master/_docs/ubuntu16-ami-list.md). - - [Latest Amazon Linux AMIs](https://github.com/hashicorp/terraform-aws-consul/tree/master/_docs/amazon-linux-ami-list.md). - - **WARNING! Do NOT use these AMIs in your production setup. In production, you should build your own AMIs in your own - AWS account.** - -1. Deploy that AMI across an Auto Scaling Group using the Terraform [consul-cluster module](https://github.com/hashicorp/terraform-aws-consul/tree/master/modules/consul-cluster) - and execute the [run-consul script](https://github.com/hashicorp/terraform-aws-consul/tree/master/modules/run-consul) with the `--server` flag during boot on each - Instance in the Auto Scaling Group to form the Consul cluster. Here is [an example Terraform - configuration](https://github.com/hashicorp/terraform-aws-consul/tree/master/MAIN.md#quick-start) to provision a Consul cluster. - -To deploy Consul clients using this Module: - -1. Use the [install-consul module](https://github.com/hashicorp/terraform-aws-consul/tree/master/modules/install-consul) to install Consul alongside your application code. -1. Before booting your app, execute the [run-consul script](https://github.com/hashicorp/terraform-aws-consul/tree/master/modules/run-consul) with `--client` flag. -1. Your app can now using the local Consul agent for service discovery and key/value storage. -1. Optionally, you can use the [install-dnsmasq module](https://github.com/hashicorp/terraform-aws-consul/tree/master/modules/install-dnsmasq) to configure Consul as the DNS for a - specific domain (e.g. `.consul`) so that URLs such as `foo.service.consul` resolve automatically to the IP - address(es) for a service `foo` registered in Consul (all other domain names will be continue to resolve using the - default resolver on the OS). - - - - -## What's a Module? - -A Module is a canonical, reusable, best-practices definition for how to run a single piece of infrastructure, such -as a database or server cluster. Each Module is created using [Terraform](https://www.terraform.io/), and -includes automated tests, examples, and documentation. It is maintained both by the open source community and -companies that provide commercial support. - -Instead of figuring out the details of how to run a piece of infrastructure from scratch, you can reuse -existing code that has been proven in production. And instead of maintaining all that infrastructure code yourself, -you can leverage the work of the Module community to pick up infrastructure improvements through -a version number bump. - - - -## Who maintains this Module? - -This Module is maintained by [Gruntwork](http://www.gruntwork.io/). If you're looking for help or commercial -support, send an email to [modules@gruntwork.io](mailto:modules@gruntwork.io?Subject=Consul%20Module). -Gruntwork can help with: - -* Setup, customization, and support for this Module. -* Modules for other types of infrastructure, such as VPCs, Docker clusters, databases, and continuous integration. -* Modules that meet compliance requirements, such as HIPAA. -* Consulting & Training on AWS, Terraform, and DevOps. - - - -## Code included in this Module: - -* [install-consul](https://github.com/hashicorp/terraform-aws-consul/tree/master/modules/install-consul): This module installs Consul using a - [Packer](https://www.packer.io/) template to create a Consul - [Amazon Machine Image (AMI)](http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/AMIs.html). - -* [consul-cluster](https://github.com/hashicorp/terraform-aws-consul/tree/master/modules/consul-cluster): The module includes Terraform code to deploy a Consul AMI across an [Auto - Scaling Group](https://aws.amazon.com/autoscaling/). - -* [run-consul](https://github.com/hashicorp/terraform-aws-consul/tree/master/modules/run-consul): This module includes the scripts to configure and run Consul. It is used - by the above Packer module at build-time to set configurations, and by the Terraform module at runtime - with [User Data](http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/user-data.html#user-data-shell-scripts) - to create the cluster. - -* [install-dnsmasq module](https://github.com/hashicorp/terraform-aws-consul/tree/master/modules/install-dnsmasq): Install [Dnsmasq](http://www.thekelleys.org.uk/dnsmasq/doc.html) - and configure it to forward requests for a specific domain to Consul. This allows you to use Consul as a DNS server - for URLs such as `foo.service.consul`. - -* [consul-iam-policies](https://github.com/hashicorp/terraform-aws-consul/tree/master/modules/consul-iam-policies): Defines the IAM policies necessary for a Consul cluster. - -* [consul-security-group-rules](https://github.com/hashicorp/terraform-aws-consul/tree/master/modules/consul-security-group-rules): Defines the security group rules used by a - Consul cluster to control the traffic that is allowed to go in and out of the cluster. - - - - -## How do I contribute to this Module? - -Contributions are very welcome! Check out the [Contribution Guidelines](https://github.com/hashicorp/terraform-aws-consul/tree/master/CONTRIBUTING.md) for instructions. - - - -## How is this Module versioned? - -This Module follows the principles of [Semantic Versioning](http://semver.org/). You can find each new release, -along with the changelog, in the [Releases Page](../../releases). - -During initial development, the major version will be 0 (e.g., `0.x.y`), which indicates the code does not yet have a -stable API. Once we hit `1.0.0`, we will make every effort to maintain a backwards compatible API and use the MAJOR, -MINOR, and PATCH versions on each release to indicate any incompatibilities. - - - -## License - -This code is released under the Apache 2.0 License. Please see [LICENSE](https://github.com/hashicorp/terraform-aws-consul/tree/master/LICENSE) and [NOTICE](https://github.com/hashicorp/terraform-aws-consul/tree/master/NOTICE) for more -details. - -Copyright © 2017 Gruntwork, Inc. diff --git a/tflint/test-fixtures/v0.12.0_module/.terraform/modules/consul/hashicorp-terraform-aws-consul-ee980b4/_ci/publish-amis-in-new-account.md b/tflint/test-fixtures/v0.12.0_module/.terraform/modules/consul/hashicorp-terraform-aws-consul-ee980b4/_ci/publish-amis-in-new-account.md deleted file mode 100644 index b57f542b1..000000000 --- a/tflint/test-fixtures/v0.12.0_module/.terraform/modules/consul/hashicorp-terraform-aws-consul-ee980b4/_ci/publish-amis-in-new-account.md +++ /dev/null @@ -1,26 +0,0 @@ -# How to Publish AMIs in a New AWS Account - -This readme discusses how to migrate the `publish-amis.sh` script to a new AWS account. - -To make using this Module as easy as possible, we want to automatically build and publish AMIs based on the -[/examples/consul-ami/consul.json](https://github.com/hashicorp/terraform-aws-consul/tree/master/examples/consul-ami/consul.json) Packer template upon every release of this repo. -This way, users can simply git clone this repo and `terraform apply` the [consul-cluster](https://github.com/hashicorp/terraform-aws-consul/tree/master/MAIN.md) -without first having to build their own AMI. Note that the auto-built AMIs are meant mostly for first-time users to -easily try out a Module. In a production setting, many users will want to validate the contents of their AMI by -manually building it in their own account. - -Unfortunately, auto-building AMIs creates a chicken-and-egg problem. How can we run code that automatically finds the -latest AMI until that AMI actually exists? But to build those AMIs, we have to run a build in CircleCI, which also runs -automated tests, which will fail when they cannot find the desired AMI. - -Our solution is that, for the `publish-amis` git branch only, on every commit, we will build and publish AMIs but we will -not run tests. For all other branches, AMIs will only be built upon a new git tag (GitHub release), and tests will be -run on every commit as usual. These settings are configured in the [circle.yml](https://github.com/hashicorp/terraform-aws-consul/tree/master/circle.yml) file. - -In addition to the above, don't forget to update the `AWS_ACCESS_KEY_ID` and `AWS_SECRET_ACCESS_KEY` environment -variables in CircleCI to reflect the new AWS account. - -Finally, note that, on a brand new account, many AWS regions are limited to just 5 EC2 Instances in an Auto Scaling Group, -but the automated tests in this repo create up to 10 EC2 Instances. Therefore, automated tests will fail if they run in -a region with too small a limit. To avoid this issue, request an increase in the number of t2-family EC2 Instances -allowed in every AWS region from AWS support. \ No newline at end of file diff --git a/tflint/test-fixtures/v0.12.0_module/.terraform/modules/consul/hashicorp-terraform-aws-consul-ee980b4/_ci/publish-amis.sh b/tflint/test-fixtures/v0.12.0_module/.terraform/modules/consul/hashicorp-terraform-aws-consul-ee980b4/_ci/publish-amis.sh deleted file mode 100755 index 92201c475..000000000 --- a/tflint/test-fixtures/v0.12.0_module/.terraform/modules/consul/hashicorp-terraform-aws-consul-ee980b4/_ci/publish-amis.sh +++ /dev/null @@ -1,54 +0,0 @@ -#!/bin/bash -# -# Build the example AMI, copy it to all AWS regions, and make all AMIs public. -# -# This script is meant to be run in a CircleCI job. -# - -set -e - -readonly PACKER_TEMPLATE_PATH="/home/ubuntu/$CIRCLE_PROJECT_REPONAME/examples/consul-ami/consul.json" -readonly PACKER_TEMPLATE_DEFAULT_REGION="us-east-1" -readonly AMI_PROPERTIES_FILE="/tmp/ami.properties" -readonly AMI_LIST_MARKDOWN_DIR="/home/ubuntu/$CIRCLE_PROJECT_REPONAME/_docs" -readonly GIT_COMMIT_MESSAGE="Add latest AMI IDs." -readonly GIT_USER_NAME="gruntwork-ci" -readonly GIT_USER_EMAIL="ci@gruntwork.io" - -# In CircleCI, every build populates the branch name in CIRCLE_BRANCH except builds triggered by a new tag, for which -# the CIRCLE_BRANCH env var is empty. We assume tags are only issued against the master branch. -readonly BRANCH_NAME="${CIRCLE_BRANCH:-master}" - -readonly PACKER_BUILD_NAME="$1" - -if [[ -z "$PACKER_BUILD_NAME" ]]; then - echo "ERROR: You must pass in the Packer build name as the first argument to this function." - exit 1 -fi - -# Build the example AMI. WARNING! In a production setting, you should build your own AMI to ensure it has exactly the -# configuration you want. We build this example AMI solely to make initial use of this Module as easy as possible. -build-packer-artifact \ - --packer-template-path "$PACKER_TEMPLATE_PATH" \ - --build-name "$PACKER_BUILD_NAME" \ - --output-properties-file "$AMI_PROPERTIES_FILE" - -# Copy the AMI to all regions and make it public in each -source "$AMI_PROPERTIES_FILE" -publish-ami \ - --all-regions \ - --source-ami-id "$ARTIFACT_ID" \ - --source-ami-region "$PACKER_TEMPLATE_DEFAULT_REGION" \ - --output-markdown > "$AMI_LIST_MARKDOWN_DIR/$PACKER_BUILD_NAME-list.md" \ - --markdown-title-text "$PACKER_BUILD_NAME: Latest Public AMIs" \ - --markdown-description-text "**WARNING! Do NOT use these AMIs in a production setting.** They are meant only to make - initial experiments with this module more convenient." - -# Git add, commit, and push the newly created AMI IDs as a markdown doc to the repo -git-add-commit-push \ - --path "$AMI_LIST_MARKDOWN_DIR/$PACKER_BUILD_NAME-list.md" \ - --message "$GIT_COMMIT_MESSAGE" \ - --user-name "$GIT_USER_NAME" \ - --user-email "$GIT_USER_EMAIL" \ - --git-push-behavior "current" \ - --branch-name "$BRANCH_NAME" diff --git a/tflint/test-fixtures/v0.12.0_module/.terraform/modules/consul/hashicorp-terraform-aws-consul-ee980b4/_docs/amazon-linux-ami-list.md b/tflint/test-fixtures/v0.12.0_module/.terraform/modules/consul/hashicorp-terraform-aws-consul-ee980b4/_docs/amazon-linux-ami-list.md deleted file mode 100644 index 57bb10521..000000000 --- a/tflint/test-fixtures/v0.12.0_module/.terraform/modules/consul/hashicorp-terraform-aws-consul-ee980b4/_docs/amazon-linux-ami-list.md +++ /dev/null @@ -1,21 +0,0 @@ -# amazon-linux-ami: Latest Public AMIs - -**WARNING! Do NOT use these AMIs in a production setting.** They are meant only to make - initial experiments with this module more convenient. - -| AWS Region | AMI ID | -| ---------- | ------ | -| ap-south-1 | ami-57246238 | -| eu-west-2 | ami-ae3724ca | -| eu-west-1 | ami-e10fcd98 | -| ap-northeast-2 | ami-b934efd7 | -| ap-northeast-1 | ami-c877baae | -| sa-east-1 | ami-67037e0b | -| ca-central-1 | ami-b7bd04d3 | -| ap-southeast-1 | ami-9c0d79ff | -| ap-southeast-2 | ami-b1789fd3 | -| eu-central-1 | ami-73a1171c | -| us-east-1 | ami-addc3cd7 | -| us-east-2 | ami-c9fcdeac | -| us-west-1 | ami-950b3df5 | -| us-west-2 | ami-c2a153ba | diff --git a/tflint/test-fixtures/v0.12.0_module/.terraform/modules/consul/hashicorp-terraform-aws-consul-ee980b4/_docs/architecture.png b/tflint/test-fixtures/v0.12.0_module/.terraform/modules/consul/hashicorp-terraform-aws-consul-ee980b4/_docs/architecture.png deleted file mode 100644 index 539fece6e8a9fd7a56245e2b63e6640a1e0591ef..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 436584 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 Z-32GYMF#}|T?GCpUQjuoaqgP${{v1!y$1jQ diff --git a/tflint/test-fixtures/v0.12.0_module/.terraform/modules/consul/hashicorp-terraform-aws-consul-ee980b4/_docs/consul-ui-screenshot.png b/tflint/test-fixtures/v0.12.0_module/.terraform/modules/consul/hashicorp-terraform-aws-consul-ee980b4/_docs/consul-ui-screenshot.png deleted file mode 100644 index 622c7e70d3ab805b1bb8e27e474ff8243d4bc994..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 100083 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

;=b}rtm}BN3WEqAmXZW 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 https://github.com/hashicorp/terraform-aws-consul.git /tmp/terraform-aws-consul", - "/tmp/terraform-aws-consul/modules/install-consul/install-consul --version {{user `consul_version`}}", - "/tmp/terraform-aws-consul/modules/install-dnsmasq/install-dnsmasq" - ], - "pause_before": "30s" - }] -} -``` - -You should replace `` in the code above with the version of this module that you want to use (see -the [Releases Page](../../releases) for all available versions). That's because for production usage, you should always -use a fixed, known version of this Module, downloaded from the official Git repo. On the other hand, when you're -just experimenting with the Module, it's OK to use a local checkout of the Module, uploaded from your own -computer. \ No newline at end of file diff --git a/tflint/test-fixtures/v0.12.0_module/.terraform/modules/consul/hashicorp-terraform-aws-consul-ee980b4/examples/consul-ami/consul.json b/tflint/test-fixtures/v0.12.0_module/.terraform/modules/consul/hashicorp-terraform-aws-consul-ee980b4/examples/consul-ami/consul.json deleted file mode 100644 index 52e022ad7..000000000 --- a/tflint/test-fixtures/v0.12.0_module/.terraform/modules/consul/hashicorp-terraform-aws-consul-ee980b4/examples/consul-ami/consul.json +++ /dev/null @@ -1,58 +0,0 @@ -{ - "min_packer_version": "0.12.0", - "variables": { - "aws_region": "us-east-1", - "consul_version": "0.9.3" - }, - "builders": [{ - "name": "ubuntu16-ami", - "ami_name": "consul-ubuntu-{{isotime | clean_ami_name}}", - "ami_description": "An Ubuntu 16.04 AMI that has Consul installed.", - "instance_type": "t2.micro", - "region": "{{user `aws_region`}}", - "type": "amazon-ebs", - "source_ami_filter": { - "filters": { - "virtualization-type": "hvm", - "architecture": "x86_64", - "name": "*ubuntu-xenial-16.04-amd64-server-*", - "block-device-mapping.volume-type": "gp2", - "root-device-type": "ebs" - }, - "owners": ["099720109477"], - "most_recent": true - }, - "ssh_username": "ubuntu" - },{ - "name": "amazon-linux-ami", - "ami_name": "consul-amazon-linux-{{isotime | clean_ami_name}}", - "ami_description": "An Amazon Linux AMI that has Consul installed.", - "instance_type": "t2.micro", - "region": "{{user `aws_region`}}", - "type": "amazon-ebs", - "source_ami_filter": { - "filters": { - "virtualization-type": "hvm", - "architecture": "x86_64", - "name": "*amzn-ami-hvm-*", - "block-device-mapping.volume-type": "gp2", - "root-device-type": "ebs" - }, - "owners": ["amazon"], - "most_recent": true - }, - "ssh_username": "ec2-user" - }], - "provisioners": [{ - "type": "file", - "source": "{{template_dir}}/../../../terraform-aws-consul", - "destination": "/tmp" - },{ - "type": "shell", - "inline": [ - "/tmp/terraform-aws-consul/modules/install-consul/install-consul --version {{user `consul_version`}}", - "/tmp/terraform-aws-consul/modules/install-dnsmasq/install-dnsmasq" - ], - "pause_before": "30s" - }] -} diff --git a/tflint/test-fixtures/v0.12.0_module/.terraform/modules/consul/hashicorp-terraform-aws-consul-ee980b4/examples/consul-examples-helper/README.md b/tflint/test-fixtures/v0.12.0_module/.terraform/modules/consul/hashicorp-terraform-aws-consul-ee980b4/examples/consul-examples-helper/README.md deleted file mode 100644 index 4344e1641..000000000 --- a/tflint/test-fixtures/v0.12.0_module/.terraform/modules/consul/hashicorp-terraform-aws-consul-ee980b4/examples/consul-examples-helper/README.md +++ /dev/null @@ -1,11 +0,0 @@ -# Consul Examples Helper - -This folder contains a helper script called `consul-examples-helper.sh` for working with the -[consul-cluster example](https://github.com/hashicorp/terraform-aws-consul/tree/master/MAIN.md). After running `terraform apply` on the example, if you run -`consul-examples-helper.sh`, it will automatically: - -1. Wait for the Consul server cluster to come up. -1. Print out the IP addresses of the Consul servers. -1. Print out some example commands you can run against your Consul servers. - - diff --git a/tflint/test-fixtures/v0.12.0_module/.terraform/modules/consul/hashicorp-terraform-aws-consul-ee980b4/examples/consul-examples-helper/consul-examples-helper.sh b/tflint/test-fixtures/v0.12.0_module/.terraform/modules/consul/hashicorp-terraform-aws-consul-ee980b4/examples/consul-examples-helper/consul-examples-helper.sh deleted file mode 100755 index ed12ea638..000000000 --- a/tflint/test-fixtures/v0.12.0_module/.terraform/modules/consul/hashicorp-terraform-aws-consul-ee980b4/examples/consul-examples-helper/consul-examples-helper.sh +++ /dev/null @@ -1,185 +0,0 @@ -#!/bin/bash -# A script that is meant to be used with the Consul cluster examples to: -# -# 1. Wait for the Consul server cluster to come up. -# 2. Print out the IP addresses of the Consul servers. -# 3. Print out some example commands you can run against your Consul servers. - -set -e - -readonly SCRIPT_NAME="$(basename "$0")" - -readonly MAX_RETRIES=30 -readonly SLEEP_BETWEEN_RETRIES_SEC=10 - -function log { - local readonly level="$1" - local readonly message="$2" - local readonly timestamp=$(date +"%Y-%m-%d %H:%M:%S") - >&2 echo -e "${timestamp} [${level}] [$SCRIPT_NAME] ${message}" -} - -function log_info { - local readonly message="$1" - log "INFO" "$message" -} - -function log_warn { - local readonly message="$1" - log "WARN" "$message" -} - -function log_error { - local readonly message="$1" - log "ERROR" "$message" -} - -function assert_is_installed { - local readonly name="$1" - - if [[ ! $(command -v ${name}) ]]; then - log_error "The binary '$name' is required by this script but is not installed or in the system's PATH." - exit 1 - fi -} - -function get_required_terraform_output { - local readonly output_name="$1" - local output_value - - output_value=$(terraform output -no-color "$output_name") - - if [[ -z "$output_value" ]]; then - log_error "Unable to find a value for Terraform output $output_name" - exit 1 - fi - - echo "$output_value" -} - -# -# Usage: join SEPARATOR ARRAY -# -# Joins the elements of ARRAY with the SEPARATOR character between them. -# -# Examples: -# -# join ", " ("A" "B" "C") -# Returns: "A, B, C" -# -function join { - local readonly separator="$1" - shift - local readonly values=("$@") - - printf "%s$separator" "${values[@]}" | sed "s/$separator$//" -} - -function get_all_consul_server_ips { - local expected_num_servers - expected_num_servers=$(get_required_terraform_output "num_servers") - - log_info "Looking up public IP addresses for $expected_num_servers Consul server EC2 Instances." - - local ips - local i - - for (( i=1; i<="$MAX_RETRIES"; i++ )); do - ips=($(get_consul_cluster_ips)) - if [[ "${#ips[@]}" -eq "$expected_num_servers" ]]; then - log_info "Found all $expected_num_servers public IP addresses!" - echo "${ips[@]}" - return - else - log_warn "Found ${#ips[@]} of $expected_num_servers public IP addresses. Will sleep for $SLEEP_BETWEEN_RETRIES_SEC seconds and try again." - sleep "$SLEEP_BETWEEN_RETRIES_SEC" - fi - done - - log_error "Failed to find the IP addresses for $expected_num_servers Consul server EC2 Instances after $MAX_RETRIES retries." - exit 1 -} - -function wait_for_all_consul_servers_to_register { - local readonly server_ips=($@) - local readonly server_ip="${server_ips[0]}" - - local expected_num_servers - expected_num_servers=$(get_required_terraform_output "num_servers") - - log_info "Waiting for $expected_num_servers Consul servers to register in the cluster" - - for (( i=1; i<="$MAX_RETRIES"; i++ )); do - log_info "Running 'consul members' command against server at IP address $server_ip" - # Intentionally use local and readonly here so that this script doesn't exit if the consul members or grep commands - # exit with an error. - local readonly members=$(consul members -http-addr="$server_ip:8500") - local readonly server_members=$(echo "$members" | grep "server") - local readonly num_servers=$(echo "$server_members" | wc -l | tr -d ' ') - - if [[ "$num_servers" -eq "$expected_num_servers" ]]; then - log_info "All $expected_num_servers Consul servers have registered in the cluster!" - return - else - log_info "$num_servers out of $expected_num_servers Consul servers have registered in the cluster." - log_info "Sleeping for $SLEEP_BETWEEN_RETRIES_SEC seconds and will check again." - sleep "$SLEEP_BETWEEN_RETRIES_SEC" - fi - done - - log_error "Did not find $expected_num_servers Consul servers registered after $MAX_RETRIES retries." - exit 1 -} - -function get_consul_cluster_ips { - local aws_region - local cluster_tag_key - local cluster_tag_value - local instances - - aws_region=$(get_required_terraform_output "aws_region") - cluster_tag_key=$(get_required_terraform_output "consul_servers_cluster_tag_key") - cluster_tag_value=$(get_required_terraform_output "consul_servers_cluster_tag_value") - - log_info "Fetching public IP addresses for EC2 Instances in $aws_region with tag $cluster_tag_key=$cluster_tag_value" - - instances=$(aws ec2 describe-instances \ - --region "$aws_region" \ - --filter "Name=tag:$cluster_tag_key,Values=$cluster_tag_value" "Name=instance-state-name,Values=running") - - echo "$instances" | jq -r '.Reservations[].Instances[].PublicIpAddress' -} - -function print_instructions { - local readonly server_ips=($@) - local readonly server_ip="${server_ips[0]}" - - local instructions=() - instructions+=("\nYour Consul servers are running at the following IP addresses:\n\n${server_ips[@]/#/ }\n") - instructions+=("Some commands for you to try:\n") - instructions+=(" consul members -http-addr=$server_ip:8500") - instructions+=(" consul kv put -http-addr=$server_ip:8500 foo bar") - instructions+=(" consul kv get -http-addr=$server_ip:8500 foo") - instructions+=("\nTo see the Consul UI, open the following URL in your web browser:\n") - instructions+=(" http://$server_ip:8500/ui/\n") - - local instructions_str - instructions_str=$(join "\n" "${instructions[@]}") - - echo -e "$instructions_str" -} - -function run { - assert_is_installed "aws" - assert_is_installed "jq" - assert_is_installed "terraform" - assert_is_installed "consul" - - local server_ips - server_ips=$(get_all_consul_server_ips) - - wait_for_all_consul_servers_to_register "$server_ips" - print_instructions "$server_ips" -} - -run \ No newline at end of file diff --git a/tflint/test-fixtures/v0.12.0_module/.terraform/modules/consul/hashicorp-terraform-aws-consul-ee980b4/examples/root-example/README.md b/tflint/test-fixtures/v0.12.0_module/.terraform/modules/consul/hashicorp-terraform-aws-consul-ee980b4/examples/root-example/README.md deleted file mode 100644 index 258741fbe..000000000 --- a/tflint/test-fixtures/v0.12.0_module/.terraform/modules/consul/hashicorp-terraform-aws-consul-ee980b4/examples/root-example/README.md +++ /dev/null @@ -1,37 +0,0 @@ -# Consul Cluster Example - -This folder shows an example of Terraform code that uses the [consul-cluster](https://github.com/hashicorp/terraform-aws-consul/tree/master/modules/consul-cluster) module to deploy -a [Consul](https://www.consul.io/) cluster in [AWS](https://aws.amazon.com/). The cluster consists of two Auto Scaling -Groups (ASGs): one with a small number of Consul server nodes, which are responsible for being part of the [consensus -quorum](https://www.consul.io/docs/internals/consensus.html), and one with a larger number of client nodes, which -would typically run alongside your apps: - -![Consul architecture](https://github.com/hashicorp/terraform-aws-consul/blob/master/_docs/architecture.png?raw=true) - -You will need to create an [Amazon Machine Image (AMI)](http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/AMIs.html) -that has Consul installed, which you can do using the [consul-ami example](https://github.com/hashicorp/terraform-aws-consul/tree/master/examples/consul-ami)). Note that to keep -this example simple, both the server ASG and client ASG are running the exact same AMI. In real-world usage, you'd -probably have multiple client ASGs, and each of those ASGs would run a different AMI that has the Consul agent -installed alongside your apps. - -For more info on how the Consul cluster works, check out the [consul-cluster](https://github.com/hashicorp/terraform-aws-consul/tree/master/modules/consul-cluster) documentation. - - - -## Quick start - -To deploy a Consul Cluster: - -1. `git clone` this repo to your computer. -1. Build a Consul AMI. See the [consul-ami example](https://github.com/hashicorp/terraform-aws-consul/tree/master/examples/consul-ami) documentation for instructions. Make sure to - note down the ID of the AMI. -1. Install [Terraform](https://www.terraform.io/). -1. Open `vars.tf`, set the environment variables specified at the top of the file, and fill in any other variables that - don't have a default, including putting your AMI ID into the `ami_id` variable. -1. Run `terraform get`. -1. Run `terraform plan`. -1. If the plan looks good, run `terraform apply`. -1. Run the [consul-examples-helper.sh script](https://github.com/hashicorp/terraform-aws-consul/tree/master/examples/consul-examples-helper/consul-examples-helper.sh) to - print out the IP addresses of the Consul servers and some example commands you can run to interact with the cluster: - `../consul-examples-helper/consul-examples-helper.sh`. - diff --git a/tflint/test-fixtures/v0.12.0_module/.terraform/modules/consul/hashicorp-terraform-aws-consul-ee980b4/examples/root-example/user-data-client.sh b/tflint/test-fixtures/v0.12.0_module/.terraform/modules/consul/hashicorp-terraform-aws-consul-ee980b4/examples/root-example/user-data-client.sh deleted file mode 100644 index fd0158b02..000000000 --- a/tflint/test-fixtures/v0.12.0_module/.terraform/modules/consul/hashicorp-terraform-aws-consul-ee980b4/examples/root-example/user-data-client.sh +++ /dev/null @@ -1,15 +0,0 @@ -#!/bin/bash -# This script is meant to be run in the User Data of each EC2 Instance while it's booting. The script uses the -# run-consul script to configure and start Consul in client mode. Note that this script assumes it's running in an AMI -# built from the Packer template in examples/consul-ami/consul.json. - -set -e - -# Send the log output from this script to user-data.log, syslog, and the console -# From: https://alestic.com/2010/12/ec2-user-data-output/ -exec > >(tee /var/log/user-data.log|logger -t user-data -s 2>/dev/console) 2>&1 - -# These variables are passed in via Terraform template interplation -/opt/consul/bin/run-consul --client --cluster-tag-key "${cluster_tag_key}" --cluster-tag-value "${cluster_tag_value}" - -# You could add commands to boot your other apps here \ No newline at end of file diff --git a/tflint/test-fixtures/v0.12.0_module/.terraform/modules/consul/hashicorp-terraform-aws-consul-ee980b4/examples/root-example/user-data-server.sh b/tflint/test-fixtures/v0.12.0_module/.terraform/modules/consul/hashicorp-terraform-aws-consul-ee980b4/examples/root-example/user-data-server.sh deleted file mode 100755 index c78ebc055..000000000 --- a/tflint/test-fixtures/v0.12.0_module/.terraform/modules/consul/hashicorp-terraform-aws-consul-ee980b4/examples/root-example/user-data-server.sh +++ /dev/null @@ -1,13 +0,0 @@ -#!/bin/bash -# This script is meant to be run in the User Data of each EC2 Instance while it's booting. The script uses the -# run-consul script to configure and start Consul in server mode. Note that this script assumes it's running in an AMI -# built from the Packer template in examples/consul-ami/consul.json. - -set -e - -# Send the log output from this script to user-data.log, syslog, and the console -# From: https://alestic.com/2010/12/ec2-user-data-output/ -exec > >(tee /var/log/user-data.log|logger -t user-data -s 2>/dev/console) 2>&1 - -# These variables are passed in via Terraform template interplation -/opt/consul/bin/run-consul --server --cluster-tag-key "${cluster_tag_key}" --cluster-tag-value "${cluster_tag_value}" \ No newline at end of file diff --git a/tflint/test-fixtures/v0.12.0_module/.terraform/modules/consul/hashicorp-terraform-aws-consul-ee980b4/main.tf b/tflint/test-fixtures/v0.12.0_module/.terraform/modules/consul/hashicorp-terraform-aws-consul-ee980b4/main.tf deleted file mode 100644 index b09a3bc3b..000000000 --- a/tflint/test-fixtures/v0.12.0_module/.terraform/modules/consul/hashicorp-terraform-aws-consul-ee980b4/main.tf +++ /dev/null @@ -1,160 +0,0 @@ -# --------------------------------------------------------------------------------------------------------------------- -# DEPLOY A CONSUL CLUSTER IN AWS -# These templates show an example of how to use the consul-cluster module to deploy Consul in AWS. We deploy two Auto -# Scaling Groups (ASGs): one with a small number of Consul server nodes and one with a larger number of Consul client -# nodes. Note that these templates assume that the AMI you provide via the ami_id input variable is built from -# the examples/consul-ami/consul.json Packer template. -# --------------------------------------------------------------------------------------------------------------------- - -provider "aws" { - region = "${var.aws_region}" -} - -# Terraform 0.9.5 suffered from https://github.com/hashicorp/terraform/issues/14399, which causes this template the -# conditionals in this template to fail. -terraform { - required_version = ">= 0.9.3, != 0.9.5" -} - -# --------------------------------------------------------------------------------------------------------------------- -# AUTOMATICALLY LOOK UP THE LATEST PRE-BUILT AMI -# This repo contains a CircleCI job that automatically builds and publishes the latest AMI by building the Packer -# template at /examples/consul-ami upon every new release. The Terraform data source below automatically looks up the -# latest AMI so that a simple "terraform apply" will just work without the user needing to manually build an AMI and -# fill in the right value. -# -# !! WARNING !! These exmaple AMIs are meant only convenience when initially testing this repo. Do NOT use these example -# AMIs in a production setting because it is important that you consciously think through the configuration you want -# in your own production AMI. -# -# NOTE: This Terraform data source must return at least one AMI result or the entire template will fail. See -# /_ci/publish-amis-in-new-account.md for more information. -# --------------------------------------------------------------------------------------------------------------------- -data "aws_ami" "consul" { - most_recent = true - - # If we change the AWS Account in which test are run, update this value. - owners = ["562637147889"] - - filter { - name = "virtualization-type" - values = ["hvm"] - } - - filter { - name = "is-public" - values = ["true"] - } - - filter { - name = "name" - values = ["consul-ubuntu-*"] - } -} - -# --------------------------------------------------------------------------------------------------------------------- -# DEPLOY THE CONSUL SERVER NODES -# --------------------------------------------------------------------------------------------------------------------- - -module "consul_servers" { - # When using these modules in your own templates, you will need to use a Git URL with a ref attribute that pins you - # to a specific version of the modules, such as the following example: - # source = "git::git@github.com:hashicorp/terraform-aws-consul.git//modules/consul-cluster?ref=v0.0.1" - source = "./modules/consul-cluster" - - cluster_name = "${var.cluster_name}-server" - cluster_size = "${var.num_servers}" - instance_type = "t2.micro" - - # The EC2 Instances will use these tags to automatically discover each other and form a cluster - cluster_tag_key = "${var.cluster_tag_key}" - cluster_tag_value = "${var.cluster_name}" - - ami_id = "${var.ami_id == "" ? data.aws_ami.consul.image_id : var.ami_id}" - user_data = "${data.template_file.user_data_server.rendered}" - - vpc_id = "${data.aws_vpc.default.id}" - subnet_ids = "${data.aws_subnet_ids.default.ids}" - - # To make testing easier, we allow Consul and SSH requests from any IP address here but in a production - # deployment, we strongly recommend you limit this to the IP address ranges of known, trusted servers inside your VPC. - allowed_ssh_cidr_blocks = ["0.0.0.0/0"] - allowed_inbound_cidr_blocks = ["0.0.0.0/0"] - ssh_key_name = "${var.ssh_key_name}" -} - -# --------------------------------------------------------------------------------------------------------------------- -# THE USER DATA SCRIPT THAT WILL RUN ON EACH CONSUL SERVER EC2 INSTANCE WHEN IT'S BOOTING -# This script will configure and start Consul -# --------------------------------------------------------------------------------------------------------------------- - -data "template_file" "user_data_server" { - template = "${file("${path.module}/examples/root-example/user-data-server.sh")}" - - vars { - cluster_tag_key = "${var.cluster_tag_key}" - cluster_tag_value = "${var.cluster_name}" - } -} - -# --------------------------------------------------------------------------------------------------------------------- -# DEPLOY THE CONSUL CLIENT NODES -# Note that you do not have to use the consul-cluster module to deploy your clients. We do so simply because it -# provides a convenient way to deploy an Auto Scaling Group with the necessary IAM and security group permissions for -# Consul, but feel free to deploy those clients however you choose (e.g. a single EC2 Instance, a Docker cluster, etc). -# --------------------------------------------------------------------------------------------------------------------- - -module "consul_clients" { - # When using these modules in your own templates, you will need to use a Git URL with a ref attribute that pins you - # to a specific version of the modules, such as the following example: - # source = "git::git@github.com:hashicorp/terraform-aws-consul.git//modules/consul-cluster?ref=v0.0.1" - source = "./modules/consul-cluster" - - cluster_name = "${var.cluster_name}-client" - cluster_size = "${var.num_clients}" - instance_type = "t2.micro" - - cluster_tag_key = "consul-clients" - cluster_tag_value = "${var.cluster_name}" - - ami_id = "${var.ami_id == "" ? data.aws_ami.consul.image_id : var.ami_id}" - user_data = "${data.template_file.user_data_client.rendered}" - - vpc_id = "${data.aws_vpc.default.id}" - subnet_ids = "${data.aws_subnet_ids.default.ids}" - - # To make testing easier, we allow Consul and SSH requests from any IP address here but in a production - # deployment, we strongly recommend you limit this to the IP address ranges of known, trusted servers inside your VPC. - allowed_ssh_cidr_blocks = ["0.0.0.0/0"] - allowed_inbound_cidr_blocks = ["0.0.0.0/0"] - ssh_key_name = "${var.ssh_key_name}" -} - -# --------------------------------------------------------------------------------------------------------------------- -# THE USER DATA SCRIPT THAT WILL RUN ON EACH CONSUL CLIENT EC2 INSTANCE WHEN IT'S BOOTING -# This script will configure and start Consul -# --------------------------------------------------------------------------------------------------------------------- - -data "template_file" "user_data_client" { - template = "${file("${path.module}/examples/root-example/user-data-client.sh")}" - - vars { - cluster_tag_key = "${var.cluster_tag_key}" - cluster_tag_value = "${var.cluster_name}" - } -} - -# --------------------------------------------------------------------------------------------------------------------- -# DEPLOY CONSUL IN THE DEFAULT VPC AND SUBNETS -# Using the default VPC and subnets makes this example easy to run and test, but it means Consul is accessible from the -# public Internet. For a production deployment, we strongly recommend deploying into a custom VPC with private subnets. -# --------------------------------------------------------------------------------------------------------------------- - -data "aws_vpc" "default" { - default = "${var.vpc_id == "" ? true : false}" - id = "${var.vpc_id}" -} - -data "aws_subnet_ids" "default" { - vpc_id = "${data.aws_vpc.default.id}" -} \ No newline at end of file diff --git a/tflint/test-fixtures/v0.12.0_module/.terraform/modules/consul/hashicorp-terraform-aws-consul-ee980b4/modules/consul-cluster/README.md b/tflint/test-fixtures/v0.12.0_module/.terraform/modules/consul/hashicorp-terraform-aws-consul-ee980b4/modules/consul-cluster/README.md deleted file mode 100644 index b498c1fcd..000000000 --- a/tflint/test-fixtures/v0.12.0_module/.terraform/modules/consul/hashicorp-terraform-aws-consul-ee980b4/modules/consul-cluster/README.md +++ /dev/null @@ -1,348 +0,0 @@ -# Consul Cluster - -This folder contains a [Terraform](https://www.terraform.io/) module to deploy a -[Consul](https://www.consul.io/) cluster in [AWS](https://aws.amazon.com/) on top of an Auto Scaling Group. This module -is designed to deploy an [Amazon Machine Image (AMI)](http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/AMIs.html) -that has Consul installed via the [install-consul](https://github.com/hashicorp/terraform-aws-consul/tree/master/modules/install-consul) module in this Module. - - - -## How do you use this module? - -This folder defines a [Terraform module](https://www.terraform.io/docs/modules/usage.html), which you can use in your -code by adding a `module` configuration and setting its `source` parameter to URL of this folder: - -```hcl -module "consul_cluster" { - # TODO: update this to the final URL - # Use version v0.0.1 of the consul-cluster module - source = "github.com/hashicorp/terraform-aws-consul//modules/consul-cluster?ref=v0.0.1" - - # Specify the ID of the Consul AMI. You should build this using the scripts in the install-consul module. - ami_id = "ami-abcd1234" - - # Add this tag to each node in the cluster - cluster_tag_key = "consul-cluster" - cluster_tag_value = "consul-cluster-example" - - # Configure and start Consul during boot. It will automatically form a cluster with all nodes that have that same tag. - user_data = <<-EOF - #!/bin/bash - /opt/consul/bin/run-consul --server --cluster-tag-key consul-cluster - EOF - - # ... See vars.tf for the other parameters you must define for the consul-cluster module -} -``` - -Note the following parameters: - -* `source`: Use this parameter to specify the URL of the consul-cluster module. The double slash (`//`) is intentional - and required. Terraform uses it to specify subfolders within a Git repo (see [module - sources](https://www.terraform.io/docs/modules/sources.html)). The `ref` parameter specifies a specific Git tag in - this repo. That way, instead of using the latest version of this module from the `master` branch, which - will change every time you run Terraform, you're using a fixed version of the repo. - -* `ami_id`: Use this parameter to specify the ID of a Consul [Amazon Machine Image - (AMI)](http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/AMIs.html) to deploy on each server in the cluster. You - should install Consul in this AMI using the scripts in the [install-consul](https://github.com/hashicorp/terraform-aws-consul/tree/master/modules/install-consul) module. - -* `user_data`: Use this parameter to specify a [User - Data](http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/user-data.html#user-data-shell-scripts) script that each - server will run during boot. This is where you can use the [run-consul script](https://github.com/hashicorp/terraform-aws-consul/tree/master/modules/run-consul) to configure and - run Consul. The `run-consul` script is one of the scripts installed by the [install-consul](https://github.com/hashicorp/terraform-aws-consul/tree/master/modules/install-consul) - module. - -You can find the other parameters in [vars.tf](vars.tf). - -Check out the [consul-cluster example](https://github.com/hashicorp/terraform-aws-consul/tree/master/MAIN.md) for fully-working sample code. - - - - -## How do you connect to the Consul cluster? - -### Using the HTTP API from your own computer - -If you want to connect to the cluster from your own computer, the easiest way is to use the [HTTP -API](https://www.consul.io/docs/agent/http.html). Note that this only works if the Consul cluster is running in public -subnets and/or your default VPC (as in the [consul-cluster example](https://github.com/hashicorp/terraform-aws-consul/tree/master/MAIN.md)), which is OK for testing -and experimentation, but NOT recommended for production usage. - -To use the HTTP API, you first need to get the public IP address of one of the Consul Servers. You can find Consul -servers by using AWS tags. If you're running the [consul-cluster example](https://github.com/hashicorp/terraform-aws-consul/tree/master/MAIN.md), the -[consul-examples-helper.sh script](https://github.com/hashicorp/terraform-aws-consul/tree/master/examples/consul-examples-helper/consul-examples-helper.sh) will do the tag lookup -for you automatically (note, you must have the [AWS CLI](https://aws.amazon.com/cli/), -[jq](https://stedolan.github.io/jq/), and the [Consul agent](https://www.consul.io/) installed locally): - -``` -> ../consul-examples-helper/consul-examples-helper.sh - -Your Consul servers are running at the following IP addresses: - -34.200.218.123 -34.205.127.138 -34.201.165.11 -``` - -You can use one of these IP addresses with the `members` command to see a list of cluster nodes: - -``` -> consul members -http-addr=11.22.33.44:8500 - -Node Address Status Type Build Protocol DC -i-0051c3ea00e9691a0 172.31.35.148:8301 alive client 0.8.0 2 us-east-1 -i-00aea529cce1761d4 172.31.47.236:8301 alive client 0.8.0 2 us-east-1 -i-01bc94ccfa032d82d 172.31.27.193:8301 alive client 0.8.0 2 us-east-1 -i-04271e97808f15d63 172.31.25.174:8301 alive server 0.8.0 2 us-east-1 -i-0483b07abe49ea7ff 172.31.5.42:8301 alive client 0.8.0 2 us-east-1 -i-098fb1ebd5ca443bf 172.31.55.203:8301 alive client 0.8.0 2 us-east-1 -i-0eb961b6825f7871c 172.31.65.9:8301 alive client 0.8.0 2 us-east-1 -i-0ee6dcf715adbff5f 172.31.67.235:8301 alive server 0.8.0 2 us-east-1 -i-0fd0e63682a94b245 172.31.54.84:8301 alive server 0.8.0 2 us-east-1 -``` - -You can also try inserting a value: - -``` -> consul kv put -http-addr=11.22.33.44:8500 foo bar - -Success! Data written to: foo -``` - -And reading that value back: - -``` -> consul kv get -http-addr=11.22.33.44:8500 foo - -bar -``` - -Finally, you can try opening up the Consul UI in your browser at the URL `http://11.22.33.44:8500/ui/`. - -![Consul UI](https://github.com/hashicorp/terraform-aws-consul/blob/master/_docs/consul-ui-screenshot.png?raw=true) - - -### Using the Consul agent on another EC2 Instance - -The easiest way to run [Consul agent](https://www.consul.io/docs/agent/basics.html) and have it connect to the Consul -cluster is to use the same EC2 tags the Consul servers use to discover each other during bootstrapping. - -For example, imagine you deployed a Consul cluster in `us-east-1` as follows: - - - -```hcl -module "consul_cluster" { - source = "github.com/hashicorp/terraform-aws-consul//modules/consul-cluster?ref=v0.0.1" - - # Add this tag to each node in the cluster - cluster_tag_key = "consul-cluster" - cluster_tag_value = "consul-cluster-example" - - # ... Other params omitted ... -} -``` - -Using the `retry-join-ec2-xxx` params, you can connect run a Consul agent on an EC2 Instance as follows: - -``` -consul agent -retry-join-ec2-tag-key=consul-cluster -retry-join-ec2-tag-value=consul-cluster-example -data-dir=/tmp/consul -``` - -Two important notes about this command: - -1. By default, the Consul cluster nodes advertise their *private* IP addresses, so the command above only works from - EC2 Instances inside the same VPC (or any VPC with proper peering connections and route table entries). -1. In order to look up the EC2 tags, the EC2 Instance where you're running this command must have an IAM role with - the `ec2:DescribeInstances` permission. - - - - -## What's included in this module? - -This module creates the following architecture: - -![Consul architecture](https://github.com/hashicorp/terraform-aws-consul/blob/master/_docs/architecture.png?raw=true) - -This architecture consists of the following resources: - -* [Auto Scaling Group](#auto-scaling-group) -* [EC2 Instance Tags](#ec2-instance-tags) -* [Security Group](#security-group) -* [IAM Role and Permissions](#iam-role-and-permissions) - - -### Auto Scaling Group - -This module runs Consul on top of an [Auto Scaling Group (ASG)](https://aws.amazon.com/autoscaling/). Typically, you -should run the ASG with 3 or 5 EC2 Instances spread across multiple [Availability -Zones](http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/using-regions-availability-zones.html). Each of the EC2 -Instances should be running an AMI that has Consul installed via the [install-consul](https://github.com/hashicorp/terraform-aws-consul/tree/master/modules/install-consul) -module. You pass in the ID of the AMI to run using the `ami_id` input parameter. - - -### EC2 Instance Tags - -This module allows you to specify a tag to add to each EC2 instance in the ASG. We recommend using this tag with the -[retry_join_ec2](https://www.consul.io/docs/agent/options.html?#retry_join_ec2) configuration to allow the EC2 -Instances to find each other and automatically form a cluster. - - -### Security Group - -Each EC2 Instance in the ASG has a Security Group that allows: - -* All outbound requests -* All the inbound ports specified in the [Consul documentation](https://www.consul.io/docs/agent/options.html?#ports-used) - -The Security Group ID is exported as an output variable if you need to add additional rules. - -Check out the [Security section](#security) for more details. - - -### IAM Role and Permissions - -Each EC2 Instance in the ASG has an [IAM Role](http://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles.html) attached. -We give this IAM role a small set of IAM permissions that each EC2 Instance can use to automatically discover the other -Instances in its ASG and form a cluster with them. See the [run-consul required permissions -docs](https://github.com/hashicorp/terraform-aws-consul/tree/master/modules/run-consul#required-permissions) for details. - -The IAM Role ARN is exported as an output variable if you need to add additional permissions. - - - -## How do you roll out updates? - -If you want to deploy a new version of Consul across the cluster, the best way to do that is to: - -1. Build a new AMI. -1. Set the `ami_id` parameter to the ID of the new AMI. -1. Run `terraform apply`. - -This updates the Launch Configuration of the ASG, so any new Instances in the ASG will have your new AMI, but it does -NOT actually deploy those new instances. To make that happen, you should do the following: - -1. Issue an API call to one of the old Instances in the ASG to have it leave gracefully. E.g.: - - ``` - curl -X PUT :8500/v1/agent/leave - ``` - -1. Once the instance has left the cluster, terminate it: - - ``` - aws ec2 terminate-instances --instance-ids - ``` - -1. After a minute or two, the ASG should automatically launch a new Instance, with the new AMI, to replace the old one. - -1. Wait for the new Instance to boot and join the cluster. - -1. Repeat these steps for each of the other old Instances in the ASG. - -We will add a script in the future to automate this process (PRs are welcome!). - - - - -## What happens if a node crashes? - -There are two ways a Consul node may go down: - -1. The Consul process may crash. In that case, `supervisor` should restart it automatically. -1. The EC2 Instance running Consul dies. In that case, the Auto Scaling Group should launch a replacement automatically. - Note that in this case, since the Consul agent did not exit gracefully, and the replacement will have a different ID, - you may have to manually clean out the old nodes using the [force-leave - command](https://www.consul.io/docs/commands/force-leave.html). We may add a script to do this - automatically in the future. For more info, see the [Consul Outage - documentation](https://www.consul.io/docs/guides/outage.html). - - - - -## Security - -Here are some of the main security considerations to keep in mind when using this module: - -1. [Encryption in transit](#encryption-in-transit) -1. [Encryption at rest](#encryption-at-rest) -1. [Dedicated instances](#dedicated-instances) -1. [Security groups](#security-groups) -1. [SSH access](#ssh-access) - - -### Encryption in transit - -Consul can encrypt all of its network traffic. For instructions on enabling network encryption, have a look at the -[How do you handle encryption documentation](https://github.com/hashicorp/terraform-aws-consul/tree/master/modules/run-consul#how-do-you-handle-encryption). - - -### Encryption at rest - -The EC2 Instances in the cluster store all their data on the root EBS Volume. To enable encryption for the data at -rest, you must enable encryption in your Consul AMI. If you're creating the AMI using Packer (e.g. as shown in -the [consul-ami example](https://github.com/hashicorp/terraform-aws-consul/tree/master/examples/consul-ami)), you need to set the [encrypt_boot -parameter](https://www.packer.io/docs/builders/amazon-ebs.html#encrypt_boot) to `true`. - - -### Dedicated instances - -If you wish to use dedicated instances, you can set the `tenancy` parameter to `"dedicated"` in this module. - - -### Security groups - -This module attaches a security group to each EC2 Instance that allows inbound requests as follows: - -* **Consul**: For all the [ports used by Consul](https://www.consul.io/docs/agent/options.html#ports), you can - use the `allowed_inbound_cidr_blocks` parameter to control the list of - [CIDR blocks](https://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing) that will be allowed access and the `allowed_inbound_security_group_ids` parameter to control the security groups that will be allowed access. - -* **SSH**: For the SSH port (default: 22), you can use the `allowed_ssh_cidr_blocks` parameter to control the list of - [CIDR blocks](https://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing) that will be allowed access. You can use the `allowed_inbound_ssh_security_group_ids` parameter to control the list of source Security Groups that will be allowed access. - -Note that all the ports mentioned above are configurable via the `xxx_port` variables (e.g. `server_rpc_port`). See -[vars.tf](vars.tf) for the full list. - - - -### SSH access - -You can associate an [EC2 Key Pair](http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-key-pairs.html) with each -of the EC2 Instances in this cluster by specifying the Key Pair's name in the `ssh_key_name` variable. If you don't -want to associate a Key Pair with these servers, set `ssh_key_name` to an empty string. - - - - - -## What's NOT included in this module? - -This module does NOT handle the following items, which you may want to provide on your own: - -* [Monitoring, alerting, log aggregation](#monitoring-alerting-log-aggregation) -* [VPCs, subnets, route tables](#vpcs-subnets-route-tables) -* [DNS entries](#dns-entries) - - -### Monitoring, alerting, log aggregation - -This module does not include anything for monitoring, alerting, or log aggregation. All ASGs and EC2 Instances come -with limited [CloudWatch](https://aws.amazon.com/cloudwatch/) metrics built-in, but beyond that, you will have to -provide your own solutions. - - -### VPCs, subnets, route tables - -This module assumes you've already created your network topology (VPC, subnets, route tables, etc). You will need to -pass in the the relevant info about your network topology (e.g. `vpc_id`, `subnet_ids`) as input variables to this -module. - - -### DNS entries - -This module does not create any DNS entries for Consul (e.g. in Route 53). - - diff --git a/tflint/test-fixtures/v0.12.0_module/.terraform/modules/consul/hashicorp-terraform-aws-consul-ee980b4/modules/consul-cluster/main.tf b/tflint/test-fixtures/v0.12.0_module/.terraform/modules/consul/hashicorp-terraform-aws-consul-ee980b4/modules/consul-cluster/main.tf deleted file mode 100644 index bb3c8041a..000000000 --- a/tflint/test-fixtures/v0.12.0_module/.terraform/modules/consul/hashicorp-terraform-aws-consul-ee980b4/modules/consul-cluster/main.tf +++ /dev/null @@ -1,201 +0,0 @@ -# --------------------------------------------------------------------------------------------------------------------- -# THESE TEMPLATES REQUIRE TERRAFORM VERSION 0.8 AND ABOVE -# --------------------------------------------------------------------------------------------------------------------- - -terraform { - required_version = ">= 0.9.3" -} - -# --------------------------------------------------------------------------------------------------------------------- -# CREATE AN AUTO SCALING GROUP (ASG) TO RUN CONSUL -# --------------------------------------------------------------------------------------------------------------------- - -resource "aws_autoscaling_group" "autoscaling_group" { - launch_configuration = "${aws_launch_configuration.launch_configuration.name}" - - availability_zones = ["${var.availability_zones}"] - vpc_zone_identifier = ["${var.subnet_ids}"] - - # Run a fixed number of instances in the ASG - min_size = "${var.cluster_size}" - max_size = "${var.cluster_size}" - desired_capacity = "${var.cluster_size}" - termination_policies = ["${var.termination_policies}"] - - target_group_arns = ["${var.target_group_arns}"] - load_balancers = ["${var.load_balancers}"] - health_check_type = "${var.health_check_type}" - health_check_grace_period = "${var.health_check_grace_period}" - wait_for_capacity_timeout = "${var.wait_for_capacity_timeout}" - - tag { - key = "Name" - value = "${var.cluster_name}" - propagate_at_launch = true - } - - tag { - key = "${var.cluster_tag_key}" - value = "${var.cluster_tag_value}" - propagate_at_launch = true - } -} - -# --------------------------------------------------------------------------------------------------------------------- -# CREATE LAUCNH CONFIGURATION TO DEFINE WHAT RUNS ON EACH INSTANCE IN THE ASG -# --------------------------------------------------------------------------------------------------------------------- - -resource "aws_launch_configuration" "launch_configuration" { - name_prefix = "${var.cluster_name}-" - image_id = "${var.ami_id}" - instance_type = "${var.instance_type}" - user_data = "${var.user_data}" - - iam_instance_profile = "${aws_iam_instance_profile.instance_profile.name}" - key_name = "${var.ssh_key_name}" - security_groups = ["${aws_security_group.lc_security_group.id}"] - placement_tenancy = "${var.tenancy}" - associate_public_ip_address = "${var.associate_public_ip_address}" - - ebs_optimized = "${var.root_volume_ebs_optimized}" - - root_block_device { - volume_type = "${var.root_volume_type}" - volume_size = "${var.root_volume_size}" - delete_on_termination = "${var.root_volume_delete_on_termination}" - } - - # Important note: whenever using a launch configuration with an auto scaling group, you must set - # create_before_destroy = true. However, as soon as you set create_before_destroy = true in one resource, you must - # also set it in every resource that it depends on, or you'll get an error about cyclic dependencies (especially when - # removing resources). For more info, see: - # - # https://www.terraform.io/docs/providers/aws/r/launch_configuration.html - # https://terraform.io/docs/configuration/resources.html - lifecycle { - create_before_destroy = true - } -} - -# --------------------------------------------------------------------------------------------------------------------- -# CREATE A SECURITY GROUP TO CONTROL WHAT REQUESTS CAN GO IN AND OUT OF EACH EC2 INSTANCE -# --------------------------------------------------------------------------------------------------------------------- - -resource "aws_security_group" "lc_security_group" { - name_prefix = "${var.cluster_name}" - description = "Security group for the ${var.cluster_name} launch configuration" - vpc_id = "${var.vpc_id}" - - # aws_launch_configuration.launch_configuration in this module sets create_before_destroy to true, which means - # everything it depends on, including this resource, must set it as well, or you'll get cyclic dependency errors - # when you try to do a terraform destroy. - lifecycle { - create_before_destroy = true - } -} - -resource "aws_security_group_rule" "allow_ssh_inbound" { - count = "${length(var.allowed_ssh_cidr_blocks) >= 1 ? 1 : 0}" - type = "ingress" - from_port = "${var.ssh_port}" - to_port = "${var.ssh_port}" - protocol = "tcp" - cidr_blocks = ["${var.allowed_ssh_cidr_blocks}"] - - security_group_id = "${aws_security_group.lc_security_group.id}" -} - -resource "aws_security_group_rule" "allow_ssh_inbound_from_security_group_ids" { - count = "${length(var.allowed_ssh_security_group_ids)}" - type = "ingress" - from_port = "${var.ssh_port}" - to_port = "${var.ssh_port}" - protocol = "tcp" - source_security_group_id = "${element(var.allowed_ssh_security_group_ids, count.index)}" - - security_group_id = "${aws_security_group.lc_security_group.id}" -} - -resource "aws_security_group_rule" "allow_all_outbound" { - type = "egress" - from_port = 0 - to_port = 0 - protocol = "-1" - cidr_blocks = ["0.0.0.0/0"] - - security_group_id = "${aws_security_group.lc_security_group.id}" -} - - -# --------------------------------------------------------------------------------------------------------------------- -# THE CONSUL-SPECIFIC INBOUND/OUTBOUND RULES COME FROM THE CONSUL-SECURITY-GROUP-RULES MODULE -# --------------------------------------------------------------------------------------------------------------------- - -module "security_group_rules" { - source = "../consul-security-group-rules" - - security_group_id = "${aws_security_group.lc_security_group.id}" - allowed_inbound_cidr_blocks = ["${var.allowed_inbound_cidr_blocks}"] - allowed_inbound_security_group_ids = ["${var.allowed_inbound_security_group_ids}"] - - server_rpc_port = "${var.server_rpc_port}" - cli_rpc_port = "${var.cli_rpc_port}" - serf_lan_port = "${var.serf_lan_port}" - serf_wan_port = "${var.serf_wan_port}" - http_api_port = "${var.http_api_port}" - dns_port = "${var.dns_port}" -} - -# --------------------------------------------------------------------------------------------------------------------- -# ATTACH AN IAM ROLE TO EACH EC2 INSTANCE -# We can use the IAM role to grant the instance IAM permissions so we can use the AWS CLI without having to figure out -# how to get our secret AWS access keys onto the box. -# --------------------------------------------------------------------------------------------------------------------- - -resource "aws_iam_instance_profile" "instance_profile" { - name_prefix = "${var.cluster_name}" - path = "${var.instance_profile_path}" - role = "${aws_iam_role.instance_role.name}" - - # aws_launch_configuration.launch_configuration in this module sets create_before_destroy to true, which means - # everything it depends on, including this resource, must set it as well, or you'll get cyclic dependency errors - # when you try to do a terraform destroy. - lifecycle { - create_before_destroy = true - } -} - -resource "aws_iam_role" "instance_role" { - name_prefix = "${var.cluster_name}" - assume_role_policy = "${data.aws_iam_policy_document.instance_role.json}" - - # aws_iam_instance_profile.instance_profile in this module sets create_before_destroy to true, which means - # everything it depends on, including this resource, must set it as well, or you'll get cyclic dependency errors - # when you try to do a terraform destroy. - lifecycle { - create_before_destroy = true - } -} - -data "aws_iam_policy_document" "instance_role" { - statement { - effect = "Allow" - actions = ["sts:AssumeRole"] - - principals { - type = "Service" - identifiers = ["ec2.amazonaws.com"] - } - } -} - - -# --------------------------------------------------------------------------------------------------------------------- -# THE IAM POLICIES COME FROM THE CONSUL-IAM-POLICIES MODULE -# --------------------------------------------------------------------------------------------------------------------- - -module "iam_policies" { - source = "../consul-iam-policies" - - iam_role_id = "${aws_iam_role.instance_role.id}" -} \ No newline at end of file diff --git a/tflint/test-fixtures/v0.12.0_module/.terraform/modules/consul/hashicorp-terraform-aws-consul-ee980b4/modules/consul-cluster/outputs.tf b/tflint/test-fixtures/v0.12.0_module/.terraform/modules/consul/hashicorp-terraform-aws-consul-ee980b4/modules/consul-cluster/outputs.tf deleted file mode 100644 index c2afd7d63..000000000 --- a/tflint/test-fixtures/v0.12.0_module/.terraform/modules/consul/hashicorp-terraform-aws-consul-ee980b4/modules/consul-cluster/outputs.tf +++ /dev/null @@ -1,31 +0,0 @@ -output "asg_name" { - value = "${aws_autoscaling_group.autoscaling_group.name}" -} - -output "cluster_size" { - value = "${aws_autoscaling_group.autoscaling_group.desired_capacity}" -} - -output "launch_config_name" { - value = "${aws_launch_configuration.launch_configuration.name}" -} - -output "iam_role_arn" { - value = "${aws_iam_role.instance_role.arn}" -} - -output "iam_role_id" { - value = "${aws_iam_role.instance_role.id}" -} - -output "security_group_id" { - value = "${aws_security_group.lc_security_group.id}" -} - -output "cluster_tag_key" { - value = "${var.cluster_tag_key}" -} - -output "cluster_tag_value" { - value = "${var.cluster_tag_value}" -} diff --git a/tflint/test-fixtures/v0.12.0_module/.terraform/modules/consul/hashicorp-terraform-aws-consul-ee980b4/modules/consul-cluster/variables.tf b/tflint/test-fixtures/v0.12.0_module/.terraform/modules/consul/hashicorp-terraform-aws-consul-ee980b4/modules/consul-cluster/variables.tf deleted file mode 100644 index 9b51caf39..000000000 --- a/tflint/test-fixtures/v0.12.0_module/.terraform/modules/consul/hashicorp-terraform-aws-consul-ee980b4/modules/consul-cluster/variables.tf +++ /dev/null @@ -1,186 +0,0 @@ -# --------------------------------------------------------------------------------------------------------------------- -# REQUIRED PARAMETERS -# You must provide a value for each of these parameters. -# --------------------------------------------------------------------------------------------------------------------- - -variable "cluster_name" { - description = "The name of the Consul cluster (e.g. consul-stage). This variable is used to namespace all resources created by this module." -} - -variable "ami_id" { - description = "The ID of the AMI to run in this cluster. Should be an AMI that had Consul installed and configured by the install-consul module." -} - -variable "instance_type" { - description = "The type of EC2 Instances to run for each node in the cluster (e.g. t2.micro)." -} - -variable "vpc_id" { - description = "The ID of the VPC in which to deploy the Consul cluster" -} - -variable "allowed_inbound_cidr_blocks" { - description = "A list of CIDR-formatted IP address ranges from which the EC2 Instances will allow connections to Consul" - type = "list" -} - -variable "user_data" { - description = "A User Data script to execute while the server is booting. We remmend passing in a bash script that executes the run-consul script, which should have been installed in the Consul AMI by the install-consul module." -} - -# --------------------------------------------------------------------------------------------------------------------- -# OPTIONAL PARAMETERS -# These parameters have reasonable defaults. -# --------------------------------------------------------------------------------------------------------------------- - -variable "cluster_size" { - description = "The number of nodes to have in the Consul cluster. We strongly recommended that you use either 3 or 5." - default = 3 -} - -variable "cluster_tag_key" { - description = "Add a tag with this key and the value var.cluster_tag_value to each Instance in the ASG. This can be used to automatically find other Consul nodes and form a cluster." - default = "consul-servers" -} - -variable "cluster_tag_value" { - description = "Add a tag with key var.clsuter_tag_key and this value to each Instance in the ASG. This can be used to automatically find other Consul nodes and form a cluster." - default = "auto-join" -} - -variable "subnet_ids" { - description = "The subnet IDs into which the EC2 Instances should be deployed. We recommend one subnet ID per node in the cluster_size variable. At least one of var.subnet_ids or var.availability_zones must be non-empty." - type = "list" - default = [] -} - -variable "availability_zones" { - description = "The availability zones into which the EC2 Instances should be deployed. We recommend one availability zone per node in the cluster_size variable. At least one of var.subnet_ids or var.availability_zones must be non-empty." - type = "list" - default = [] -} - -variable "ssh_key_name" { - description = "The name of an EC2 Key Pair that can be used to SSH to the EC2 Instances in this cluster. Set to an empty string to not associate a Key Pair." - default = "" -} - -variable "allowed_ssh_cidr_blocks" { - description = "A list of CIDR-formatted IP address ranges from which the EC2 Instances will allow SSH connections" - type = "list" - default = [] -} - -variable "allowed_ssh_security_group_ids" { - description = "A list of security group IDs from which the EC2 Instances will allow SSH connections" - type = "list" - default = [] -} - -variable "allowed_inbound_security_group_ids" { - description = "A list of security group IDs that will be allowed to connect to Consul" - type = "list" - default = [] -} - -variable "termination_policies" { - description = "A list of policies to decide how the instances in the auto scale group should be terminated. The allowed values are OldestInstance, NewestInstance, OldestLaunchConfiguration, ClosestToNextInstanceHour, Default." - default = "Default" -} - -variable "associate_public_ip_address" { - description = "If set to true, associate a public IP address with each EC2 Instance in the cluster." - default = false -} - -variable "tenancy" { - description = "The tenancy of the instance. Must be one of: default or dedicated." - default = "default" -} - -variable "root_volume_ebs_optimized" { - description = "If true, the launched EC2 instance will be EBS-optimized." - default = false -} - -variable "root_volume_type" { - description = "The type of volume. Must be one of: standard, gp2, or io1." - default = "standard" -} - -variable "root_volume_size" { - description = "The size, in GB, of the root EBS volume." - default = 50 -} - -variable "root_volume_delete_on_termination" { - description = "Whether the volume should be destroyed on instance termination." - default = true -} - -variable "target_group_arns" { - description = "A list of target group ARNs of Application Load Balanacer (ALB) targets to associate with this ASG. If you're using a Elastic Load Balancer (AKA ELB Classic), use the load_balancers variable instead." - type = "list" - default = [] -} - -variable "load_balancers" { - description = "A list of Elastic Load Balancer (ELB) names to associate with this ASG. If you're using an Application Load Balancer (ALB), use the target_group_arns variable instead." - type = "list" - default = [] -} - -variable "wait_for_capacity_timeout" { - description = "A maximum duration that Terraform should wait for ASG instances to be healthy before timing out. Setting this to '0' causes Terraform to skip all Capacity Waiting behavior." - default = "10m" -} - -variable "health_check_type" { - description = "Controls how health checking is done. Must be one of EC2 or ELB." - default = "EC2" -} - -variable "health_check_grace_period" { - description = "Time, in seconds, after instance comes into service before checking health." - default = 300 -} - -variable "instance_profile_path" { - description = "Path in which to create the IAM instance profile." - default = "/" -} - -variable "server_rpc_port" { - description = "The port used by servers to handle incoming requests from other agents." - default = 8300 -} - -variable "cli_rpc_port" { - description = "The port used by all agents to handle RPC from the CLI." - default = 8400 -} - -variable "serf_lan_port" { - description = "The port used to handle gossip in the LAN. Required by all agents." - default = 8301 -} - -variable "serf_wan_port" { - description = "The port used by servers to gossip over the WAN to other servers." - default = 8302 -} - -variable "http_api_port" { - description = "The port used by clients to talk to the HTTP API" - default = 8500 -} - -variable "dns_port" { - description = "The port used to resolve DNS queries." - default = 8600 -} - -variable "ssh_port" { - description = "The port used for SSH connections" - default = 22 -} diff --git a/tflint/test-fixtures/v0.12.0_module/.terraform/modules/consul/hashicorp-terraform-aws-consul-ee980b4/modules/consul-iam-policies/README.md b/tflint/test-fixtures/v0.12.0_module/.terraform/modules/consul/hashicorp-terraform-aws-consul-ee980b4/modules/consul-iam-policies/README.md deleted file mode 100644 index 3e7a36e63..000000000 --- a/tflint/test-fixtures/v0.12.0_module/.terraform/modules/consul/hashicorp-terraform-aws-consul-ee980b4/modules/consul-iam-policies/README.md +++ /dev/null @@ -1,47 +0,0 @@ -# Consul IAM Policies - -This folder contains a [Terraform](https://www.terraform.io/) module that defines the IAM Policies used by a -[Consul](https://www.consul.io/) cluster. - -Normally, you'd get these policies by default if you're using the [consul-cluster submodule](https://github.com/hashicorp/terraform-aws-consul/tree/master/modules/consul-cluster), -but if you're running Consul on top of a different cluster (e.g. you're co-locating Consul with Nomad), then you can -use this module to add the necessary IAM policies to that that cluster. For example, imagine you were using the -[nomad-cluster module](https://github.com/hashicorp/terraform-aws-nomad/tree/master/modules/nomad-cluster) to run a -cluster of servers that have both Nomad and Consul on each node: - -```hcl -module "nomad_servers" { - source = "git::git@github.com:hashicorp/terraform-aws-nomad.git//modules/nomad-cluster?ref=v0.0.1" - - # This AMI has both Nomad and Consul installed - ami_id = "ami-1234abcd" -} -``` - -The `nomad-cluster` module will provide the IAM policies for Nomad, but not for Consul. To ensure those servers -have the necessary IAM permissions to run Consul, you can use this module as follows: - -```hcl -module "iam_policies" { - source = "git::git@github.com:hashicorp/terraform-aws-consul.git//modules/consul-iam-policies?ref=v0.0.2" - - iam_role_id = "${module.nomad_servers.iam_role_id}" - - # ... (other params omitted) ... -} -``` - -Note the following parameters: - -* `source`: Use this parameter to specify the URL of this module. The double slash (`//`) is intentional - and required. Terraform uses it to specify subfolders within a Git repo (see [module - sources](https://www.terraform.io/docs/modules/sources.html)). The `ref` parameter specifies a specific Git tag in - this repo. That way, instead of using the latest version of this module from the `master` branch, which - will change every time you run Terraform, you're using a fixed version of the repo. - -* `iam_role_id`: Use this parameter to specify the ID of the IAM Role to which the rules in this module - should be added. - -You can find the other parameters in [vars.tf](vars.tf). - -Check out the [consul-cluster example](https://github.com/hashicorp/terraform-aws-consul/tree/master/MAIN.md) for working sample code. \ No newline at end of file diff --git a/tflint/test-fixtures/v0.12.0_module/.terraform/modules/consul/hashicorp-terraform-aws-consul-ee980b4/modules/consul-iam-policies/main.tf b/tflint/test-fixtures/v0.12.0_module/.terraform/modules/consul/hashicorp-terraform-aws-consul-ee980b4/modules/consul-iam-policies/main.tf deleted file mode 100644 index 80610a8f2..000000000 --- a/tflint/test-fixtures/v0.12.0_module/.terraform/modules/consul/hashicorp-terraform-aws-consul-ee980b4/modules/consul-iam-policies/main.tf +++ /dev/null @@ -1,23 +0,0 @@ -# --------------------------------------------------------------------------------------------------------------------- -# ATTACH AN IAM POLICY THAT ALLOWS THE CONSUL NODES TO AUTOMATICALLY DISCOVER EACH OTHER AND FORM A CLUSTER -# --------------------------------------------------------------------------------------------------------------------- - -resource "aws_iam_role_policy" "auto_discover_cluster" { - name = "auto-discover-cluster" - role = "${var.iam_role_id}" - policy = "${data.aws_iam_policy_document.auto_discover_cluster.json}" -} - -data "aws_iam_policy_document" "auto_discover_cluster" { - statement { - effect = "Allow" - - actions = [ - "ec2:DescribeInstances", - "ec2:DescribeTags", - "autoscaling:DescribeAutoScalingGroups", - ] - - resources = ["*"] - } -} diff --git a/tflint/test-fixtures/v0.12.0_module/.terraform/modules/consul/hashicorp-terraform-aws-consul-ee980b4/modules/consul-iam-policies/variables.tf b/tflint/test-fixtures/v0.12.0_module/.terraform/modules/consul/hashicorp-terraform-aws-consul-ee980b4/modules/consul-iam-policies/variables.tf deleted file mode 100644 index 20cea351e..000000000 --- a/tflint/test-fixtures/v0.12.0_module/.terraform/modules/consul/hashicorp-terraform-aws-consul-ee980b4/modules/consul-iam-policies/variables.tf +++ /dev/null @@ -1,8 +0,0 @@ -# --------------------------------------------------------------------------------------------------------------------- -# REQUIRED PARAMETERS -# You must provide a value for each of these parameters. -# --------------------------------------------------------------------------------------------------------------------- - -variable "iam_role_id" { - description = "The ID of the IAM Role to which these IAM policies should be attached" -} \ No newline at end of file diff --git a/tflint/test-fixtures/v0.12.0_module/.terraform/modules/consul/hashicorp-terraform-aws-consul-ee980b4/modules/consul-security-group-rules/README.md b/tflint/test-fixtures/v0.12.0_module/.terraform/modules/consul/hashicorp-terraform-aws-consul-ee980b4/modules/consul-security-group-rules/README.md deleted file mode 100644 index 12ce83cbf..000000000 --- a/tflint/test-fixtures/v0.12.0_module/.terraform/modules/consul/hashicorp-terraform-aws-consul-ee980b4/modules/consul-security-group-rules/README.md +++ /dev/null @@ -1,47 +0,0 @@ -# Consul Security Group Rules Module - -This folder contains a [Terraform](https://www.terraform.io/) module that defines the security group rules used by a -[Consul](https://www.consul.io/) cluster to control the traffic that is allowed to go in and out of the cluster. - -Normally, you'd get these rules by default if you're using the [consul-cluster module](https://github.com/hashicorp/terraform-aws-consul/tree/master/MAIN.md), but if -you're running Consul on top of a different cluster, then you can use this module to add the necessary security group -rules to that cluster. For example, imagine you were using the [nomad-cluster -module](https://github.com/hashicorp/terraform-aws-nomad/tree/master/modules/nomad-cluster) to run a cluster of -servers that have both Nomad and Consul on each node: - -```hcl -module "nomad_servers" { - source = "git::git@github.com:hashicorp/terraform-aws-nomad.git//modules/nomad-cluster?ref=v0.0.1" - - # This AMI has both Nomad and Consul installed - ami_id = "ami-1234abcd" -} -``` - -The `nomad-cluster` module will provide the security group rules for Nomad, but not for Consul. To ensure those servers -have the necessary ports open for using Consul, you can use this module as follows: - -```hcl -module "security_group_rules" { - source = "git::git@github.com:hashicorp/terraform-aws-consul.git//modules/consul-security-group-rules?ref=v0.0.2" - - security_group_id = "${module.nomad_servers.security_group_id}" - - # ... (other params omitted) ... -} -``` - -Note the following parameters: - -* `source`: Use this parameter to specify the URL of this module. The double slash (`//`) is intentional - and required. Terraform uses it to specify subfolders within a Git repo (see [module - sources](https://www.terraform.io/docs/modules/sources.html)). The `ref` parameter specifies a specific Git tag in - this repo. That way, instead of using the latest version of this module from the `master` branch, which - will change every time you run Terraform, you're using a fixed version of the repo. - -* `security_group_id`: Use this parameter to specify the ID of the security group to which the rules in this module - should be added. - -You can find the other parameters in [vars.tf](vars.tf). - -Check out the [consul-cluster module](https://github.com/hashicorp/terraform-aws-consul/tree/master/modules/consul-cluster) for working sample code. \ No newline at end of file diff --git a/tflint/test-fixtures/v0.12.0_module/.terraform/modules/consul/hashicorp-terraform-aws-consul-ee980b4/modules/consul-security-group-rules/main.tf b/tflint/test-fixtures/v0.12.0_module/.terraform/modules/consul/hashicorp-terraform-aws-consul-ee980b4/modules/consul-security-group-rules/main.tf deleted file mode 100644 index a45f0a5d6..000000000 --- a/tflint/test-fixtures/v0.12.0_module/.terraform/modules/consul/hashicorp-terraform-aws-consul-ee980b4/modules/consul-security-group-rules/main.tf +++ /dev/null @@ -1,201 +0,0 @@ -# --------------------------------------------------------------------------------------------------------------------- -# CREATE THE SECURITY GROUP RULES THAT CONTROL WHAT TRAFFIC CAN GO IN AND OUT OF A CONSUL CLUSTER -# --------------------------------------------------------------------------------------------------------------------- - -resource "aws_security_group_rule" "allow_server_rpc_inbound" { - count = "${length(var.allowed_inbound_cidr_blocks) >= 1 ? 1 : 0}" - type = "ingress" - from_port = "${var.server_rpc_port}" - to_port = "${var.server_rpc_port}" - protocol = "tcp" - cidr_blocks = ["${var.allowed_inbound_cidr_blocks}"] - - security_group_id = "${var.security_group_id}" -} - -resource "aws_security_group_rule" "allow_cli_rpc_inbound" { - count = "${length(var.allowed_inbound_cidr_blocks) >= 1 ? 1 : 0}" - type = "ingress" - from_port = "${var.cli_rpc_port}" - to_port = "${var.cli_rpc_port}" - protocol = "tcp" - cidr_blocks = ["${var.allowed_inbound_cidr_blocks}"] - - security_group_id = "${var.security_group_id}" -} - -resource "aws_security_group_rule" "allow_serf_lan_tcp_inbound" { - count = "${length(var.allowed_inbound_cidr_blocks) >= 1 ? 1 : 0}" - type = "ingress" - from_port = "${var.serf_lan_port}" - to_port = "${var.serf_lan_port}" - protocol = "tcp" - cidr_blocks = ["${var.allowed_inbound_cidr_blocks}"] - - security_group_id = "${var.security_group_id}" -} - -resource "aws_security_group_rule" "allow_serf_lan_udp_inbound" { - count = "${length(var.allowed_inbound_cidr_blocks) >= 1 ? 1 : 0}" - type = "ingress" - from_port = "${var.serf_lan_port}" - to_port = "${var.serf_lan_port}" - protocol = "udp" - cidr_blocks = ["${var.allowed_inbound_cidr_blocks}"] - - security_group_id = "${var.security_group_id}" -} - -resource "aws_security_group_rule" "allow_serf_wan_tcp_inbound" { - count = "${length(var.allowed_inbound_cidr_blocks) >= 1 ? 1 : 0}" - type = "ingress" - from_port = "${var.serf_wan_port}" - to_port = "${var.serf_wan_port}" - protocol = "tcp" - cidr_blocks = ["${var.allowed_inbound_cidr_blocks}"] - - security_group_id = "${var.security_group_id}" -} - -resource "aws_security_group_rule" "allow_serf_wan_udp_inbound" { - count = "${length(var.allowed_inbound_cidr_blocks) >= 1 ? 1 : 0}" - type = "ingress" - from_port = "${var.serf_wan_port}" - to_port = "${var.serf_wan_port}" - protocol = "udp" - cidr_blocks = ["${var.allowed_inbound_cidr_blocks}"] - - security_group_id = "${var.security_group_id}" -} - -resource "aws_security_group_rule" "allow_http_api_inbound" { - count = "${length(var.allowed_inbound_cidr_blocks) >= 1 ? 1 : 0}" - type = "ingress" - from_port = "${var.http_api_port}" - to_port = "${var.http_api_port}" - protocol = "tcp" - cidr_blocks = ["${var.allowed_inbound_cidr_blocks}"] - - security_group_id = "${var.security_group_id}" -} - -resource "aws_security_group_rule" "allow_dns_tcp_inbound" { - count = "${length(var.allowed_inbound_cidr_blocks) >= 1 ? 1 : 0}" - type = "ingress" - from_port = "${var.dns_port}" - to_port = "${var.dns_port}" - protocol = "tcp" - cidr_blocks = ["${var.allowed_inbound_cidr_blocks}"] - - security_group_id = "${var.security_group_id}" -} - -resource "aws_security_group_rule" "allow_dns_udp_inbound" { - count = "${length(var.allowed_inbound_cidr_blocks) >= 1 ? 1 : 0}" - type = "ingress" - from_port = "${var.dns_port}" - to_port = "${var.dns_port}" - protocol = "udp" - cidr_blocks = ["${var.allowed_inbound_cidr_blocks}"] - - security_group_id = "${var.security_group_id}" -} - -resource "aws_security_group_rule" "allow_server_rpc_inbound_from_security_group_ids" { - count = "${length(var.allowed_inbound_security_group_ids)}" - type = "ingress" - from_port = "${var.server_rpc_port}" - to_port = "${var.server_rpc_port}" - protocol = "tcp" - source_security_group_id = "${element(var.allowed_inbound_security_group_ids, count.index)}" - - security_group_id = "${var.security_group_id}" -} - -resource "aws_security_group_rule" "allow_cli_rpc_inbound_from_security_group_ids" { - count = "${length(var.allowed_inbound_security_group_ids)}" - type = "ingress" - from_port = "${var.cli_rpc_port}" - to_port = "${var.cli_rpc_port}" - protocol = "tcp" - source_security_group_id = "${element(var.allowed_inbound_security_group_ids, count.index)}" - - security_group_id = "${var.security_group_id}" -} - -resource "aws_security_group_rule" "allow_serf_lan_tcp_inbound_from_security_group_ids" { - count = "${length(var.allowed_inbound_security_group_ids)}" - type = "ingress" - from_port = "${var.serf_lan_port}" - to_port = "${var.serf_lan_port}" - protocol = "tcp" - source_security_group_id = "${element(var.allowed_inbound_security_group_ids, count.index)}" - - security_group_id = "${var.security_group_id}" -} - -resource "aws_security_group_rule" "allow_serf_lan_udp_inbound_from_security_group_ids" { - count = "${length(var.allowed_inbound_security_group_ids)}" - type = "ingress" - from_port = "${var.serf_lan_port}" - to_port = "${var.serf_lan_port}" - protocol = "udp" - source_security_group_id = "${element(var.allowed_inbound_security_group_ids, count.index)}" - - security_group_id = "${var.security_group_id}" -} - -resource "aws_security_group_rule" "allow_serf_wan_tcp_inbound_from_security_group_ids" { - count = "${length(var.allowed_inbound_security_group_ids)}" - type = "ingress" - from_port = "${var.serf_wan_port}" - to_port = "${var.serf_wan_port}" - protocol = "tcp" - source_security_group_id = "${element(var.allowed_inbound_security_group_ids, count.index)}" - - security_group_id = "${var.security_group_id}" -} - -resource "aws_security_group_rule" "allow_serf_wan_udp_inbound_from_security_group_ids" { - count = "${length(var.allowed_inbound_security_group_ids)}" - type = "ingress" - from_port = "${var.serf_wan_port}" - to_port = "${var.serf_wan_port}" - protocol = "udp" - source_security_group_id = "${element(var.allowed_inbound_security_group_ids, count.index)}" - - security_group_id = "${var.security_group_id}" -} - -resource "aws_security_group_rule" "allow_http_api_inbound_from_security_group_ids" { - count = "${length(var.allowed_inbound_security_group_ids)}" - type = "ingress" - from_port = "${var.http_api_port}" - to_port = "${var.http_api_port}" - protocol = "tcp" - source_security_group_id = "${element(var.allowed_inbound_security_group_ids, count.index)}" - - security_group_id = "${var.security_group_id}" -} - -resource "aws_security_group_rule" "allow_dns_tcp_inbound_from_security_group_ids" { - count = "${length(var.allowed_inbound_security_group_ids)}" - type = "ingress" - from_port = "${var.dns_port}" - to_port = "${var.dns_port}" - protocol = "tcp" - source_security_group_id = "${element(var.allowed_inbound_security_group_ids, count.index)}" - - security_group_id = "${var.security_group_id}" -} - -resource "aws_security_group_rule" "allow_dns_udp_inbound_from_security_group_ids" { - count = "${length(var.allowed_inbound_security_group_ids)}" - type = "ingress" - from_port = "${var.dns_port}" - to_port = "${var.dns_port}" - protocol = "udp" - source_security_group_id = "${element(var.allowed_inbound_security_group_ids, count.index)}" - - security_group_id = "${var.security_group_id}" -} diff --git a/tflint/test-fixtures/v0.12.0_module/.terraform/modules/consul/hashicorp-terraform-aws-consul-ee980b4/modules/consul-security-group-rules/variables.tf b/tflint/test-fixtures/v0.12.0_module/.terraform/modules/consul/hashicorp-terraform-aws-consul-ee980b4/modules/consul-security-group-rules/variables.tf deleted file mode 100644 index cce0e3f0e..000000000 --- a/tflint/test-fixtures/v0.12.0_module/.terraform/modules/consul/hashicorp-terraform-aws-consul-ee980b4/modules/consul-security-group-rules/variables.tf +++ /dev/null @@ -1,54 +0,0 @@ -# --------------------------------------------------------------------------------------------------------------------- -# REQUIRED PARAMETERS -# You must provide a value for each of these parameters. -# --------------------------------------------------------------------------------------------------------------------- - -variable "security_group_id" { - description = "The ID of the security group to which we should add the Consul security group rules" -} - -variable "allowed_inbound_cidr_blocks" { - description = "A list of CIDR-formatted IP address ranges from which the EC2 Instances will allow connections to Consul" - type = "list" -} - -# --------------------------------------------------------------------------------------------------------------------- -# OPTIONAL PARAMETERS -# These parameters have reasonable defaults. -# --------------------------------------------------------------------------------------------------------------------- - -variable "allowed_inbound_security_group_ids" { - description = "A list of security group IDs that will be allowed to connect to Consul" - type = "list" - default = [] -} - -variable "server_rpc_port" { - description = "The port used by servers to handle incoming requests from other agents." - default = 8300 -} - -variable "cli_rpc_port" { - description = "The port used by all agents to handle RPC from the CLI." - default = 8400 -} - -variable "serf_lan_port" { - description = "The port used to handle gossip in the LAN. Required by all agents." - default = 8301 -} - -variable "serf_wan_port" { - description = "The port used by servers to gossip over the WAN to other servers." - default = 8302 -} - -variable "http_api_port" { - description = "The port used by clients to talk to the HTTP API" - default = 8500 -} - -variable "dns_port" { - description = "The port used to resolve DNS queries." - default = 8600 -} diff --git a/tflint/test-fixtures/v0.12.0_module/.terraform/modules/consul/hashicorp-terraform-aws-consul-ee980b4/modules/install-consul/README.md b/tflint/test-fixtures/v0.12.0_module/.terraform/modules/consul/hashicorp-terraform-aws-consul-ee980b4/modules/install-consul/README.md deleted file mode 100644 index 2067495f0..000000000 --- a/tflint/test-fixtures/v0.12.0_module/.terraform/modules/consul/hashicorp-terraform-aws-consul-ee980b4/modules/install-consul/README.md +++ /dev/null @@ -1,111 +0,0 @@ -# Consul Install Script - -This folder contains a script for installing Consul and its dependencies. Use this script along with the -[run-consul script](https://github.com/hashicorp/terraform-aws-consul/tree/master/modules/run-consul) to create a Consul [Amazon Machine Image -(AMI)](http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/AMIs.html) that can be deployed in -[AWS](https://aws.amazon.com/) across an Auto Scaling Group using the [consul-cluster module](https://github.com/hashicorp/terraform-aws-consul/tree/master/modules/consul-cluster). - -This script has been tested on the following operating systems: - -* Ubuntu 16.04 -* Amazon Linux - -There is a good chance it will work on other flavors of Debian, CentOS, and RHEL as well. - - - -## Quick start - - - -To install Consul, use `git` to clone this repository at a specific tag (see the [releases page](../../../../releases) -for all available tags) and run the `install-consul` script: - -``` -git clone --branch https://github.com/hashicorp/terraform-aws-consul.git -terraform-aws-consul/modules/install-consul/install-consul --version 0.8.0 -``` - -The `install-consul` script will install Consul, its dependencies, and the [run-consul script](https://github.com/hashicorp/terraform-aws-consul/tree/master/modules/run-consul). -The `run-consul` script is also run when the server is booting to start Consul and configure it to automatically -join other nodes to form a cluster. - -We recommend running the `install-consul` script as part of a [Packer](https://www.packer.io/) template to create a -Consul [Amazon Machine Image (AMI)](http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/AMIs.html) (see the -[consul-ami example](https://github.com/hashicorp/terraform-aws-consul/tree/master/examples/consul-ami) for a fully-working sample code). You can then deploy the AMI across an Auto -Scaling Group using the [consul-cluster module](https://github.com/hashicorp/terraform-aws-consul/tree/master/modules/consul-cluster) (see the [main -example](https://github.com/hashicorp/terraform-aws-consul/tree/master/MAIN.md) for fully-working sample code). - - - - -## Command line Arguments - -The `install-consul` script accepts the following arguments: - -* `version VERSION`: Install Consul version VERSION. Required. -* `path DIR`: Install Consul into folder DIR. Optional. -* `user USER`: The install dirs will be owned by user USER. Optional. - -Example: - -``` -install-consul --version 0.8.0 -``` - - - -## How it works - -The `install-consul` script does the following: - -1. [Create a user and folders for Consul](#create-a-user-and-folders-for-consul) -1. [Install Consul binaries and scripts](#install-consul-binaries-and-scripts) -1. [Install supervisord](#install-supervisord) -1. [Follow-up tasks](#follow-up-tasks) - - -### Create a user and folders for Consul - -Create an OS user named `consul`. Create the following folders, all owned by user `consul`: - -* `/opt/consul`: base directory for Consul data (configurable via the `--path` argument). -* `/opt/consul/bin`: directory for Consul binaries. -* `/opt/consul/data`: directory where the Consul agent can store state. -* `/opt/consul/config`: directory where the Consul agent looks up configuration. -* `/opt/consul/log`: directory where Consul will store log output. - - -### Install Consul binaries and scripts - -Install the following: - -* `consul`: Download the Consul zip file from the [downloads page](https://www.consul.io/downloads.html) (the version - number is configurable via the `--version` argument), and extract the `consul` binary into `/opt/consul/bin`. Add a - symlink to the `consul` binary in `/usr/local/bin`. -* `run-consul`: Copy the [run-consul script](https://github.com/hashicorp/terraform-aws-consul/tree/master/modules/run-consul) into `/opt/consul/bin`. - - -### Install supervisord - -Install [supervisord](http://supervisord.org/). We use it as a cross-platform supervisor to ensure Consul is started -whenever the system boots and restarted if the Consul process crashes. - - -### Follow-up tasks - -After the `install-consul` script finishes running, you may wish to do the following: - -1. If you have custom Consul config (`.json`) files, you may want to copy them into the config directory (default: - `/opt/consul/config`). -1. If `/usr/local/bin` isn't already part of `PATH`, you should add it so you can run the `consul` command without - specifying the full path. - - - -## Why use Git to install this code? - -We needed an easy way to install these scripts that satisfied a number of requirements, including working on a variety -of operating systems and supported versioning. Our current solution is to use `git`, but this may change in the future. -See [Package Managers](https://github.com/hashicorp/terraform-aws-consul/tree/master/_docs/package-managers.md) for a full discussion of the requirements, trade-offs, and why we -picked `git`. diff --git a/tflint/test-fixtures/v0.12.0_module/.terraform/modules/consul/hashicorp-terraform-aws-consul-ee980b4/modules/install-consul/install-consul b/tflint/test-fixtures/v0.12.0_module/.terraform/modules/consul/hashicorp-terraform-aws-consul-ee980b4/modules/install-consul/install-consul deleted file mode 100755 index 8650aa225..000000000 --- a/tflint/test-fixtures/v0.12.0_module/.terraform/modules/consul/hashicorp-terraform-aws-consul-ee980b4/modules/install-consul/install-consul +++ /dev/null @@ -1,248 +0,0 @@ -#!/bin/bash -# This script can be used to install Consul and its dependencies. This script has been tested with the following -# operating systems: -# -# 1. Ubuntu 16.04 -# 1. Amazon Linux - -set -e - -readonly DEFAULT_INSTALL_PATH="/opt/consul" -readonly DEFAULT_CONSUL_USER="consul" - -readonly SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)" -readonly SYSTEM_BIN_DIR="/usr/local/bin" - -readonly SUPERVISOR_DIR="/etc/supervisor" -readonly SUPERVISOR_CONF_DIR="$SUPERVISOR_DIR/conf.d" - -readonly SCRIPT_NAME="$(basename "$0")" - -function print_usage { - echo - echo "Usage: install-consul [OPTIONS]" - echo - echo "This script can be used to install Consul and its dependencies. This script has been tested with Ubuntu 16.04 and Amazon Linux." - echo - echo "Options:" - echo - echo -e " --version\t\tThe version of Consul to install. Required." - echo -e " --path\t\tThe path where Consul should be installed. Optional. Default: $DEFAULT_INSTALL_PATH." - echo -e " --user\t\tThe user who will own the Consul install directories. Optional. Default: $DEFAULT_CONSUL_USER." - echo - echo "Example:" - echo - echo " install-consul --version 0.8.0" -} - -function log { - local readonly level="$1" - local readonly message="$2" - local readonly timestamp=$(date +"%Y-%m-%d %H:%M:%S") - >&2 echo -e "${timestamp} [${level}] [$SCRIPT_NAME] ${message}" -} - -function log_info { - local readonly message="$1" - log "INFO" "$message" -} - -function log_warn { - local readonly message="$1" - log "WARN" "$message" -} - -function log_error { - local readonly message="$1" - log "ERROR" "$message" -} - -function assert_not_empty { - local readonly arg_name="$1" - local readonly arg_value="$2" - - if [[ -z "$arg_value" ]]; then - log_error "The value for '$arg_name' cannot be empty" - print_usage - exit 1 - fi -} - -# Install steps are based on: http://unix.stackexchange.com/a/291098/215969 -function install_supervisord_debian { - sudo apt-get install -y supervisor - sudo update-rc.d supervisor defaults - - create_supervisor_config - sudo systemctl enable supervisor -} - -# Install steps are based on: http://stackoverflow.com/a/31576473/483528 -function install_supervisord_amazon_linux { - sudo pip install supervisor - - # On Amazon Linux, /usr/local/bin is not in PATH for the root user, so we add symlinks to /usr/bin, which is in PATH - if [[ ! -f "/usr/bin/supervisorctl" ]]; then - sudo ln -s /usr/local/bin/supervisorctl /usr/bin/supervisorctl - fi - if [[ ! -f "/usr/bin/supervisord" ]]; then - sudo ln -s /usr/local/bin/supervisord /usr/bin/supervisord - fi - - sudo cp "$SCRIPT_DIR/supervisor-initd-script.sh" "/etc/init.d/supervisor" - sudo chmod a+x /etc/init.d/supervisor - sudo mkdir -p /var/log/supervisor - - create_supervisor_config - sudo chkconfig --add supervisor - sudo chkconfig supervisor on - - # Amazon Linux does not automatically start supervisord after installing it. This command does that. - sudo service supervisor start -} - -function create_supervisor_config { - sudo mkdir -p "$SUPERVISOR_CONF_DIR" - sudo cp "$SCRIPT_DIR/supervisord.conf" "$SUPERVISOR_DIR/supervisord.conf" -} - -function has_yum { - [ -n "$(command -v yum)" ] -} - -function has_apt_get { - [ -n "$(command -v apt-get)" ] -} - -function install_dependencies { - log_info "Installing dependencies" - - if $(has_apt_get); then - sudo apt-get update -y - sudo apt-get install -y awscli curl unzip jq - install_supervisord_debian - elif $(has_yum); then - sudo yum update -y - sudo yum install -y aws curl unzip jq - install_supervisord_amazon_linux - else - log_error "Could not find apt-get or yum. Cannot install dependencies on this OS." - exit 1 - fi -} - -function user_exists { - local readonly username="$1" - id "$username" >/dev/null 2>&1 -} - -function create_consul_user { - local readonly username="$1" - - if $(user_exists "$username"); then - echo "User $username already exists. Will not create again." - else - log_info "Creating user named $username" - sudo useradd "$username" - fi -} - -function create_consul_install_paths { - local readonly path="$1" - local readonly username="$2" - - log_info "Creating install dirs for Consul at $path" - sudo mkdir -p "$path" - sudo mkdir -p "$path/bin" - sudo mkdir -p "$path/config" - sudo mkdir -p "$path/data" - sudo mkdir -p "$path/log" - - log_info "Changing ownership of $path to $username" - sudo chown -R "$username:$username" "$path" -} - -function install_binaries { - local readonly version="$1" - local readonly path="$2" - local readonly username="$3" - - local readonly url="https://releases.hashicorp.com/consul/${version}/consul_${version}_linux_amd64.zip" - local readonly download_path="/tmp/consul_${version}_linux_amd64.zip" - local readonly bin_dir="$path/bin" - local readonly consul_dest_path="$bin_dir/consul" - local readonly run_consul_dest_path="$bin_dir/run-consul" - - log_info "Downloading Consul $version from $url to $download_path" - curl -o "$download_path" "$url" - unzip -d /tmp "$download_path" - - log_info "Moving Consul binary to $consul_dest_path" - sudo mv "/tmp/consul" "$consul_dest_path" - sudo chown "$username:$username" "$consul_dest_path" - sudo chmod a+x "$consul_dest_path" - - local readonly symlink_path="$SYSTEM_BIN_DIR/consul" - if [[ -f "$symlink_path" ]]; then - log_info "Symlink $symlink_path already exists. Will not add again." - else - log_info "Adding symlink to $consul_dest_path in $symlink_path" - sudo ln -s "$consul_dest_path" "$symlink_path" - fi - - log_info "Copying Consul run script to $run_consul_dest_path" - sudo cp "$SCRIPT_DIR/../run-consul/run-consul" "$run_consul_dest_path" - sudo chown "$username:$username" "$run_consul_dest_path" - sudo chmod a+x "$run_consul_dest_path" -} - -function install { - local version="" - local path="$DEFAULT_INSTALL_PATH" - local user="$DEFAULT_CONSUL_USER" - - while [[ $# > 0 ]]; do - local key="$1" - - case "$key" in - --version) - version="$2" - shift - ;; - --path) - path="$2" - shift - ;; - --user) - user="$2" - shift - ;; - --help) - print_usage - exit - ;; - *) - log_error "Unrecognized argument: $key" - print_usage - exit 1 - ;; - esac - - shift - done - - assert_not_empty "--version" "$version" - assert_not_empty "--path" "$path" - assert_not_empty "--user" "$user" - - log_info "Starting Consul install" - - install_dependencies - create_consul_user "$user" - create_consul_install_paths "$path" "$user" - install_binaries "$version" "$path" "$user" - - log_info "Consul install complete!" -} - -install "$@" \ No newline at end of file diff --git a/tflint/test-fixtures/v0.12.0_module/.terraform/modules/consul/hashicorp-terraform-aws-consul-ee980b4/modules/install-consul/supervisor-initd-script.sh b/tflint/test-fixtures/v0.12.0_module/.terraform/modules/consul/hashicorp-terraform-aws-consul-ee980b4/modules/install-consul/supervisor-initd-script.sh deleted file mode 100755 index 171b91613..000000000 --- a/tflint/test-fixtures/v0.12.0_module/.terraform/modules/consul/hashicorp-terraform-aws-consul-ee980b4/modules/install-consul/supervisor-initd-script.sh +++ /dev/null @@ -1,116 +0,0 @@ -#!/bin/bash -# -# supervisord Startup script for the Supervisor process control system -# -# Author: Mike McGrath (based off yumupdatesd) -# Jason Koppe adjusted to read sysconfig, -# use supervisord tools to start/stop, conditionally wait -# for child processes to shutdown, and startup later -# Erwan Queffelec -# make script LSB-compliant -# -# chkconfig: 345 83 04 -# description: Supervisor is a client/server system that allows \ -# its users to monitor and control a number of processes on \ -# UNIX-like operating systems. -# processname: supervisord -# config: /etc/supervisord.conf -# config: /etc/sysconfig/supervisord -# pidfile: /var/run/supervisord.pid -# -### BEGIN INIT INFO -# Provides: supervisord -# Required-Start: $all -# Required-Stop: $all -# Short-Description: start and stop Supervisor process control system -# Description: Supervisor is a client/server system that allows -# its users to monitor and control a number of processes on -# UNIX-like operating systems. -### END INIT INFO - -# Source function library -. /etc/rc.d/init.d/functions - -# Source system settings -if [ -f /etc/sysconfig/supervisord ]; then - . /etc/sysconfig/supervisord -fi - -# Path to the supervisorctl script, server binary, -# and short-form for messages. -supervisorctl=/usr/local/bin/supervisorctl -supervisord=${SUPERVISORD-/usr/local/bin/supervisord} -prog=supervisord -pidfile=${PIDFILE-/tmp/supervisord.pid} -lockfile=${LOCKFILE-/var/lock/subsys/supervisord} -STOP_TIMEOUT=${STOP_TIMEOUT-60} -OPTIONS="${OPTIONS--c /etc/supervisor/supervisord.conf}" -RETVAL=0 - -start() { - echo -n $"Starting $prog: " - daemon --pidfile=${pidfile} $supervisord $OPTIONS - RETVAL=$? - echo - if [ $RETVAL -eq 0 ]; then - touch ${lockfile} - $supervisorctl $OPTIONS status - fi - return $RETVAL -} - -stop() { - echo -n $"Stopping $prog: " - killproc -p ${pidfile} -d ${STOP_TIMEOUT} $supervisord - RETVAL=$? - echo - [ $RETVAL -eq 0 ] && rm -rf ${lockfile} ${pidfile} -} - -reload() { - echo -n $"Reloading $prog: " - LSB=1 killproc -p $pidfile $supervisord -HUP - RETVAL=$? - echo - if [ $RETVAL -eq 7 ]; then - failure $"$prog reload" - else - $supervisorctl $OPTIONS status - fi -} - -restart() { - stop - start -} - -case "$1" in - start) - start - ;; - stop) - stop - ;; - status) - status -p ${pidfile} $supervisord - RETVAL=$? - [ $RETVAL -eq 0 ] && $supervisorctl $OPTIONS status - ;; - restart) - restart - ;; - condrestart|try-restart) - if status -p ${pidfile} $supervisord >&/dev/null; then - stop - start - fi - ;; - force-reload|reload) - reload - ;; - *) - echo $"Usage: $prog {start|stop|restart|condrestart|try-restart|force-reload|reload}" - RETVAL=2 - esac - - exit $RETVAL \ No newline at end of file diff --git a/tflint/test-fixtures/v0.12.0_module/.terraform/modules/consul/hashicorp-terraform-aws-consul-ee980b4/modules/install-consul/supervisord.conf b/tflint/test-fixtures/v0.12.0_module/.terraform/modules/consul/hashicorp-terraform-aws-consul-ee980b4/modules/install-consul/supervisord.conf deleted file mode 100644 index d96beb0ca..000000000 --- a/tflint/test-fixtures/v0.12.0_module/.terraform/modules/consul/hashicorp-terraform-aws-consul-ee980b4/modules/install-consul/supervisord.conf +++ /dev/null @@ -1,39 +0,0 @@ -; supervisor config file -; -; For more information on the config file, please see: -; http://supervisord.org/configuration.html -; -; Notes: -; - Shell expansion ("~" or "$HOME") is not supported. Environment -; variables can be expanded using this syntax: "%(ENV_HOME)s". -; - Comments must have a leading space: "a=b ;comment" not "a=b;comment". - -[unix_http_server] -file=/var/run/supervisor.sock ; (the path to the socket file) -chmod=0700 ; sockef file mode (default 0700) - -[supervisord] -logfile=/var/log/supervisor/supervisord.log ; (main log file;default $CWD/supervisord.log) -pidfile=/var/run/supervisord.pid ; (supervisord pidfile;default supervisord.pid) -childlogdir=/var/log/supervisor ; ('AUTO' child log dir, default $TEMP) -logfile_maxbytes=50MB ; (max main logfile bytes b4 rotation;default 50MB) -logfile_backups=10 ; (num of main logfile rotation backups;default 10) -loglevel=info ; (log level;default info; others: debug,warn,trace) - -; the below section must remain in the config file for RPC -; (supervisorctl/web interface) to work, additional interfaces may be -; added by defining them in separate rpcinterface: sections -[rpcinterface:supervisor] -supervisor.rpcinterface_factory = supervisor.rpcinterface:make_main_rpcinterface - -[supervisorctl] -serverurl=unix:///var/run/supervisor.sock ; use a unix:// URL for a unix socket - -; The [include] section can just contain the "files" setting. This -; setting can list multiple files (separated by whitespace or -; newlines). It can also contain wildcards. The filenames are -; interpreted as relative to this file. Included files *cannot* -; include files themselves. - -[include] -files = /etc/supervisor/conf.d/*.conf diff --git a/tflint/test-fixtures/v0.12.0_module/.terraform/modules/consul/hashicorp-terraform-aws-consul-ee980b4/modules/install-dnsmasq/README.md b/tflint/test-fixtures/v0.12.0_module/.terraform/modules/consul/hashicorp-terraform-aws-consul-ee980b4/modules/install-dnsmasq/README.md deleted file mode 100644 index 997022af1..000000000 --- a/tflint/test-fixtures/v0.12.0_module/.terraform/modules/consul/hashicorp-terraform-aws-consul-ee980b4/modules/install-dnsmasq/README.md +++ /dev/null @@ -1,68 +0,0 @@ -# Dnsmasq Install Script - -This folder contains a script for installing [Dnsmasq](http://www.thekelleys.org.uk/dnsmasq/doc.html) and configuring -it to forward requests for a specific domain to Consul. This way, you can easily use Consul as your DNS server for -domain names such as `foo.service.consul`, where `foo` is a service registered with Consul (see the [Registering -Services docs](https://www.consul.io/intro/getting-started/services.html) for instructions on registering your services -with Consul). All other domain names will continue to be resolved via the default resolver on your OS. See the [Consul -DNS Forwarding Guide](https://www.consul.io/docs/guides/forwarding.html) for more info. - -This script has been tested on the following operating systems: - -* Ubuntu 16.04 -* Amazon Linux - -There is a good chance it will work on other flavors of Debian, CentOS, and RHEL as well. - - - -## Quick start - -To install Dnsmasq, use `git` to clone this repository at a specific tag (see the [releases page](../../../../releases) -for all available tags) and run the `install-dnsmasq` script: - -``` -git clone --branch https://github.com/hashicorp/terraform-aws-consul.git -terraform-aws-consul/modules/install-dnsmasq/install-dnsmasq -``` - -Note: by default, the `install-dnsmasq` script assumes that a Consul agent is already running locally and connected to -a Consul cluster. After the install completes, restart `dnsmasq` (e.g. `sudo /etc/init.d/dnsmasq restart`) and queries -to the `.consul` domain will be resolved via Consul: - -``` -dig foo.service.consul -``` - -We recommend running the `install-dnsmasq` script as part of a [Packer](https://www.packer.io/) template to create an -[Amazon Machine Image (AMI)](http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/AMIs.html) (see the -[consul-ami example](https://github.com/hashicorp/terraform-aws-consul/tree/master/examples/consul-ami) for sample code). - - - - -## Command line Arguments - -The `install-dnsmasq` script accepts the following arguments: - -* `consul-domain DOMAIN`: The domain name to point to Consul. Optional. Default: `consul`. -* `consul-ip IP`: The IP address to use for Consul. Optional. Default: `127.0.0.1`. This assumes a Consul agent is - running locally and connected to a Consul cluster. -* `consul-dns-port PORT`: The port Consul uses for DNS requests. Optional. Default: `8600`. - -Example: - -``` -install-dnsmasq -``` - - - - -## Troubleshooting - -Add the `+trace` argument to `dig` commands to more clearly see what's going on: - -``` -dig vault.service.consul +trace -``` \ No newline at end of file diff --git a/tflint/test-fixtures/v0.12.0_module/.terraform/modules/consul/hashicorp-terraform-aws-consul-ee980b4/modules/install-dnsmasq/install-dnsmasq b/tflint/test-fixtures/v0.12.0_module/.terraform/modules/consul/hashicorp-terraform-aws-consul-ee980b4/modules/install-dnsmasq/install-dnsmasq deleted file mode 100755 index c4797c4bb..000000000 --- a/tflint/test-fixtures/v0.12.0_module/.terraform/modules/consul/hashicorp-terraform-aws-consul-ee980b4/modules/install-dnsmasq/install-dnsmasq +++ /dev/null @@ -1,158 +0,0 @@ -#!/bin/bash -# Install Dnsmasq and configure it to forward requests for a specific domain to Consul. This script has been tested -# with the following operating systems: -# -# 1. Ubuntu 16.04 -# 2. Amazon Linux - -set -e - -readonly DEFAULT_CONSUL_DOMAIN="consul" -readonly DEFAULT_CONSUL_IP="127.0.0.1" -readonly DEFAULT_CONSUL_DNS_PORT=8600 - -readonly DNS_MASQ_CONFIG_DIR="/etc/dnsmasq.d" -readonly CONSUL_DNS_MASQ_CONFIG_FILE="$DNS_MASQ_CONFIG_DIR/10-consul" - -readonly SCRIPT_NAME="$(basename "$0")" - -function print_usage { - echo - echo "Usage: install-dnsmasq [OPTIONS]" - echo - echo "Install Dnsmasq and configure it to forward requests for a specific domain to Consul. This script has been tested with Ubuntu 16.04 and Amazon Linux." - echo - echo "Options:" - echo - echo -e " --consul-domain\tThe domain name to point to Consul. Optional. Default: $DEFAULT_CONSUL_DOMAIN." - echo -e " --consul-ip\t\tThe IP address to use for Consul. Optional. Default: $DEFAULT_CONSUL_IP." - echo -e " --consul-dns-port\tThe port Consul uses for DNS. Optional. Default: $DEFAULT_CONSUL_DNS_PORT." - echo - echo "Example:" - echo - echo " install-dnsmasq" -} - -function log { - local readonly level="$1" - local readonly message="$2" - local readonly timestamp=$(date +"%Y-%m-%d %H:%M:%S") - >&2 echo -e "${timestamp} [${level}] [$SCRIPT_NAME] ${message}" -} - -function log_info { - local readonly message="$1" - log "INFO" "$message" -} - -function log_warn { - local readonly message="$1" - log "WARN" "$message" -} - -function log_error { - local readonly message="$1" - log "ERROR" "$message" -} - -function assert_not_empty { - local readonly arg_name="$1" - local readonly arg_value="$2" - - if [[ -z "$arg_value" ]]; then - log_error "The value for '$arg_name' cannot be empty" - print_usage - exit 1 - fi -} - -function has_yum { - [[ -n "$(command -v yum)" ]] -} - -function has_apt_get { - [[ -n "$(command -v apt-get)" ]] -} - -function install_dnsmasq { - local readonly consul_ip="$1" - - log_info "Installing Dnsmasq" - - if $(has_apt_get); then - sudo apt-get update -y - sudo apt-get install -y dnsmasq - elif $(has_yum); then - sudo yum update -y - sudo yum install -y dnsmasq - echo "prepend domain-name-servers $consul_ip;" | sudo tee -a "/etc/dhcp/dhclient.conf" > /dev/null - echo "conf-dir=$DNS_MASQ_CONFIG_DIR" | sudo tee -a "/etc/dnsmasq.conf" > /dev/null - sudo chkconfig dnsmasq on - else - log_error "Could not find apt-get or yum. Cannot install on this OS." - exit 1 - fi -} - -function write_consul_config { - local readonly consul_domain="$1" - local readonly consul_ip="$2" - local readonly consul_port="$3" - - log_info "Configuring Dnsmasq to forward lookups of the '$consul_domain' domain to $consul_ip:$consul_port in $CONSUL_DNS_MASQ_CONFIG_FILE" - mkdir -p "$DNS_MASQ_CONFIG_DIR" - - sudo tee "$CONSUL_DNS_MASQ_CONFIG_FILE" < 0 ]]; do - local key="$1" - - case "$key" in - --consul-domain) - assert_not_empty "$key" "$2" - consul_domain="$2" - shift - ;; - --consul-ip) - assert_not_empty "$key" "$2" - consul_ip="$2" - shift - ;; - --consul-dns-port) - assert_not_empty "$key" "$2" - consul_dns_port="$2" - shift - ;; - --help) - print_usage - exit - ;; - *) - log_error "Unrecognized argument: $key" - print_usage - exit 1 - ;; - esac - - shift - done - - log_info "Starting Dnsmasq install" - install_dnsmasq "$consul_ip" - write_consul_config "$consul_domain" "$consul_ip" "$consul_dns_port" - log_info "Dnsmasq install complete!" -} - -install "$@" diff --git a/tflint/test-fixtures/v0.12.0_module/.terraform/modules/consul/hashicorp-terraform-aws-consul-ee980b4/modules/run-consul/README.md b/tflint/test-fixtures/v0.12.0_module/.terraform/modules/consul/hashicorp-terraform-aws-consul-ee980b4/modules/run-consul/README.md deleted file mode 100644 index 1a8bc7f15..000000000 --- a/tflint/test-fixtures/v0.12.0_module/.terraform/modules/consul/hashicorp-terraform-aws-consul-ee980b4/modules/run-consul/README.md +++ /dev/null @@ -1,225 +0,0 @@ -# Consul Run Script - -This folder contains a script for configuring and running Consul on an [AWS](https://aws.amazon.com/) server. This -script has been tested on the following operating systems: - -* Ubuntu 16.04 -* Amazon Linux - -There is a good chance it will work on other flavors of Debian, CentOS, and RHEL as well. - - - - -## Quick start - -This script assumes you installed it, plus all of its dependencies (including Consul itself), using the [install-consul -module](https://github.com/hashicorp/terraform-aws-consul/tree/master/modules/install-consul). The default install path is `/opt/consul/bin`, so to start Consul in server mode, -you run: - -``` -/opt/consul/bin/run-consul --server -``` - -To start Consul in client mode, you run: - -``` -/opt/consul/bin/run-consul --client -``` - -This will: - -1. Generate a Consul configuration file called `default.json` in the Consul config dir (default: `/opt/consul/config`). - See [Consul configuration](#consul-configuration) for details on what this configuration file will contain and how - to override it with your own configuration. - -1. Generate a [Supervisor](http://supervisord.org/) configuration file called `run-consul.conf` in the Supervisor - config dir (default: `/etc/supervisor/conf.d`) with a command that will run Consul: - `consul agent -config-dir=/opt/consul/config -data-dir=/opt/consul/data`. - -1. Tell Supervisor to load the new configuration file, thereby starting Consul. - -We recommend using the `run-consul` command as part of [User -Data](http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/user-data.html#user-data-shell-scripts), so that it executes -when the EC2 Instance is first booting. After runing `run-consul` on that initial boot, the `supervisord` configuration -will automatically restart Consul if it crashes or the EC2 instance reboots. - -See the [consul-cluster example](https://github.com/hashicorp/terraform-aws-consul/tree/master/MAIN.md) for fully-working sample code. - - - - -## Command line Arguments - -The `run-consul` script accepts the following arguments: - -* `server` (optional): If set, run in server mode. Exactly one of `--server` or `--client` must be set. -* `client` (optional): If set, run in client mode. Exactly one of `--server` or `--client` must be set. -* `cluster-tag-key` (optional): Automatically form a cluster with Instances that have this tag key and the tag value - in `--cluster-tag-value`. -* `cluster-tag-value` (optional): Automatically form a cluster with Instances that have the tag key in - `--cluster-tag-key` and this tag value. -* `config-dir` (optional): The path to the Consul config folder. Default is to take the absolute path of `../config`, - relative to the `run-consul` script itself. -* `data-dir` (optional): The path to the Consul config folder. Default is to take the absolute path of `../data`, - relative to the `run-consul` script itself. -* `user` (optional): The user to run Consul as. Default is to use the owner of `config-dir`. -* `skip-consul-config` (optional): If this flag is set, don't generate a Consul configuration file. This is useful if - you have a custom configuration file and don't want to use any of of the default settings from `run-consul`. - -Example: - -``` -/opt/consul/bin/run-consul --server --cluster-tag-key consul-cluster --cluster-tag-value prod-cluster -``` - - - - -## Consul configuration - -`run-consul` generates a configuration file for Consul called `default.json` that tries to figure out reasonable -defaults for a Consul cluster in AWS. Check out the [Consul Configuration Files -documentation](https://www.consul.io/docs/agent/options.html#configuration-files) for what configuration settings are -available. - - -### Default configuration - -`run-consul` sets the following configuration values by default: - -* [advertise_addr](https://www.consul.io/docs/agent/options.html#advertise_addr): Set to the EC2 Instance's private IP - address, as fetched from [Metadata](http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-instance-metadata.html). - -* [bind_addr](https://www.consul.io/docs/agent/options.html#bind_addr): Set to the EC2 Instance's private IP address, - as fetched from [Metadata](http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-instance-metadata.html). - -* [bootstrap_expect](https://www.consul.io/docs/agent/options.html#bootstrap_expect): If `--server` is set, - set this config based on the EC2 Instance's tags (using the - [describe-tags API](https://docs.aws.amazon.com/cli/latest/reference/ec2/describe-tags.html)): - * If there is a `aws:autoscaling:groupName` tag, that means this EC2 Instance is part of an Auto Scaling Group - (ASG), so set this config to the desired capacity of the ASG (fetched via the [describe-auto-scaling-groups - API](https://docs.aws.amazon.com/cli/latest/reference/autoscaling/describe-auto-scaling-groups.html)). - * Otherwise, log a warning, and set this to 1. This fallback is not recommended! - -* [client_addr](https://www.consul.io/docs/agent/options.html#client_addr): Set to 0.0.0.0 so you can access the client - and UI endpoint on each EC2 Instance from the outside. - -* [datacenter](https://www.consul.io/docs/agent/options.html#datacenter): Set to the current AWS region (e.g. - `us-east-1`), as fetched from [Metadata](http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-instance-metadata.html). - -* [node_name](https://www.consul.io/docs/agent/options.html#node_name): Set to the instance id, as fetched from - [Metadata](http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-instance-metadata.html). - -* [retry_join_ec2](https://www.consul.io/docs/agent/options.html#retry_join_ec2): Look up the EC2 Instances tags - (using the [describe-tags API](https://docs.aws.amazon.com/cli/latest/reference/ec2/describe-tags.html)) and set the - following keys for this setting: - * [tag_key](https://www.consul.io/docs/agent/options.html#tag_key): Set to the value of the `--cluster-tag-key` - argument. - * [tag_value](https://www.consul.io/docs/agent/options.html#tag_value): Set to the value this EC2 Instance has for - the `tag_key`. If the key is not set, then the `retry_join_ec2` setting will NOT be included in the config file. - * [region](https://www.consul.io/docs/agent/options.html#region): Set to the current AWS region (e.g. `us-east-1`), - as fetched from [Metadata](http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-instance-metadata.html). - -* [server](https://www.consul.io/docs/agent/options.html#server): Set to true if `--server` is set. - -* [ui](https://www.consul.io/docs/agent/options.html#ui): Set to true. - - -### Overriding the configuration - -To override the default configuration, simply put your own configuration file in the Consul config folder (default: -`/opt/consul/config`), but with a name that comes later in the alphabet than `default.json` (e.g. -`my-custom-config.json`). Consul will load all the `.json` configuration files in the config dir and -[merge them together in alphabetical order](https://www.consul.io/docs/agent/options.html#_config_dir), so that -settings in files that come later in the alphabet will override the earlier ones. - -For example, to override the default `retry_join_ec2` settings, you could create a file called `tags.json` with the -contents: - -```json -{ - "retry_join_ec2": { - "tag_key": "custom-key", - "tag_value": "custom-value", - "region": "us-west-1" - } -} -``` - -If you want to override *all* the default settings, you can tell `run-consul` not to generate a default config file -at all using the `--skip-consul-config` flag: - -``` -/opt/consul/bin/run-consul --server --skip-consul-config -``` - - -### Required permissions - -The `run-consul` script assumes it is running on an EC2 Instance with an [IAM -Role](http://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles.html) that has the following permissions: - -* `ec2:DescribeInstances` -* `ec2:DescribeTags` -* `autoscaling:DescribeAutoScalingGroups` - -These permissions are automatically added by the [consul-cluster module](https://github.com/hashicorp/terraform-aws-consul/tree/master/modules/consul-cluster). - - - - -## How do you handle encryption? - -Consul can encrypt all of its network traffic (see the [encryption docs for -details](https://www.consul.io/docs/agent/encryption.html)), but by default, encryption is not enabled in this -Module. To enable encryption, you need to do the following: - -1. [Gossip encryption: provide an encryption key](#gossip-encryption-provide-an-encryption-key) -1. [RPC encryption: provide TLS certificates](#rpc-encryption-provide-tls-certificates) - - -### Gossip encryption: provide an encryption key - -To enable Gossip encryption, you need to provide a 16-byte, Base64-encoded encryption key, which you can generate using -the [consul keygen command](https://www.consul.io/docs/commands/keygen.html). You can put the key in a Consul -configuration file (e.g. `encryption.json`) in the Consul config dir (default location: `/opt/consul/config`): - -```json -{ - "encrypt": "cg8StVXbQJ0gPvMd9o7yrg==" -} -``` - - -### RPC encryption: provide TLS certificates - -To enable RPC encryption, you need to provide the paths to the CA and signing keys ([here is a tutorial on generating -these keys](http://russellsimpkins.blogspot.com/2015/10/consul-adding-tls-using-self-signed.html)). You can specify -these paths in a Consul configuration file (e.g. `encryption.json`) in the Consul config dir (default location: -`/opt/consul/config`): - -```json -{ - "ca_file": "/opt/consul/tls/certs/ca-bundle.crt", - "cert_file": "/opt/consul/tls/certs/my.crt", - "key_file": "/opt/consul/tls/private/my.key" -} -``` - -You will also want to set the [verify_incoming](https://www.consul.io/docs/agent/options.html#verify_incoming) and -[verify_outgoing](https://www.consul.io/docs/agent/options.html#verify_outgoing) settings to verify TLS certs on -incoming and outgoing connections, respectively: - -```json -{ - "ca_file": "/opt/consul/tls/certs/ca-bundle.crt", - "cert_file": "/opt/consul/tls/certs/my.crt", - "key_file": "/opt/consul/tls/private/my.key", - "verify_incoming": true, - "verify_outgoing": true -} -``` - - - diff --git a/tflint/test-fixtures/v0.12.0_module/.terraform/modules/consul/hashicorp-terraform-aws-consul-ee980b4/modules/run-consul/run-consul b/tflint/test-fixtures/v0.12.0_module/.terraform/modules/consul/hashicorp-terraform-aws-consul-ee980b4/modules/run-consul/run-consul deleted file mode 100755 index d534d981f..000000000 --- a/tflint/test-fixtures/v0.12.0_module/.terraform/modules/consul/hashicorp-terraform-aws-consul-ee980b4/modules/run-consul/run-consul +++ /dev/null @@ -1,359 +0,0 @@ -#!/bin/bash -# This script is used to configure and run Consul on an AWS server. - -set -e - -readonly AWS_ASG_TAG_KEY="aws:autoscaling:groupName" - -readonly CONSUL_CONFIG_FILE="default.json" -readonly SUPERVISOR_CONFIG_PATH="/etc/supervisor/conf.d/run-consul.conf" - -readonly EC2_INSTANCE_METADATA_URL="http://169.254.169.254/latest/meta-data" -readonly EC2_INSTANCE_DYNAMIC_DATA_URL="http://169.254.169.254/latest/dynamic" - -readonly SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)" -readonly SCRIPT_NAME="$(basename "$0")" - -function print_usage { - echo - echo "Usage: run-consul [OPTIONS]" - echo - echo "This script is used to configure and run Consul on an AWS server." - echo - echo "Options:" - echo - echo -e " --server\t\tIf set, run in server mode. Optional. Exactly one of --server or --client must be set." - echo -e " --client\t\tIf set, run in client mode. Optional. Exactly one of --server or --client must be set." - echo -e " --cluster-tag-key\tAutomatically form a cluster with Instances that have this tag key and the tag value in --cluster-tag-value. Optional." - echo -e " --cluster-tag-value\tAutomatically form a cluster with Instances that have the tag key in --cluster-tag-key and this tag value. Optional." - echo -e " --config-dir\t\tThe path to the Consul config folder. Optional. Default is the absolute path of '../config', relative to this script." - echo -e " --data-dir\t\tThe path to the Consul data folder. Optional. Default is the absolute path of '../data', relative to this script." - echo -e " --log-dir\t\tThe path to the Consul log folder. Optional. Default is the absolute path of '../log', relative to this script." - echo -e " --bin-dir\t\tThe path to the folder with Consul binary. Optional. Default is the absolute path of the parent folder of this script." - echo -e " --user\t\tThe user to run Consul as. Optional. Default is to use the owner of --config-dir." - echo -e " --skip-consul-config\tIf this flag is set, don't generate a Consul configuration file. Optional. Default is false." - echo - echo "Example:" - echo - echo " run-consul --server --config-dir /custom/path/to/consul/config" -} - -function log { - local readonly level="$1" - local readonly message="$2" - local readonly timestamp=$(date +"%Y-%m-%d %H:%M:%S") - >&2 echo -e "${timestamp} [${level}] [$SCRIPT_NAME] ${message}" -} - -function log_info { - local readonly message="$1" - log "INFO" "$message" -} - -function log_warn { - local readonly message="$1" - log "WARN" "$message" -} - -function log_error { - local readonly message="$1" - log "ERROR" "$message" -} - -# Based on code from: http://stackoverflow.com/a/16623897/483528 -function strip_prefix { - local readonly str="$1" - local readonly prefix="$2" - echo "${str#$prefix}" -} - -function assert_not_empty { - local readonly arg_name="$1" - local readonly arg_value="$2" - - if [[ -z "$arg_value" ]]; then - log_error "The value for '$arg_name' cannot be empty" - print_usage - exit 1 - fi -} - -function lookup_path_in_instance_metadata { - local readonly path="$1" - curl --silent --show-error --location "$EC2_INSTANCE_METADATA_URL/$path/" -} - -function lookup_path_in_instance_dynamic_data { - local readonly path="$1" - curl --silent --show-error --location "$EC2_INSTANCE_DYNAMIC_DATA_URL/$path/" -} - -function get_instance_ip_address { - lookup_path_in_instance_metadata "local-ipv4" -} - -function get_instance_id { - lookup_path_in_instance_metadata "instance-id" -} - -function get_instance_region { - lookup_path_in_instance_dynamic_data "instance-identity/document" | jq -r ".region" -} - -function get_instance_tags { - local readonly instance_id="$1" - local readonly instance_region="$2" - - log_info "Looking up tags for Instance $instance_id in $instance_region" - aws ec2 describe-tags --region "$instance_region" --filters "Name=resource-type,Values=instance" "Name=resource-id,Values=${instance_id}" -} - -function get_asg_size { - local readonly asg_name="$1" - local readonly aws_region="$2" - local asg_json="" - - log_info "Looking up the size of the Auto Scaling Group $asg_name in $aws_region" - asg_json=$(aws autoscaling describe-auto-scaling-groups --region "$aws_region" --auto-scaling-group-names "$asg_name") - echo "$asg_json" | jq -r '.AutoScalingGroups[0].DesiredCapacity' -} - -function get_cluster_size { - local readonly instance_tags="$1" - local readonly aws_region="$2" - - local asg_name="" - asg_name=$(get_tag_value "$instance_tags" "$AWS_ASG_TAG_KEY") - if [[ -z "$asg_name" ]]; then - log_warn "This EC2 Instance does not appear to be part of an Auto Scaling Group, so cannot determine cluster size. Setting cluster size to 1." - echo 1 - else - get_asg_size "$asg_name" "$aws_region" - fi -} - -# Get the value for a specific tag from the tags JSON returned by the AWS describe-tags: -# https://docs.aws.amazon.com/cli/latest/reference/ec2/describe-tags.html -function get_tag_value { - local readonly tags="$1" - local readonly tag_key="$2" - - echo "$tags" | jq -r ".Tags[] | select(.Key == \"$tag_key\") | .Value" -} - -function assert_is_installed { - local readonly name="$1" - - if [[ ! $(command -v ${name}) ]]; then - log_error "The binary '$name' is required by this script but is not installed or in the system's PATH." - exit 1 - fi -} - -function generate_consul_config { - local readonly server="$1" - local readonly config_dir="$2" - local readonly user="$3" - local readonly cluster_tag_key="$4" - local readonly cluster_tag_value="$5" - local readonly config_path="$config_dir/$CONSUL_CONFIG_FILE" - - local instance_id="" - local instance_ip_address="" - local instance_region="" - local ui="false" - - instance_id=$(get_instance_id) - instance_ip_address=$(get_instance_ip_address) - instance_region=$(get_instance_region) - - local retry_join_json="" - if [[ -z "$cluster_tag_key" || -z "$cluster_tag_value" ]]; then - log_warn "Either the cluster tag key ($cluster_tag_key) or value ($cluster_tag_value) is empty. Will not automatically try to form a cluster based on EC2 tags." - else - retry_join_json=$(cat < "$config_path" < "$supervisor_config_path" < 0 ]]; do - local key="$1" - - case "$key" in - --server) - server="true" - ;; - --client) - client="true" - ;; - --config-dir) - assert_not_empty "$key" "$2" - config_dir="$2" - shift - ;; - --data-dir) - assert_not_empty "$key" "$2" - data_dir="$2" - shift - ;; - --log-dir) - assert_not_empty "$key" "$2" - log_dir="$2" - shift - ;; - --bin-dir) - assert_not_empty "$key" "$2" - bin_dir="$2" - shift - ;; - --user) - assert_not_empty "$key" "$2" - user="$2" - shift - ;; - --cluster-tag-key) - assert_not_empty "$key" "$2" - cluster_tag_key="$2" - shift - ;; - --cluster-tag-value) - assert_not_empty "$key" "$2" - cluster_tag_value="$2" - shift - ;; - --skip-consul-config) - skip_consul_config="true" - ;; - --help) - print_usage - exit - ;; - *) - log_error "Unrecognized argument: $key" - print_usage - exit 1 - ;; - esac - - shift - done - - if [[ ("$server" == "true" && "$client" == "true") || ("$server" == "false" && "$client" == "false") ]]; then - log_error "Exactly one of --server or --client must be set." - exit 1 - fi - - assert_is_installed "supervisorctl" - assert_is_installed "aws" - assert_is_installed "curl" - assert_is_installed "jq" - - if [[ -z "$config_dir" ]]; then - config_dir=$(cd "$SCRIPT_DIR/../config" && pwd) - fi - - if [[ -z "$data_dir" ]]; then - data_dir=$(cd "$SCRIPT_DIR/../data" && pwd) - fi - - if [[ -z "$log_dir" ]]; then - log_dir=$(cd "$SCRIPT_DIR/../log" && pwd) - fi - - if [[ -z "$bin_dir" ]]; then - bin_dir=$(cd "$SCRIPT_DIR/../bin" && pwd) - fi - - if [[ -z "$user" ]]; then - user=$(get_owner_of_path "$config_dir") - fi - - if [[ "$skip_consul_config" == "true" ]]; then - log_info "The --skip-consul-config flag is set, so will not generate a default Consul config file." - else - generate_consul_config "$server" "$config_dir" "$user" "$cluster_tag_key" "$cluster_tag_value" - fi - - generate_supervisor_config "$SUPERVISOR_CONFIG_PATH" "$config_dir" "$data_dir" "$log_dir" "$bin_dir" "$user" - start_consul -} - -run "$@" \ No newline at end of file diff --git a/tflint/test-fixtures/v0.12.0_module/.terraform/modules/consul/hashicorp-terraform-aws-consul-ee980b4/outputs.tf b/tflint/test-fixtures/v0.12.0_module/.terraform/modules/consul/hashicorp-terraform-aws-consul-ee980b4/outputs.tf deleted file mode 100644 index d6b72c1e8..000000000 --- a/tflint/test-fixtures/v0.12.0_module/.terraform/modules/consul/hashicorp-terraform-aws-consul-ee980b4/outputs.tf +++ /dev/null @@ -1,59 +0,0 @@ -output "num_servers" { - value = "${module.consul_servers.cluster_size}" -} - -output "asg_name_servers" { - value = "${module.consul_servers.asg_name}" -} - -output "launch_config_name_servers" { - value = "${module.consul_servers.launch_config_name}" -} - -output "iam_role_arn_servers" { - value = "${module.consul_servers.iam_role_arn}" -} - -output "iam_role_id_servers" { - value = "${module.consul_servers.iam_role_id}" -} - -output "security_group_id_servers" { - value = "${module.consul_servers.security_group_id}" -} - -output "num_clients" { - value = "${module.consul_clients.cluster_size}" -} - -output "asg_name_clients" { - value = "${module.consul_clients.asg_name}" -} - -output "launch_config_name_clients" { - value = "${module.consul_clients.launch_config_name}" -} - -output "iam_role_arn_clients" { - value = "${module.consul_clients.iam_role_arn}" -} - -output "iam_role_id_clients" { - value = "${module.consul_clients.iam_role_id}" -} - -output "security_group_id_clients" { - value = "${module.consul_clients.security_group_id}" -} - -output "aws_region" { - value = "${var.aws_region}" -} - -output "consul_servers_cluster_tag_key" { - value = "${module.consul_servers.cluster_tag_key}" -} - -output "consul_servers_cluster_tag_value" { - value = "${module.consul_servers.cluster_tag_value}" -} diff --git a/tflint/test-fixtures/v0.12.0_module/.terraform/modules/consul/hashicorp-terraform-aws-consul-ee980b4/test/README.md b/tflint/test-fixtures/v0.12.0_module/.terraform/modules/consul/hashicorp-terraform-aws-consul-ee980b4/test/README.md deleted file mode 100644 index 3b74a5801..000000000 --- a/tflint/test-fixtures/v0.12.0_module/.terraform/modules/consul/hashicorp-terraform-aws-consul-ee980b4/test/README.md +++ /dev/null @@ -1,64 +0,0 @@ -# Tests - -This folder contains automated tests for this Module. All of the tests are written in [Go](https://golang.org/). -Most of these are "integration tests" that deploy real infrastructure using Terraform and verify that infrastructure -works as expected using a helper library called [Terratest](https://github.com/gruntwork-io/terratest). - - - -## WARNING WARNING WARNING - -**Note #1**: Many of these tests create real resources in an AWS account and then try to clean those resources up at -the end of a test run. That means these tests may cost you money to run! When adding tests, please be considerate of -the resources you create and take extra care to clean everything up when you're done! - -**Note #2**: Never forcefully shut the tests down (e.g. by hitting `CTRL + C`) or the cleanup tasks won't run! - -**Note #3**: We set `-timeout 60m` on all tests not because they necessarily take that long, but because Go has a -default test timeout of 10 minutes, after which it forcefully kills the tests with a `SIGQUIT`, preventing the cleanup -tasks from running. Therefore, we set an overlying long timeout to make sure all tests have enough time to finish and -clean up. - - - -## Running the tests - -### Prerequisites - -- Install the latest version of [Go](https://golang.org/). -- Install [glide](https://glide.sh/) for Go dependency management. -- Install [Terraform](https://www.terraform.io/downloads.html). -- Configure your AWS credentials using one of the [options supported by the AWS - SDK](http://docs.aws.amazon.com/sdk-for-java/v1/developer-guide/credentials.html). Usually, the easiest option is to - set the `AWS_ACCESS_KEY_ID` and `AWS_SECRET_ACCESS_KEY` environment variables. - - -### One-time setup - -Download Go dependencies using glide: - -``` -cd test -glide install -``` - - -### Run all the tests - -```bash -cd test -go test -v -timeout 60m -``` - - -### Run a specific test - -To run a specific test called `TestFoo`: - -```bash -cd test -go test -v -timeout 60m -run TestFoo -``` - - - \ No newline at end of file diff --git a/tflint/test-fixtures/v0.12.0_module/.terraform/modules/consul/hashicorp-terraform-aws-consul-ee980b4/test/aws_helpers.go b/tflint/test-fixtures/v0.12.0_module/.terraform/modules/consul/hashicorp-terraform-aws-consul-ee980b4/test/aws_helpers.go deleted file mode 100644 index 0d8162199..000000000 --- a/tflint/test-fixtures/v0.12.0_module/.terraform/modules/consul/hashicorp-terraform-aws-consul-ee980b4/test/aws_helpers.go +++ /dev/null @@ -1,81 +0,0 @@ -package test - -import ( - "testing" - "github.com/aws/aws-sdk-go/service/autoscaling" - "github.com/aws/aws-sdk-go/aws/session" - "github.com/aws/aws-sdk-go/aws" - "github.com/aws/aws-sdk-go/aws/defaults" - "github.com/aws/aws-sdk-go/service/ec2" -) - -// Get the IP address from a randomly chosen EC2 Instance in an Auto Scaling Group of the given name in the given -// region -func getIpAddressOfAsgInstance(t *testing.T, asgName string, awsRegion string) string { - instanceId := getIdOfAsgInstance(t, asgName, awsRegion) - return getPublicIpOfInstance(t, instanceId, awsRegion) -} - -// Get the ID of a a randomly chosen EC2 Instance in an Auto Scaling Group of the given name in the given region -func getIdOfAsgInstance(t *testing.T, asgName string, awsRegion string) string { - autoscalingClient := createAutoscalingClient(t, awsRegion) - - input := autoscaling.DescribeAutoScalingGroupsInput{AutoScalingGroupNames: []*string{aws.String(asgName)}} - output, err := autoscalingClient.DescribeAutoScalingGroups(&input) - if err != nil { - t.Fatalf("Failed to call DescribeAutoScalingGroupsInput API due to error: %v", err) - } - - for _, asg := range output.AutoScalingGroups { - for _, instance := range asg.Instances { - return *instance.InstanceId - } - } - - t.Fatalf("Could not find any Instance Ids for ASG %s: %v", asgName, output) - return "" -} - -// Get the public IP address of the given EC2 Instnace in the given region -func getPublicIpOfInstance(t *testing.T, instanceId string, awsRegion string) string { - ec2Client := createEc2Client(t, awsRegion) - - input := ec2.DescribeInstancesInput{InstanceIds: []*string{aws.String(instanceId)}} - output, err := ec2Client.DescribeInstances(&input) - if err != nil { - t.Fatalf("Failed to fetch information about EC2 Instance %s due to error: %v", instanceId, err) - } - - for _, reserveration := range output.Reservations { - for _, instance := range reserveration.Instances { - return *instance.PublicIpAddress - } - } - - t.Fatalf("Failed to find public IP address for EC2 Instance %s: %v", instanceId, output) - return "" -} - -// Create a client that can be used to make EC2 API calls -func createEc2Client(t *testing.T, awsRegion string) *ec2.EC2 { - awsConfig := createAwsConfig(t, awsRegion) - return ec2.New(session.New(), awsConfig) -} - -// Create a client that can be used to make Auto Scaling API calls -func createAutoscalingClient(t *testing.T, awsRegion string) *autoscaling.AutoScaling { - awsConfig := createAwsConfig(t, awsRegion) - return autoscaling.New(session.New(), awsConfig) -} - -// Create an AWS config. This method will check for credentials and fail the test if it can't find them. -func createAwsConfig(t *testing.T, awsRegion string) *aws.Config { - config := defaults.Get().Config.WithRegion(awsRegion) - - _, err := config.Credentials.Get() - if err != nil { - t.Fatalf("Error finding AWS credentials (did you set the AWS_ACCESS_KEY_ID and AWS_SECRET_ACCESS_KEY environment variables?). Underlying error: %v", err) - } - - return config -} diff --git a/tflint/test-fixtures/v0.12.0_module/.terraform/modules/consul/hashicorp-terraform-aws-consul-ee980b4/test/consul_cluster_test.go b/tflint/test-fixtures/v0.12.0_module/.terraform/modules/consul/hashicorp-terraform-aws-consul-ee980b4/test/consul_cluster_test.go deleted file mode 100644 index 105e9c780..000000000 --- a/tflint/test-fixtures/v0.12.0_module/.terraform/modules/consul/hashicorp-terraform-aws-consul-ee980b4/test/consul_cluster_test.go +++ /dev/null @@ -1,16 +0,0 @@ -package test - -import ( - "testing" -) - -func TestConsulClusterWithUbuntuAmi(t *testing.T) { - t.Parallel() - runConsulClusterTest(t, "TestConsulUbuntu", "ubuntu16-ami") -} - -func TestConsulClusterWithAmazonLinuxAmi(t *testing.T) { - t.Parallel() - runConsulClusterTest(t, "TestConsulAmznLnx", "amazon-linux-ami") -} - diff --git a/tflint/test-fixtures/v0.12.0_module/.terraform/modules/consul/hashicorp-terraform-aws-consul-ee980b4/test/consul_helpers.go b/tflint/test-fixtures/v0.12.0_module/.terraform/modules/consul/hashicorp-terraform-aws-consul-ee980b4/test/consul_helpers.go deleted file mode 100644 index 82ef2c5f6..000000000 --- a/tflint/test-fixtures/v0.12.0_module/.terraform/modules/consul/hashicorp-terraform-aws-consul-ee980b4/test/consul_helpers.go +++ /dev/null @@ -1,131 +0,0 @@ -package test - -import ( - "github.com/gruntwork-io/terratest" - "testing" - "os" - terralog "github.com/gruntwork-io/terratest/log" - "log" - "github.com/gruntwork-io/terratest/util" - "time" - "fmt" - "github.com/hashicorp/consul/api" - "path/filepath" - "errors" -) - -const REPO_ROOT = "../" -const CONSUL_CLUSTER_EXAMPLE_REL_PATH = "examples/consul-cluster" -const CONSUL_CLUSTER_EXAMPLE_VAR_AMI_ID = "ami_id" -const CONSUL_CLUSTER_EXAMPLE_VAR_AWS_REGION = "aws_region" -const CONSUL_CLUSTER_EXAMPLE_VAR_CLUSTER_NAME = "cluster_name" -const CONSUL_CLUSTER_EXAMPLE_VAR_NUM_SERVERS = "num_servers" -const CONSUL_CLUSTER_EXAMPLE_VAR_NUM_CLIENTS = "num_clients" - -const CONSUL_CLUSTER_EXAMPLE_DEFAULT_NUM_SERVERS = 3 -const CONSUL_CLUSTER_EXAMPLE_DEFAULT_NUM_CLIENTS = 6 - -const CONSUL_CLUSTER_EXAMPLE_OUTPUT_SERVER_ASG_NAME = "asg_name_servers" -const CONSUL_CLUSTER_EXAMPLE_OUTPUT_CLIENT_ASG_NAME = "asg_name_clients" - -const CONSUL_AMI_EXAMPLE_PATH = "../examples/consul-ami/consul.json" - -// Test the consul-cluster example by: -// -// 1. Copying the code in this repo to a temp folder so tests on the Terraform code can run in parallel without the -// state files overwriting each other. -// 2. Building the AMI in the consul-ami example with the given build name -// 3. Deploying that AMI using the consul-cluster Terraform code -// 4. Checking that the Consul cluster comes up within a reasonable time period and can respond to requests -func runConsulClusterTest(t *testing.T, testName string, packerBuildName string) { - rootTempPath := copyRepoToTempFolder(t, REPO_ROOT) - defer os.RemoveAll(rootTempPath) - - resourceCollection := createBaseRandomResourceCollection(t) - terratestOptions := createBaseTerratestOptions(t, testName, filepath.Join(rootTempPath, CONSUL_CLUSTER_EXAMPLE_REL_PATH), resourceCollection) - defer terratest.Destroy(terratestOptions, resourceCollection) - - logger := terralog.NewLogger(testName) - amiId := buildAmi(t, CONSUL_AMI_EXAMPLE_PATH, packerBuildName, resourceCollection, logger) - - terratestOptions.Vars = map[string]interface{} { - CONSUL_CLUSTER_EXAMPLE_VAR_AWS_REGION: resourceCollection.AwsRegion, - CONSUL_CLUSTER_EXAMPLE_VAR_CLUSTER_NAME: testName + resourceCollection.UniqueId, - CONSUL_CLUSTER_EXAMPLE_VAR_NUM_SERVERS: CONSUL_CLUSTER_EXAMPLE_DEFAULT_NUM_SERVERS, - CONSUL_CLUSTER_EXAMPLE_VAR_NUM_CLIENTS: CONSUL_CLUSTER_EXAMPLE_DEFAULT_NUM_CLIENTS, - CONSUL_CLUSTER_EXAMPLE_VAR_AMI_ID: amiId, - } - - deploy(t, terratestOptions) - - // Check the Consul servers - checkConsulClusterIsWorking(t, CONSUL_CLUSTER_EXAMPLE_OUTPUT_SERVER_ASG_NAME, terratestOptions, resourceCollection, logger) - - // Check the Consul clients - checkConsulClusterIsWorking(t, CONSUL_CLUSTER_EXAMPLE_OUTPUT_CLIENT_ASG_NAME, terratestOptions, resourceCollection, logger) -} - -// Check that the Consul cluster comes up within a reasonable time period and can respond to requests -func checkConsulClusterIsWorking(t *testing.T, asgNameOutputVar string, terratestOptions *terratest.TerratestOptions, resourceCollection *terratest.RandomResourceCollection, logger *log.Logger) { - asgName, err := terratest.Output(terratestOptions, asgNameOutputVar) - if err != nil { - t.Fatalf("Could not read output %s due to error: %v", asgNameOutputVar, err) - } - - nodeIpAddress := getIpAddressOfAsgInstance(t, asgName, resourceCollection.AwsRegion) - testConsulCluster(t, nodeIpAddress, logger) -} - -// Use a Consul client to connect to the given node and use it to verify that: -// -// 1. The Consul cluster has deployed -// 2. The cluster has the expected number of members -// 3. The cluster has elected a leader -func testConsulCluster(t *testing.T, nodeIpAddress string, logger *log.Logger) { - consulClient := createConsulClient(t, nodeIpAddress) - maxRetries := 60 - sleepBetweenRetries := 10 * time.Second - expectedMembers := CONSUL_CLUSTER_EXAMPLE_DEFAULT_NUM_CLIENTS + CONSUL_CLUSTER_EXAMPLE_DEFAULT_NUM_SERVERS - - leader, err := util.DoWithRetry("Check Consul members", maxRetries, sleepBetweenRetries, logger, func() (string, error) { - members, err := consulClient.Agent().Members(false) - if err != nil { - return "", err - } - - if len(members) != expectedMembers { - return "", fmt.Errorf("Expected the cluster to have %d members, but found %d", expectedMembers, len(members)) - } - - leader, err := consulClient.Status().Leader() - if err != nil { - return "", err - } - - if leader == "" { - return "", errors.New("Consul cluster returned an empty leader response, so a leader must not have been elected yet.") - } - - return leader, nil - }) - - if err != nil { - t.Fatalf("Could not verify Consul node at %s was working: %v", nodeIpAddress, err) - } - - logger.Printf("Consul cluster is properly deployed and has elected leader %s", leader) -} - -// Create a Consul client -func createConsulClient(t *testing.T, ipAddress string) *api.Client { - config := api.DefaultConfig() - config.Address = fmt.Sprintf("%s:8500", ipAddress) - config.HttpClient.Timeout = 5 * time.Second - - client, err := api.NewClient(config) - if err != nil { - t.Fatalf("Failed to create Consul client due to error: %v", err) - } - - return client -} diff --git a/tflint/test-fixtures/v0.12.0_module/.terraform/modules/consul/hashicorp-terraform-aws-consul-ee980b4/test/file_helpers.go b/tflint/test-fixtures/v0.12.0_module/.terraform/modules/consul/hashicorp-terraform-aws-consul-ee980b4/test/file_helpers.go deleted file mode 100644 index 2c735eaa4..000000000 --- a/tflint/test-fixtures/v0.12.0_module/.terraform/modules/consul/hashicorp-terraform-aws-consul-ee980b4/test/file_helpers.go +++ /dev/null @@ -1,73 +0,0 @@ -package test - -import ( - "os" - "path/filepath" - "testing" - "io/ioutil" - "strings" -) - -// Copy the files in the given path to a temp folder and return the path to that temp folder. We do this so -// we can run tests in parallel on the same Terraform code without their state files overwriting each other. -func copyRepoToTempFolder(t *testing.T, path string) string { - tmpPath, err := ioutil.TempDir("", "terraform-aws-consul-test") - if err != nil { - t.Fatalf("Failed to create temp folder due to error: %v", err) - } - - copyFolderContents(t, path, tmpPath) - return tmpPath -} - -// Copy the files and folders within the source folder into the destination folder. Note that this method skips hidden -// files and folders (those that have names starting with a dot). -func copyFolderContents(t *testing.T, source string, destination string) { - files, err := ioutil.ReadDir(source) - if err != nil { - t.Fatalf("Unable to read source folder %s due to error: %v", source, err) - } - - for _, file := range files { - if strings.HasPrefix(file.Name(), ".") { - // Don't copy any hidden files and folders, such as a local .terraform folder - continue - } - - src := filepath.Join(source, file.Name()) - dest := filepath.Join(destination, file.Name()) - - if file.IsDir() { - if err := os.MkdirAll(dest, file.Mode()); err != nil { - t.Fatalf("Unable to create folder %s due to error: %v", dest, err) - } - - copyFolderContents(t, src, dest) - } else { - copyFile(t, src, dest) - } - } -} - -// Copy a file from source to destination -func copyFile(t *testing.T, source string, destination string) { - contents, err := ioutil.ReadFile(source) - if err != nil { - t.Fatalf("Failed to read file %s due to error: %v", source, err) - } - - writeFileWithSamePermissions(t, source, destination, contents) -} - -// Write a file to the given destination with the given contents using the same permissions as the file at source -func writeFileWithSamePermissions(t *testing.T, source string, destination string, contents []byte) { - fileInfo, err := os.Stat(source) - if err != nil { - t.Fatalf("Failed to stat file %s due to error: %v", source, err) - } - - err = ioutil.WriteFile(destination, contents, fileInfo.Mode()) - if err != nil { - t.Fatalf("Failed to write file to %s due to error: %v", destination, err) - } -} diff --git a/tflint/test-fixtures/v0.12.0_module/.terraform/modules/consul/hashicorp-terraform-aws-consul-ee980b4/test/glide.lock b/tflint/test-fixtures/v0.12.0_module/.terraform/modules/consul/hashicorp-terraform-aws-consul-ee980b4/test/glide.lock deleted file mode 100644 index bf290cc02..000000000 --- a/tflint/test-fixtures/v0.12.0_module/.terraform/modules/consul/hashicorp-terraform-aws-consul-ee980b4/test/glide.lock +++ /dev/null @@ -1,76 +0,0 @@ -hash: f38e62718041e47af9190ec143aecb9a2f2f2aa9cc93ce731ba99d2f9f299b6d -updated: 2017-05-23T11:12:30.963822781-07:00 -imports: -- name: github.com/aws/aws-sdk-go - version: 00fb2125993965df739fa3398b03bef3eb2e198f - subpackages: - - aws - - aws/awserr - - aws/awsutil - - aws/client - - aws/client/metadata - - aws/corehandlers - - aws/credentials - - aws/credentials/ec2rolecreds - - aws/credentials/endpointcreds - - aws/credentials/stscreds - - aws/defaults - - aws/ec2metadata - - aws/endpoints - - aws/request - - aws/service/autoscaling - - aws/service/ec2 - - aws/session - - aws/signer/v4 - - private/protocol - - private/protocol/ec2query - - private/protocol/json/jsonutil - - private/protocol/jsonrpc - - private/protocol/query - - private/protocol/query/queryutil - - private/protocol/rest - - private/protocol/restxml - - private/protocol/xml/xmlutil - - private/waiter - - service/autoscaling - - service/cloudwatchlogs - - service/ec2 - - service/iam - - service/s3 - - service/sns - - service/sts -- name: github.com/go-ini/ini - version: 6e4869b434bd001f6983749881c7ead3545887d8 -- name: github.com/gruntwork-io/terratest - version: ed788d28c4e7f797af1113f34ae386a5409594de - repo: git@github.com:gruntwork-io/terratest - vcs: git - subpackages: - - aws - - http - - log - - packer - - parallel - - shell - - terraform - - util -- name: github.com/hashicorp/consul - version: 402636ff2db998edef392ac6d59210d2170b3ebf - subpackages: - - api -- name: github.com/hashicorp/go-cleanhttp - version: 3573b8b52aa7b37b9358d966a898feb387f62437 -- name: github.com/hashicorp/serf - version: 4ead4a687cd1ab811863b3db05ed56a8032cff71 - subpackages: - - coordinate -- name: github.com/jmespath/go-jmespath - version: bd40a432e4c76585ef6b72d3fd96fb9b6dc7b68d -- name: golang.org/x/crypto - version: 05d11b2ca14108dfc7f74f4f66b28c7fe92e1fd0 - subpackages: - - curve25519 - - ed25519 - - ed25519/internal/edwards25519 - - ssh -testImports: [] diff --git a/tflint/test-fixtures/v0.12.0_module/.terraform/modules/consul/hashicorp-terraform-aws-consul-ee980b4/test/glide.yaml b/tflint/test-fixtures/v0.12.0_module/.terraform/modules/consul/hashicorp-terraform-aws-consul-ee980b4/test/glide.yaml deleted file mode 100644 index 45f1bc415..000000000 --- a/tflint/test-fixtures/v0.12.0_module/.terraform/modules/consul/hashicorp-terraform-aws-consul-ee980b4/test/glide.yaml +++ /dev/null @@ -1,19 +0,0 @@ -package: github.com/hashicorp/terraform-aws-consul/test -owners: -- name: Gruntwork - homepage: http://www.gruntwork.io -import: -- package: github.com/gruntwork-io/terratest - repo: git@github.com:gruntwork-io/terratest - vcs: git - version: v0.4.1 -- package: github.com/hashicorp/consul - version: v0.8.0 -- package: github.com/aws/aws-sdk-go - version: v1.6.27 - subpackages: - - aws - - aws/defaults - - aws/session - - aws/service/ec2 - - aws/service/autoscaling diff --git a/tflint/test-fixtures/v0.12.0_module/.terraform/modules/consul/hashicorp-terraform-aws-consul-ee980b4/test/terratest_helpers.go b/tflint/test-fixtures/v0.12.0_module/.terraform/modules/consul/hashicorp-terraform-aws-consul-ee980b4/test/terratest_helpers.go deleted file mode 100644 index 74f98e0a7..000000000 --- a/tflint/test-fixtures/v0.12.0_module/.terraform/modules/consul/hashicorp-terraform-aws-consul-ee980b4/test/terratest_helpers.go +++ /dev/null @@ -1,63 +0,0 @@ -package test - -import ( - "github.com/gruntwork-io/terratest/packer" - "github.com/gruntwork-io/terratest" - "log" - "testing" -) - -const CONSUL_AMI_TEMPLATE_VAR_REGION = "aws_region" - -// Deploy the given terraform code -func deploy(t *testing.T, terratestOptions *terratest.TerratestOptions) { - _, err := terratest.Apply(terratestOptions) - if err != nil { - t.Fatalf("Failed to apply templates: %s", err.Error()) - } -} - -// Use Packer to build the AMI in the given packer template, with the given build name, and return the AMI's ID -func buildAmi(t *testing.T, packerTemplatePath string, packerBuildName string, resourceCollection *terratest.RandomResourceCollection, logger *log.Logger) string { - options := packer.PackerOptions{ - Template: packerTemplatePath, - Only: packerBuildName, - Vars: map[string]string{ - CONSUL_AMI_TEMPLATE_VAR_REGION: resourceCollection.AwsRegion, - }, - } - - amiId, err := packer.BuildAmi(options, logger) - if err != nil { - t.Fatalf("Failed to build AMI for Packer template %s: %s", packerTemplatePath, err.Error()) - } - if amiId == "" { - t.Fatalf("Got blank AMI ID after building Packer template %s", packerTemplatePath) - } - - return amiId -} - -// Create the basic RandomResourceCollection for testing the consul-cluster example -func createBaseRandomResourceCollection(t *testing.T) *terratest.RandomResourceCollection { - resourceCollectionOptions := terratest.NewRandomResourceCollectionOptions() - - randomResourceCollection, err := terratest.CreateRandomResourceCollection(resourceCollectionOptions) - if err != nil { - t.Fatalf("Failed to create Random Resource Collection: %s", err.Error()) - } - - return randomResourceCollection -} - -// Create the basic TerratestOptions for testing the consul-cluster example -func createBaseTerratestOptions(t *testing.T, testName string, templatePath string, resourceCollection *terratest.RandomResourceCollection) *terratest.TerratestOptions { - terratestOptions := terratest.NewTerratestOptions() - - terratestOptions.UniqueId = resourceCollection.UniqueId - terratestOptions.TemplatePath = templatePath - terratestOptions.TestName = testName - - return terratestOptions -} - diff --git a/tflint/test-fixtures/v0.12.0_module/.terraform/modules/consul/hashicorp-terraform-aws-consul-ee980b4/variables.tf b/tflint/test-fixtures/v0.12.0_module/.terraform/modules/consul/hashicorp-terraform-aws-consul-ee980b4/variables.tf deleted file mode 100644 index 7ac35096b..000000000 --- a/tflint/test-fixtures/v0.12.0_module/.terraform/modules/consul/hashicorp-terraform-aws-consul-ee980b4/variables.tf +++ /dev/null @@ -1,52 +0,0 @@ -# --------------------------------------------------------------------------------------------------------------------- -# ENVIRONMENT VARIABLES -# Define these secrets as environment variables -# --------------------------------------------------------------------------------------------------------------------- - -# AWS_ACCESS_KEY_ID -# AWS_SECRET_ACCESS_KEY - -# --------------------------------------------------------------------------------------------------------------------- -# OPTIONAL PARAMETERS -# These parameters have reasonable defaults. -# --------------------------------------------------------------------------------------------------------------------- - -variable "ami_id" { - description = "The ID of the AMI to run in the cluster. This should be an AMI built from the Packer template under examples/consul-ami/consul.json. To keep this example simple, we run the same AMI on both server and client nodes, but in real-world usage, your client nodes would also run your apps. If the default value is used, Terraform will look up the latest AMI build automatically." - default = "" -} - -variable "aws_region" { - description = "The AWS region to deploy into (e.g. us-east-1)." - default = "us-east-1" -} - -variable "cluster_name" { - description = "What to name the Consul cluster and all of its associated resources" - default = "consul-example" -} - -variable "num_servers" { - description = "The number of Consul server nodes to deploy. We strongly recommend using 3 or 5." - default = 3 -} - -variable "num_clients" { - description = "The number of Consul client nodes to deploy. You typically run the Consul client alongside your apps, so set this value to however many Instances make sense for your app code." - default = 6 -} - -variable "cluster_tag_key" { - description = "The tag the EC2 Instances will look for to automatically discover each other and form a cluster." - default = "consul-servers" -} - -variable "ssh_key_name" { - description = "The name of an EC2 Key Pair that can be used to SSH to the EC2 Instances in this cluster. Set to an empty string to not associate a Key Pair." - default = "" -} - -variable "vpc_id" { - description = "The ID of the VPC in which the nodes will be deployed. Uses default VPC if not supplied." - default = "" -} \ No newline at end of file diff --git a/tflint/test-fixtures/v0.12.0_module/.terraform/modules/ecs_on_spotfleet/.gitignore b/tflint/test-fixtures/v0.12.0_module/.terraform/modules/ecs_on_spotfleet/.gitignore deleted file mode 100644 index f0892a44b..000000000 --- a/tflint/test-fixtures/v0.12.0_module/.terraform/modules/ecs_on_spotfleet/.gitignore +++ /dev/null @@ -1,11 +0,0 @@ -# Local .terraform directories -**/.terraform/* - -# .tfstate files -*.tfstate -*.tfstate.* - -# .tfvars files -*.tfvars - -cli/template.tf diff --git a/tflint/test-fixtures/v0.12.0_module/.terraform/modules/ecs_on_spotfleet/LICENSE b/tflint/test-fixtures/v0.12.0_module/.terraform/modules/ecs_on_spotfleet/LICENSE deleted file mode 100644 index 15d9baf73..000000000 --- a/tflint/test-fixtures/v0.12.0_module/.terraform/modules/ecs_on_spotfleet/LICENSE +++ /dev/null @@ -1,22 +0,0 @@ -The MIT License (MIT) - -Copyright (c) 2016 Kazuma Watanabe - -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included in -all copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -THE SOFTWARE. -Contact GitHub API Training Shop Blog About diff --git a/tflint/test-fixtures/v0.12.0_module/.terraform/modules/ecs_on_spotfleet/README.md b/tflint/test-fixtures/v0.12.0_module/.terraform/modules/ecs_on_spotfleet/README.md deleted file mode 100644 index 27ded5523..000000000 --- a/tflint/test-fixtures/v0.12.0_module/.terraform/modules/ecs_on_spotfleet/README.md +++ /dev/null @@ -1,90 +0,0 @@ -# Amazon ECS on Spot Fleet Terraform module - -[![MIT License](http://img.shields.io/badge/license-MIT-blue.svg?style=flat)](LICENSE) - -A terraform module for create ECS on Spot Fleet. This is a demo repository. -The outline is as following: - -* Bid on Spot Fleet and launch instances that spans two AZs. -* Started instances constitute an ECS cluster. -* Invoked containers support dynamic port mapping by ALB. - -## Quick Start - -By using the bundled ruby script, you can try ECS on Spot Fleet fastest. - -``` -$ git clone https://github.com/terraform-linters/tf_aws_ecs_on_spotfleet.git -$ cd tf_aws_ecs_on_spotfleet/cli -$ bundle install -$ ruby wizard.rb generate - create template.tf -$ terraform init -$ terraform apply -``` - -This script generates Terraform template. By default, it requests the cheapest spot price with the two subnets in default VPC on `us-east-1`. Also, if you do not have a key pair in us-east-1, it will automatically generate `demo-app.pem`. Since AWS credentials are required for this operation, please use environment variables or shared credentials. - -If you want to delete this cluster, please run the following: - -``` -$ terraform destroy -``` - -## Module Input Variables - -**Required** - -* `vpc` - VPC id for ECS cluster -* `subnets` - List of subnet ids for ECS cluster, please choose 2 subnets -* `key_name` - Name of key pair for SSH login to ECS cluster instances - -**Optional** - -* `ami` - ECS cluster instance AMI id, default is Amazon ECS-optimized AMI in `us-east-1` -* `app_name` - Your application name, default is `demo-app` -* `image` - Your docker image name, default it ECS PHP Simple App -* `container_port` - Port number exposed by container, default is 80 -* `service_count` - Number of containers, default is 3 -* `cpu_unit` - Number of cpu_units for container, default is 128 -* `memory` - Number of memory for container, default is 128 -* `spot_prices` - Bid amount to spot fleet, please choose 2 prices, default is `$0.03` -* `strategy` - Instance placement strategy name, default is `diversified` -* `instance_count` - Number of instances, default is 3 -* `instance_type` - Instance type launched by Spot Fleet. default is `m3.medium` -* `volume_size` - Root volume size, default is 16 -* `https` - Whether the load balancer should listen to https requests, default is `false` -* `app_certificate_arn` - The ARN of the ssl certificate, default is empty -* `app_ssl_policy` - The ssl policy, default is `ELBSecurityPolicy-2015-05` -* `valid_until` - limit of Spot Fleet request, default is `2020-12-15T00:00:00Z` - -## Usage - -Like other modules, you can easily start ECS cluster by adding this module to your template with required parameters. - -```hcl -provider "aws" { - region = "us-east-1" -} - -module "ecs_on_spotfleet" { - source = "github.com/terraform-linters/tf_aws_ecs_on_spotfleet" - - vpc = "vpc-12345" - subnets = ["subnet-12345", "subnet-abcde"] - spot_prices = ["0.03", "0.02"] - key_name = "demo-app" -} - -output "endpoint" { - value = "${module.ecs_on_spotfleet.endpoint}" -} -``` - -## Customize - -This module is very simple, please remodel and create your own module. - -## Author - -[Kazuma Watanabe](https://github.com/terraform-linters) diff --git a/tflint/test-fixtures/v0.12.0_module/.terraform/modules/ecs_on_spotfleet/alb.tf b/tflint/test-fixtures/v0.12.0_module/.terraform/modules/ecs_on_spotfleet/alb.tf deleted file mode 100644 index 951732c28..000000000 --- a/tflint/test-fixtures/v0.12.0_module/.terraform/modules/ecs_on_spotfleet/alb.tf +++ /dev/null @@ -1,63 +0,0 @@ -resource "aws_security_group" "ecs_alb" { - description = "Balancer for ${var.app_name}" - - vpc_id = "${var.vpc}" - name = "${var.app_name}-alb-sg" - - ingress { - protocol = "tcp" - from_port = "${var.app_port}" - to_port = "${var.app_port}" - cidr_blocks = ["0.0.0.0/0"] - } - - egress { - from_port = 0 - to_port = 0 - protocol = "-1" - cidr_blocks = ["0.0.0.0/0"] - } -} - -resource "aws_alb" "main" { - name = "${var.app_name}" - subnets = "${var.subnets}" - security_groups = ["${aws_security_group.ecs_alb.id}"] -} - -resource "aws_alb_target_group" "main" { - name = "${var.app_name}" - port = "${var.app_port}" - protocol = "HTTP" - vpc_id = "${var.vpc}" - - depends_on = [ - "aws_alb.main" - ] -} - -resource "aws_alb_listener" "https" { - count = "${var.https ? 1 : 0}" - load_balancer_arn = "${aws_alb.main.id}" - port = "443" - protocol = "HTTPS" - ssl_policy = "${var.app_ssl_policy}" - certificate_arn = "${var.app_certificate_arn}" - - default_action { - target_group_arn = "${aws_alb_target_group.main.id}" - type = "forward" - } -} - -resource "aws_alb_listener" "http" { - count = "${var.https ? 0 : 1}" - load_balancer_arn = "${aws_alb.main.id}" - port = "80" - protocol = "HTTP" - - default_action { - target_group_arn = "${aws_alb_target_group.main.id}" - type = "forward" - } -} diff --git a/tflint/test-fixtures/v0.12.0_module/.terraform/modules/ecs_on_spotfleet/cli/Gemfile b/tflint/test-fixtures/v0.12.0_module/.terraform/modules/ecs_on_spotfleet/cli/Gemfile deleted file mode 100644 index a8c65c665..000000000 --- a/tflint/test-fixtures/v0.12.0_module/.terraform/modules/ecs_on_spotfleet/cli/Gemfile +++ /dev/null @@ -1,4 +0,0 @@ -source 'https://rubygems.org' - -gem 'thor', '~> 0.19.4' -gem 'aws-sdk', '~> 2' \ No newline at end of file diff --git a/tflint/test-fixtures/v0.12.0_module/.terraform/modules/ecs_on_spotfleet/cli/template.tf.erb b/tflint/test-fixtures/v0.12.0_module/.terraform/modules/ecs_on_spotfleet/cli/template.tf.erb deleted file mode 100644 index 3da41de9d..000000000 --- a/tflint/test-fixtures/v0.12.0_module/.terraform/modules/ecs_on_spotfleet/cli/template.tf.erb +++ /dev/null @@ -1,16 +0,0 @@ -provider "aws" { - region = "<%= config[:region] %>" -} - -module "ecs_on_spotfleet" { - source = "github.com/terraform-linters/tf_aws_ecs_on_spotfleet" - - vpc = "<%= config[:vpc_id] %>" - subnets = ["<%= config[:spot_infos][0][:subnet] %>", "<%= config[:spot_infos][1][:subnet] %>"] - spot_prices = ["<%= config[:spot_infos][0][:price] %>", "<%= config[:spot_infos][1][:price] %>"] - key_name = "<%= config[:key_name] %>" -} - -output "endpoint" { - value = "${module.ecs_on_spotfleet.endpoint}" -} diff --git a/tflint/test-fixtures/v0.12.0_module/.terraform/modules/ecs_on_spotfleet/cli/wizard.rb b/tflint/test-fixtures/v0.12.0_module/.terraform/modules/ecs_on_spotfleet/cli/wizard.rb deleted file mode 100644 index 633d98356..000000000 --- a/tflint/test-fixtures/v0.12.0_module/.terraform/modules/ecs_on_spotfleet/cli/wizard.rb +++ /dev/null @@ -1,36 +0,0 @@ -require 'thor' -require 'aws-sdk' - -class Wizard < Thor - include Thor::Actions - - desc 'wizard generate', 'generate template for quick start' - def generate - region = 'us-east-1' - client = Aws::EC2::Client.new(region: region) - ec2 = Aws::EC2::Resource.new(client: client) - - default_vpc_id = ec2.vpcs(filters: [{ name: 'isDefault', values: [true.to_s] }]).first.id - subnets = ec2.subnets(filters: [{ name: 'vpc-id', values: [default_vpc_id] }]).limit(2) - key = ec2.key_pairs.first - if key.nil? - key = ec2.create_key_pair(key_name: 'demo-app') - create_file 'demo-app.pem', key.key_material - end - spot_infos = [] - subnets.each do |subnet| - res = client.describe_spot_price_history(instance_types: ['m3.medium'], - product_descriptions: ["Linux/UNIX (Amazon VPC)"], - availability_zone: subnet.availability_zone) - spot_infos << { subnet: subnet.id, price: res.spot_price_history.first.spot_price } - end - - template 'template.tf.erb', 'template.tf', { region: region, vpc_id: default_vpc_id, spot_infos: spot_infos, key_name: key.name } - end - - desc 'wizard g', 'alias for wizard generate' - alias_method :g, :generate -end - -Wizard.source_root('.') -Wizard.start(ARGV) diff --git a/tflint/test-fixtures/v0.12.0_module/.terraform/modules/ecs_on_spotfleet/ecs.tf b/tflint/test-fixtures/v0.12.0_module/.terraform/modules/ecs_on_spotfleet/ecs.tf deleted file mode 100644 index 250658419..000000000 --- a/tflint/test-fixtures/v0.12.0_module/.terraform/modules/ecs_on_spotfleet/ecs.tf +++ /dev/null @@ -1,64 +0,0 @@ -resource "aws_iam_policy_attachment" "ecs_service" { - name = "${var.app_name}-ecs-service" - roles = ["${aws_iam_role.ecs_service.name}"] - policy_arn = "arn:aws:iam::aws:policy/service-role/AmazonEC2ContainerServiceRole" -} - -resource "aws_iam_role" "ecs_service" { - name = "${var.app_name}-ec2-service" - - assume_role_policy = <> /etc/ecs/ecs.config -USER_DATA - } - - launch_specification { - ami = "${var.ami}" - instance_type = "${var.instance_type}" - spot_price = "${var.spot_prices[1]}" - subnet_id = "${var.subnets[1]}" - vpc_security_group_ids = ["${aws_security_group.ecs_instance.id}"] - iam_instance_profile = "${aws_iam_instance_profile.ecs.name}" - key_name = "${var.key_name}" - - root_block_device = { - volume_type = "gp2" - volume_size = "${var.volume_size}" - } - - user_data = <> /etc/ecs/ecs.config -USER_DATA - } - - depends_on = ["aws_iam_policy_attachment.fleet"] -} diff --git a/tflint/test-fixtures/v0.12.0_module/.terraform/modules/ecs_on_spotfleet/variables.tf b/tflint/test-fixtures/v0.12.0_module/.terraform/modules/ecs_on_spotfleet/variables.tf deleted file mode 100644 index 6f933ea81..000000000 --- a/tflint/test-fixtures/v0.12.0_module/.terraform/modules/ecs_on_spotfleet/variables.tf +++ /dev/null @@ -1,104 +0,0 @@ -// Required - -variable "vpc" { - description = "VPC id for ECS cluster" -} - -variable "subnets" { - type = "list" - description = "List of subnet ids for ECS cluster, please choose 2 subnets" -} - -variable "key_name" { - description = "Name of key pair for SSH login to ECS cluster instances" -} - -variable "ami" { - description = "ECS cluster instance AMI id, default is Amazon ECS-optimized AMI in us-east-1" - default = "ami-eca289fb" -} - -// Customize for container options - -variable "app_name" { - description = "Your application name" - default = "demo-app" -} - -variable "https" { - description = "Listen over https" - default = false -} - -variable "app_certificate_arn" { - description = "SSL cert ARN" - default = "" -} - -variable "app_ssl_policy" { - description = "SSL Policy" - default = "ELBSecurityPolicy-2015-05" -} - -variable "image" { - description = "Your docker image name, default it ECS PHP Simple App" - default = "terraform-linters/ecs-demo-php-simple-app:latest" -} - -variable "container_port" { - description = "Port number exposed by container" - default = 80 -} - -variable "service_count" { - description = "Number of containers" - default = 3 -} - -variable "cpu_unit" { - description = "Number of cpu units for container" - default = 128 -} - -variable "memory" { - description = "Number of memory for container" - default = 128 -} - -// Customize for spot fleet options - -variable "spot_prices" { - description = "Bid amount to spot fleet" - type = "list" - default = ["0.03", "0.03"] -} - -variable "strategy" { - description = "Instance placement strategy name" - default = "diversified" -} - -variable "instance_count" { - description = "Number of instances" - default = 3 -} - -variable "instance_type" { - description = "Instance type launched by spot fleet" - default = "m3.medium" -} - -variable "volume_size" { - description = "Root volume size" - default = 16 -} - -variable "app_port" { - description = "Port number of application" - default = 80 -} - -variable "valid_until" { - description = "limit of spot fleet" - default = "2020-12-15T00:00:00Z" -} diff --git a/tflint/test-fixtures/v0.12.0_module/.terraform/modules/modules.json b/tflint/test-fixtures/v0.12.0_module/.terraform/modules/modules.json deleted file mode 100644 index 1536ae9c8..000000000 --- a/tflint/test-fixtures/v0.12.0_module/.terraform/modules/modules.json +++ /dev/null @@ -1 +0,0 @@ -{"Modules":[{"Key":"consul","Source":"hashicorp/consul/aws","Version":"0.0.5","Dir":".terraform/modules/consul/hashicorp-terraform-aws-consul-ee980b4"},{"Key":"consul.consul_clients","Source":"./modules/consul-cluster","Dir":".terraform/modules/consul/hashicorp-terraform-aws-consul-ee980b4/modules/consul-cluster"},{"Key":"consul.consul_clients.iam_policies","Source":"../consul-iam-policies","Dir":".terraform/modules/consul/hashicorp-terraform-aws-consul-ee980b4/modules/consul-iam-policies"},{"Key":"consul.consul_clients.security_group_rules","Source":"../consul-security-group-rules","Dir":".terraform/modules/consul/hashicorp-terraform-aws-consul-ee980b4/modules/consul-security-group-rules"},{"Key":"consul.consul_servers","Source":"./modules/consul-cluster","Dir":".terraform/modules/consul/hashicorp-terraform-aws-consul-ee980b4/modules/consul-cluster"},{"Key":"ecs_on_spotfleet","Source":"github.com/terraform-linters/tf_aws_ecs_on_spotfleet.git?ref=master","Dir":".terraform/modules/ecs_on_spotfleet"},{"Key":"","Source":"","Dir":"."},{"Key":"consul.consul_servers.iam_policies","Source":"../consul-iam-policies","Dir":".terraform/modules/consul/hashicorp-terraform-aws-consul-ee980b4/modules/consul-iam-policies"},{"Key":"consul.consul_servers.security_group_rules","Source":"../consul-security-group-rules","Dir":".terraform/modules/consul/hashicorp-terraform-aws-consul-ee980b4/modules/consul-security-group-rules"},{"Key":"instance","Source":"./ec2","Dir":"ec2"}]} \ No newline at end of file diff --git a/tflint/test-fixtures/v0.12.0_module/module.tf b/tflint/test-fixtures/v0.12.0_module/module.tf deleted file mode 100644 index 34051e0e8..000000000 --- a/tflint/test-fixtures/v0.12.0_module/module.tf +++ /dev/null @@ -1,13 +0,0 @@ -module "ecs_on_spotfleet" { - source = "github.com/terraform-linters/tf_aws_ecs_on_spotfleet.git?ref=master" -} - -module "instance" { - source = "./ec2" - ami_id = "ami-1234abcd" -} - -module "consul" { - source = "hashicorp/consul/aws" - version = ">= 0.0.3, <= 0.0.5" -} diff --git a/tflint/test-fixtures/v0.15.0_module/.terraform/modules/consul b/tflint/test-fixtures/v0.15.0_module/.terraform/modules/consul new file mode 160000 index 000000000..d3d9b9623 --- /dev/null +++ b/tflint/test-fixtures/v0.15.0_module/.terraform/modules/consul @@ -0,0 +1 @@ +Subproject commit d3d9b96230fe71e4fa7bf11f51f4e9163f3a72bb diff --git a/tflint/test-fixtures/v0.15.0_module/.terraform/modules/modules.json b/tflint/test-fixtures/v0.15.0_module/.terraform/modules/modules.json new file mode 100644 index 000000000..559d747e4 --- /dev/null +++ b/tflint/test-fixtures/v0.15.0_module/.terraform/modules/modules.json @@ -0,0 +1 @@ +{"Modules":[{"Key":"consul.consul_servers.iam_policies","Source":"../consul-iam-policies","Dir":".terraform/modules/consul/modules/consul-iam-policies"},{"Key":"consul.consul_servers.security_group_rules","Source":"../consul-security-group-rules","Dir":".terraform/modules/consul/modules/consul-security-group-rules"},{"Key":"instance","Source":"./ec2","Dir":"ec2"},{"Key":"","Source":"","Dir":"."},{"Key":"consul","Source":"hashicorp/consul/aws","Version":"0.9.0","Dir":".terraform/modules/consul"},{"Key":"consul.consul_clients","Source":"./modules/consul-cluster","Dir":".terraform/modules/consul/modules/consul-cluster"},{"Key":"consul.consul_clients.iam_policies","Source":"../consul-iam-policies","Dir":".terraform/modules/consul/modules/consul-iam-policies"},{"Key":"consul.consul_clients.security_group_rules","Source":"../consul-security-group-rules","Dir":".terraform/modules/consul/modules/consul-security-group-rules"},{"Key":"consul.consul_clients.security_group_rules.client_security_group_rules","Source":"../consul-client-security-group-rules","Dir":".terraform/modules/consul/modules/consul-client-security-group-rules"},{"Key":"consul.consul_servers","Source":"./modules/consul-cluster","Dir":".terraform/modules/consul/modules/consul-cluster"},{"Key":"consul.consul_servers.security_group_rules.client_security_group_rules","Source":"../consul-client-security-group-rules","Dir":".terraform/modules/consul/modules/consul-client-security-group-rules"}]} \ No newline at end of file diff --git a/tflint/test-fixtures/v0.12.0_module/ec2/main.tf b/tflint/test-fixtures/v0.15.0_module/ec2/main.tf similarity index 100% rename from tflint/test-fixtures/v0.12.0_module/ec2/main.tf rename to tflint/test-fixtures/v0.15.0_module/ec2/main.tf diff --git a/tflint/test-fixtures/v0.15.0_module/module.tf b/tflint/test-fixtures/v0.15.0_module/module.tf new file mode 100644 index 000000000..8f7669072 --- /dev/null +++ b/tflint/test-fixtures/v0.15.0_module/module.tf @@ -0,0 +1,9 @@ +module "instance" { + source = "./ec2" + ami_id = "ami-1234abcd" +} + +module "consul" { + source = "hashicorp/consul/aws" + version = "0.9.0" +}