diff --git a/.github/workflows/plan-examples.yml b/.github/workflows/plan-examples.yml index 0aebe44..7116d0c 100644 --- a/.github/workflows/plan-examples.yml +++ b/.github/workflows/plan-examples.yml @@ -75,7 +75,7 @@ jobs: - '*.tf' - name: Configure AWS credentials from Test account - uses: aws-actions/configure-aws-credentials@v1 + uses: aws-actions/configure-aws-credentials@v2 if: steps.changes.outputs.src== 'true' with: role-to-assume: ${{ secrets.ROLE_TO_ASSUME }} @@ -83,21 +83,34 @@ jobs: role-duration-seconds: 3600 role-session-name: GithubActions-Session - - name: Terraform Job - uses: hashicorp/setup-terraform@v2 + - name: Terraform plan from CodeBuild if: steps.changes.outputs.src== 'true' + uses: aws-actions/aws-codebuild-run-build@v1 + env: + TF_VAR_aws_region: us-west-2 + TF_VAR_managed_grafana_workspace_id: ${{ secrets.GRAFANA_WORKSPACE_ID }} + TF_VAR_eks_cluster_id: e2e-tests + TF_VAR_managed_prometheus_workspace_ids: ${{ secrets.PROMETHEUS_WORKSPACE_ID }} with: - terraform_version: 1.2.9 - - - if: steps.changes.outputs.src== 'true' - run: terraform version - - - name: Terraform Init - if: steps.changes.outputs.src== 'true' - run: terraform init -reconfigure - working-directory: ${{ matrix.directory }} - - - name: Terraform Plan - if: steps.changes.outputs.src== 'true' - working-directory: ${{ matrix.directory }} - run: terraform plan -no-color + project-name: terraform-plan + disable-source-override: false + env-vars-for-codebuild: | + TF_VAR_aws_region, + TF_VAR_managed_grafana_workspace_id, + TF_VAR_eks_cluster_id, + TF_VAR_managed_prometheus_workspace_ids + buildspec-override: | + version: 0.2 + phases: + build: + commands: + - export TF_VAR_grafana_api_key="fakeapikey" + - curl -fsSL https://apt.releases.hashicorp.com/gpg | sudo apt-key add - + - sudo apt-add-repository "deb [arch=amd64] https://apt.releases.hashicorp.com $(lsb_release -cs) main" + - sudo apt-get update && sudo apt-get install terraform + - terraform -version + - aws --version + - cd ${{ matrix.directory }} + - sed -i 's/#//' versions.tf + - terraform init + - terraform plan diff --git a/README.md b/README.md index efa9fb6..6e8228d 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,7 @@ # AWS Observability Accelerator for Terraform [![pre-commit](https://github.com/aws-observability/terraform-aws-observability-accelerator/actions/workflows/pre-commit.yaml/badge.svg)](https://github.com/aws-observability/terraform-aws-observability-accelerator/actions/workflows/pre-commit.yaml) +[![plan-examples](https://github.com/aws-observability/terraform-aws-observability-accelerator/actions/workflows/plan-examples.yml/badge.svg)](https://github.com/aws-observability/terraform-aws-observability-accelerator/actions/workflows/plan-examples.yml) Welcome to the AWS Observability Accelerator for Terraform! diff --git a/examples/eks-cluster-with-vpc/variables.tf b/examples/eks-cluster-with-vpc/variables.tf index bb93d3c..fc3f69f 100644 --- a/examples/eks-cluster-with-vpc/variables.tf +++ b/examples/eks-cluster-with-vpc/variables.tf @@ -1,7 +1,7 @@ variable "cluster_name" { description = "Name of cluster - used by Terratest for e2e test automation" type = string - default = "" + default = "eks-cluster-with-vpc" validation { # cluster name is used as prefix on eks_blueprint module and cannot be >25 characters diff --git a/examples/eks-cluster-with-vpc/versions.tf b/examples/eks-cluster-with-vpc/versions.tf index e1bdf68..2599da1 100644 --- a/examples/eks-cluster-with-vpc/versions.tf +++ b/examples/eks-cluster-with-vpc/versions.tf @@ -26,7 +26,7 @@ terraform { # ## Used for end-to-end testing on project; update to suit your needs # backend "s3" { - # bucket = "observability-accelerator-terraform-states" + # bucket = "aws-observability-accelerator-terraform-states" # region = "us-west-2" # key = "e2e/eks-cluster-with-vpc/terraform.tfstate" # } diff --git a/examples/existing-cluster-java/versions.tf b/examples/existing-cluster-java/versions.tf index 0633fb7..58f4d09 100644 --- a/examples/existing-cluster-java/versions.tf +++ b/examples/existing-cluster-java/versions.tf @@ -26,9 +26,9 @@ terraform { # ## Used for end-to-end testing on project; update to suit your needs # backend "s3" { - # bucket = "observability-accelerator-terraform-states" + # bucket = "aws-observability-accelerator-terraform-states" # region = "us-west-2" - # key = "e2e/existing-cluster-with-base-and-infra/terraform.tfstate" + # key = "e2e/existing-cluster-java/terraform.tfstate" # } } diff --git a/examples/existing-cluster-nginx/versions.tf b/examples/existing-cluster-nginx/versions.tf index 0633fb7..1c7d8bd 100644 --- a/examples/existing-cluster-nginx/versions.tf +++ b/examples/existing-cluster-nginx/versions.tf @@ -26,9 +26,9 @@ terraform { # ## Used for end-to-end testing on project; update to suit your needs # backend "s3" { - # bucket = "observability-accelerator-terraform-states" + # bucket = "aws-observability-accelerator-terraform-states" # region = "us-west-2" - # key = "e2e/existing-cluster-with-base-and-infra/terraform.tfstate" + # key = "e2e/existing-cluster-nginx/terraform.tfstate" # } } diff --git a/examples/existing-cluster-with-base-and-infra/versions.tf b/examples/existing-cluster-with-base-and-infra/versions.tf index 0633fb7..308e5fe 100644 --- a/examples/existing-cluster-with-base-and-infra/versions.tf +++ b/examples/existing-cluster-with-base-and-infra/versions.tf @@ -26,7 +26,7 @@ terraform { # ## Used for end-to-end testing on project; update to suit your needs # backend "s3" { - # bucket = "observability-accelerator-terraform-states" + # bucket = "aws-observability-accelerator-terraform-states" # region = "us-west-2" # key = "e2e/existing-cluster-with-base-and-infra/terraform.tfstate" # } diff --git a/examples/managed-grafana-workspace/versions.tf b/examples/managed-grafana-workspace/versions.tf index 792eade..77ace44 100644 --- a/examples/managed-grafana-workspace/versions.tf +++ b/examples/managed-grafana-workspace/versions.tf @@ -7,4 +7,11 @@ terraform { version = ">= 4.0.0" } } + + # ## Used for end-to-end testing on project; update to suit your needs + # backend "s3" { + # bucket = "aws-observability-accelerator-terraform-states" + # region = "us-west-2" + # key = "e2e/managed-grafana-workspace/terraform.tfstate" + # } } diff --git a/examples/managed-prometheus-monitoring/versions.tf b/examples/managed-prometheus-monitoring/versions.tf index ac93e75..31b6560 100644 --- a/examples/managed-prometheus-monitoring/versions.tf +++ b/examples/managed-prometheus-monitoring/versions.tf @@ -11,4 +11,11 @@ terraform { version = ">= 1.25.0" } } + + # ## Used for end-to-end testing on project; update to suit your needs + # backend "s3" { + # bucket = "aws-observability-accelerator-terraform-states" + # region = "us-west-2" + # key = "e2e/managed-prometheus-monitoring/terraform.tfstate" + # } }