From ef7a307f8c34f6d95fb26bf5e9232ab9025729eb Mon Sep 17 00:00:00 2001 From: Spikey21 Date: Tue, 22 Oct 2024 21:36:58 +0200 Subject: [PATCH 01/13] variable change --- terraform/variables.tf | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/terraform/variables.tf b/terraform/variables.tf index a41d982a0..d19424a8e 100644 --- a/terraform/variables.tf +++ b/terraform/variables.tf @@ -1,11 +1,11 @@ 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" } From 2709aad1429e39adb353e47422927d35e108c031 Mon Sep 17 00:00:00 2001 From: Spikey21 Date: Wed, 23 Oct 2024 19:59:39 +0200 Subject: [PATCH 02/13] bucket change --- terraform/terraform.tf | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/terraform/terraform.tf b/terraform/terraform.tf index 67b75c673..39dcc2f22 100644 --- a/terraform/terraform.tf +++ b/terraform/terraform.tf @@ -27,9 +27,9 @@ terraform { } backend "s3" { - bucket = "gitopsterrastate" + bucket = "vprofile-actions-spikey" key = "terraform.tfstate" - region = "us-east-2" + region = "us-east-1" } required_version = "~> 1.6.3" From ae3246d2503474dbfa264c814452b9661a607481 Mon Sep 17 00:00:00 2001 From: Spikey21 Date: Wed, 23 Oct 2024 20:42:58 +0200 Subject: [PATCH 03/13] straging workflow --- .github/workflows/terraform.yml | 58 +++++++++++++++++++++++++++++++++ 1 file changed, 58 insertions(+) create mode 100644 .github/workflows/terraform.yml diff --git a/.github/workflows/terraform.yml b/.github/workflows/terraform.yml new file mode 100644 index 000000000..ed8ae0760 --- /dev/null +++ b/.github/workflows/terraform.yml @@ -0,0 +1,58 @@ +name: "Vprofile IAC" +on: + push: + branches: + - main + - stage + paths: + - terraform/** + pull_request: + branches: + - main + paths: + - terraform/** +env: + # credentials for deployment to AWS + AWS_ACCESS_KEY_ID: ${{ secrets.AWS_ACCESS_KEY_ID }} + AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_ACCESS_KEY }} + # S3 Bucket for the Terraform state + BUCKET_TF_STATE: ${{ secrets.BUCKET_TF_STATE }} + AWS_REGION: us-east-1 + EKS_CLUSTER: vprofile-eks + + jobs: + terraform: + name: "Apply terraform code change" + runs-on: ubuntu-latest + defaults: + run: + shell: bash + working-directory: ./terraform + + steps: + - name: Checkout source code + uses: actions/checkout@v4 + + - name: Setup Terraform + uses: hashicorp/setup-terraform@v2 + + - name: Terraform init + id: init + run: terraform init -backend-config="bucket=$BUCKET_TF_STATE" + + - name: Terraform fmt + id: fmt + run: terraform fmt -check + + - name: Terraform validate + id: validate + run: terraform validate + + - name: Terraform plan + id: plan + run: terraform plan -no-color -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 From 41d9848961acdeaaf974e954d6cf9c72b242d116 Mon Sep 17 00:00:00 2001 From: Spikey21 Date: Wed, 23 Oct 2024 20:45:14 +0200 Subject: [PATCH 04/13] fix job yml --- .github/workflows/terraform.yml | 64 ++++++++++++++++----------------- 1 file changed, 32 insertions(+), 32 deletions(-) diff --git a/.github/workflows/terraform.yml b/.github/workflows/terraform.yml index ed8ae0760..9fabecde8 100644 --- a/.github/workflows/terraform.yml +++ b/.github/workflows/terraform.yml @@ -20,39 +20,39 @@ env: AWS_REGION: us-east-1 EKS_CLUSTER: vprofile-eks - jobs: - terraform: - name: "Apply terraform code change" - runs-on: ubuntu-latest - defaults: - run: - shell: bash - working-directory: ./terraform - - steps: - - name: Checkout source code - uses: actions/checkout@v4 +jobs: + terraform: + name: "Apply terraform code change" + runs-on: ubuntu-latest + defaults: + run: + shell: bash + working-directory: ./terraform + + steps: + - name: Checkout source code + uses: actions/checkout@v4 - - name: Setup Terraform - uses: hashicorp/setup-terraform@v2 + - name: Setup Terraform + uses: hashicorp/setup-terraform@v2 - - name: Terraform init - id: init - run: terraform init -backend-config="bucket=$BUCKET_TF_STATE" - - - name: Terraform fmt - id: fmt - run: terraform fmt -check - - - name: Terraform validate - id: validate - run: terraform validate + - name: Terraform init + id: init + run: terraform init -backend-config="bucket=$BUCKET_TF_STATE" + + - name: Terraform fmt + id: fmt + run: terraform fmt -check + + - name: Terraform validate + id: validate + run: terraform validate - - name: Terraform plan - id: plan - run: terraform plan -no-color -input=false -out planFile - continue-on-error: true + - name: Terraform plan + id: plan + run: terraform plan -no-color -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 + - name: Terraform plan status + if: steps.plan.outcome == 'failure' + run: exit 1 \ No newline at end of file From 4dc5ef600aa2ad595a0724ce8e09b641356dfcb9 Mon Sep 17 00:00:00 2001 From: Spikey21 Date: Wed, 23 Oct 2024 20:56:22 +0200 Subject: [PATCH 05/13] test workflow --- terraform/terraform.tf | 1 - 1 file changed, 1 deletion(-) diff --git a/terraform/terraform.tf b/terraform/terraform.tf index 39dcc2f22..14221ca65 100644 --- a/terraform/terraform.tf +++ b/terraform/terraform.tf @@ -36,4 +36,3 @@ terraform { } ## ## -## From e945f9ca7504c72c9790850fe6bed24d370f7f89 Mon Sep 17 00:00:00 2001 From: Spikey21 Date: Wed, 23 Oct 2024 21:00:17 +0200 Subject: [PATCH 06/13] add terraform version --- .github/workflows/terraform.yml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/.github/workflows/terraform.yml b/.github/workflows/terraform.yml index 9fabecde8..8628d570e 100644 --- a/.github/workflows/terraform.yml +++ b/.github/workflows/terraform.yml @@ -35,6 +35,8 @@ jobs: - name: Setup Terraform uses: hashicorp/setup-terraform@v2 + with: + terraform_version: 1.6.3 - name: Terraform init id: init From 462c10336556d00224b6db5a974d3bdf57a8019e Mon Sep 17 00:00:00 2001 From: Spikey21 Date: Wed, 23 Oct 2024 21:02:11 +0200 Subject: [PATCH 07/13] test workflow 2 --- terraform/terraform.tf | 1 + 1 file changed, 1 insertion(+) diff --git a/terraform/terraform.tf b/terraform/terraform.tf index 14221ca65..9b2acd437 100644 --- a/terraform/terraform.tf +++ b/terraform/terraform.tf @@ -36,3 +36,4 @@ terraform { } ## ## +## \ No newline at end of file From d58401de429739e526993bae80a5fa2d32074d8d Mon Sep 17 00:00:00 2001 From: Spikey21 Date: Thu, 24 Oct 2024 17:26:02 +0200 Subject: [PATCH 08/13] update terraform.yml - apply steps --- .github/workflows/terraform.yml | 23 ++++++++++++++++++++++- 1 file changed, 22 insertions(+), 1 deletion(-) diff --git a/.github/workflows/terraform.yml b/.github/workflows/terraform.yml index 8628d570e..347f91524 100644 --- a/.github/workflows/terraform.yml +++ b/.github/workflows/terraform.yml @@ -57,4 +57,25 @@ jobs: - name: Terraform plan status if: steps.plan.outcome == 'failure' - run: exit 1 \ No newline at end of file + run: exit 1 + + - name: Terraform Apply + id: apple + if: github.ref == 'refs/heads/main' && github.event_name == 'push' + run: terraform apply -auto-approve -input-false -parallelism=1 planfile + + - name: Configure AWS credentials + uses: aws-actions/configure-aws-credentials@v1 + with: + aws-access-key-id: ${{ secrets.AWS_ACCESS_KEY_ID }} + aws-secret-access-key: ${{ secrets.AWS_SECRET_ACCESS_KEY }} + aws-region: ${{ env.AWS_REGION }} + + - name: Get Kube config file + id: getconfig + if: steps.apple.outcome == 'success' + run: aws eks update-kubeconfig --region ${{ env.AWS_REGION }} --name ${{ env.EKS_CLUSTER }} + + - name: Install Ingress controller + if: steps.apple.outcome == 'success' && steps.getconfig.outcome == 'success' + run: kubectl apply -f https://raw.githubusercontent.com/kubernetes/ingress-nginx/controller-v1.1.3/deploy/static/provider/aws/deploy.yaml From 73b18fb8eeb5643c96cce3144cdbe31e479ae4e1 Mon Sep 17 00:00:00 2001 From: Spikey21 Date: Thu, 24 Oct 2024 17:28:34 +0200 Subject: [PATCH 09/13] test workflow on stage --- terraform/terraform.tf | 1 - 1 file changed, 1 deletion(-) diff --git a/terraform/terraform.tf b/terraform/terraform.tf index 9b2acd437..2cbf7bd4e 100644 --- a/terraform/terraform.tf +++ b/terraform/terraform.tf @@ -35,5 +35,4 @@ terraform { required_version = "~> 1.6.3" } ## -## ## \ No newline at end of file From c5dea41d1ea696c0cb11c1f8773167c99d5fb3a9 Mon Sep 17 00:00:00 2001 From: Spikey21 Date: Fri, 25 Oct 2024 20:48:50 +0200 Subject: [PATCH 10/13] fix apply step --- .github/workflows/terraform.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/terraform.yml b/.github/workflows/terraform.yml index 347f91524..dd328875a 100644 --- a/.github/workflows/terraform.yml +++ b/.github/workflows/terraform.yml @@ -62,7 +62,7 @@ jobs: - name: Terraform Apply id: apple if: github.ref == 'refs/heads/main' && github.event_name == 'push' - run: terraform apply -auto-approve -input-false -parallelism=1 planfile + run: terraform apply -auto-approve -input=false -parallelism=1 planfile - name: Configure AWS credentials uses: aws-actions/configure-aws-credentials@v1 From c6af2a6a3869be9977f36e32f89030f427226b2d Mon Sep 17 00:00:00 2001 From: Spikey21 Date: Fri, 25 Oct 2024 20:55:53 +0200 Subject: [PATCH 11/13] test workflow on stage 2 --- terraform/terraform.tf | 1 - 1 file changed, 1 deletion(-) diff --git a/terraform/terraform.tf b/terraform/terraform.tf index 2cbf7bd4e..8d842baca 100644 --- a/terraform/terraform.tf +++ b/terraform/terraform.tf @@ -35,4 +35,3 @@ terraform { required_version = "~> 1.6.3" } ## -## \ No newline at end of file From 009da2d4b48b955be49961df323d34e8cf6f655d Mon Sep 17 00:00:00 2001 From: Spikey21 Date: Sat, 26 Oct 2024 20:07:23 +0200 Subject: [PATCH 12/13] fix apply step 2 --- .github/workflows/terraform.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/terraform.yml b/.github/workflows/terraform.yml index dd328875a..07bee0117 100644 --- a/.github/workflows/terraform.yml +++ b/.github/workflows/terraform.yml @@ -62,7 +62,7 @@ jobs: - name: Terraform Apply id: apple if: github.ref == 'refs/heads/main' && github.event_name == 'push' - run: terraform apply -auto-approve -input=false -parallelism=1 planfile + run: terraform apply -auto-approve -input=false -parallelism=1 planFile - name: Configure AWS credentials uses: aws-actions/configure-aws-credentials@v1 From c012e31aeca2fe3325ee294dd81d98066d64b132 Mon Sep 17 00:00:00 2001 From: Spikey21 Date: Sat, 26 Oct 2024 20:08:25 +0200 Subject: [PATCH 13/13] test worklow on stage 3 --- terraform/terraform.tf | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/terraform/terraform.tf b/terraform/terraform.tf index 8d842baca..2bb6d0119 100644 --- a/terraform/terraform.tf +++ b/terraform/terraform.tf @@ -34,4 +34,4 @@ terraform { required_version = "~> 1.6.3" } -## +#