Update Terraform Deploy to GCP.yaml

Fixed errors
This commit is contained in:
BushraS-Protean
2025-06-02 11:28:58 +05:30
committed by GitHub
parent 5c5a8b6726
commit 3717ea9a23

View File

@@ -1,41 +1,54 @@
name: Terraform Deploy to GCP
on:
push:
branches:
- main
workflow_dispatch: # Manual trigger
jobs:
terraform:
name: Deploy with Terraform on GCP
name: Deploy GCP Infrastructure
runs-on: ubuntu-latest
env:
GOOGLE_APPLICATION_CREDENTIALS: ${{ github.workspace }}/gcp-key.json
steps:
- name: Checkout repository
- name: Checkout this repository
uses: actions/checkout@v3
- name: Clone Terraform repo from Gerrit
run: |
git clone https://${{ secrets.GERRIT_USERNAME }}:${{ secrets.GERRIT_PAT }}@open-networks.googlesource.com/onix-dev gerrit-repo
- name: Set up Terraform
uses: hashicorp/setup-terraform@v3
with:
terraform_version: 1.5.0
- name: Authenticate to Google Cloud
run: echo "${{ secrets.GCP_CREDENTIALS }}" > gcp-key.json
shell: bash
- name: Terraform Init
run: terraform init -var="credentials_file=gcp-key.json"
- name: Terraform Validate
run: terraform validate
run: echo "${{ secrets.GOOGLE_APPLICATION_CREDENTIALS_JSON }}" > gcp-key.json
- name: Terraform Init with backend
working-directory: ./onix-dev/Terraform
run: |
terraform init \
-backend-config="bucket=your-backend-bucket-name" \
-backend-config="prefix=terraform/state" \
-backend-config="credentials=${{ github.workspace }}/gcp-key.json"
- name: Terraform Plan
run: terraform plan -var="credentials_file=gcp-key.json" -out=tfplan
working-directory: ./onix-dev/Terraform
run: terraform plan -out=tfplan -var="credentials_file=${{ github.workspace }}/gcp-key.json"
- name: Wait for Manual Approval
uses: hmarr/auto-approve-action@v2
if: false # prevents automatic approval
with:
github-token: ${{ secrets.PAT_GITHUB }}
- name: Terraform Apply
run: terraform apply -auto-approve tfplan
- name: Clean up credentials file
working-directory: ./onix-dev/Terraform
run: terraform apply tfplan
- name: Clean up credentials
run: rm -f gcp-key.json