diff --git a/.github/terraform.yaml b/.github/terraform.yaml new file mode 100644 index 000000000..a3691b295 --- /dev/null +++ b/.github/terraform.yaml @@ -0,0 +1,66 @@ +name: "vprofile IAC" +on: + push: + branches: + - main + - stage + paths: + - "terraform/** + pull_request: + branches: + - main + paths: + - "terraform/** + +env: + + AWS_ACCESS_KEY_ID: ${{ secrets.AWS_ACCESS_KEY_ID }} + AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_ACCESS_KEY }} + + BUCKET_TF_STATE: ${{ secrets.BUCKET_TF_STATE }} + AWS_REGION: us-east-1 + EKS_CLUSTER: vprofile-eks + +jobs: + terraform: + name: "Apply Terraform code changes" + runs-on: ubuntu-latest + defaults: + run: + shell: bash + working-directory: ./terraform + + steps: + - name: Checkout source code + uses: actions/checkout@v4 + + - name: Setup Terraform with sprecific version on the runner + uses: hashicorp/setup-terraform@v2 + #with: + # terraform_version: 1.6.3 + + - name: Terraform Init + id: Init + run: | + terraform init \ + -backend-config="bucket=${{ env.BUCKET_TF_STATE }}" + + - name: Terraform format + id: Format + run: | + terraform fmt -check + + - name: Terraform validate + id: Validate + run: | + terraform validate + + - name: Terraform plan + id: Plan + run: | + terraform plan -no-colour -input=false -out=planfile + continue-on-error: true + + - name: Terraform plan status + if: steps.Plan.outcome == 'failure' + run: exit 1 \ No newline at end of file diff --git a/terraform/terraform.tf b/terraform/terraform.tf index 67b75c673..bc36e5e26 100644 --- a/terraform/terraform.tf +++ b/terraform/terraform.tf @@ -27,9 +27,9 @@ terraform { } backend "s3" { - bucket = "gitopsterrastate" + bucket = "vprofileactions2002" key = "terraform.tfstate" - region = "us-east-2" + region = "us-east-1" } required_version = "~> 1.6.3" diff --git a/terraform/variables.tf b/terraform/variables.tf index a41d982a0..fdf472d79 100644 --- a/terraform/variables.tf +++ b/terraform/variables.tf @@ -1,11 +1,13 @@ variable "region" { description = "AWS region" type = string - default = "us-east-2" + default = "us-east-1" } variable "clusterName" { description = "Name of the EKS cluster" type = string - default = "kitops-eks" + default = "vprofile-eks" } + +## \ No newline at end of file