Create Terraform Deploy to GCP.yaml
initial setup
This commit is contained in:
41
.github/workflows/Terraform Deploy to GCP.yaml
vendored
Normal file
41
.github/workflows/Terraform Deploy to GCP.yaml
vendored
Normal file
@@ -0,0 +1,41 @@
|
||||
name: Terraform Deploy to GCP
|
||||
|
||||
on:
|
||||
push:
|
||||
branches:
|
||||
- main
|
||||
|
||||
jobs:
|
||||
terraform:
|
||||
name: Deploy with Terraform on GCP
|
||||
runs-on: ubuntu-latest
|
||||
env:
|
||||
GOOGLE_APPLICATION_CREDENTIALS: ${{ github.workspace }}/gcp-key.json
|
||||
|
||||
steps:
|
||||
- name: Checkout repository
|
||||
uses: actions/checkout@v3
|
||||
|
||||
- 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
|
||||
|
||||
- name: Terraform Plan
|
||||
run: terraform plan -var="credentials_file=gcp-key.json" -out=tfplan
|
||||
|
||||
- name: Terraform Apply
|
||||
run: terraform apply -auto-approve tfplan
|
||||
|
||||
- name: Clean up credentials file
|
||||
run: rm -f gcp-key.json
|
||||
Reference in New Issue
Block a user