Skip to content

[PP-12736] TF workflow #20

[PP-12736] TF workflow

[PP-12736] TF workflow #20

name: 'Terraform Plan'
on:
pull_request:
branches:
- main
issue_comment:
types: [edited, created]
permissions:
contents: read
jobs:
terraform:
name: 'Terraform Plan'
runs-on: self-hosted
if: |
(github.event_name == 'pull_request') ||
(github.event_name == 'issue_comment' &&
github.event.issue.pull_request != '' &&
contains(github.event.comment.body, '/terraform_plan'))
steps:
# Checkout the repository to the GitHub Actions runner
- name: Checkout
uses: actions/checkout@v3
# Run Terraform commands
- name: Terraform Init
run: terraform init
env:
GOOGLE_CREDENTIALS: ${{ secrets.GOOGLE_CREDENTIALS }}
- name: Terraform Validate
run: terraform validate
env:
GOOGLE_CREDENTIALS: ${{ secrets.GOOGLE_CREDENTIALS }}
TF_VAR_project_id: ${{ vars.PROJECT_ID }}
TF_VAR_region: ${{ vars.REGION }}
- name: Terraform Plan
run: terraform plan -input=false
env:
GOOGLE_CREDENTIALS: ${{ secrets.GOOGLE_CREDENTIALS }}
TF_VAR_project_id: ${{ vars.PROJECT_ID }}
TF_VAR_region: ${{ vars.REGION }}
TF_VAR_mx_password: ${{ secrets.MX_PASSWORD }}
TF_VAR_vpc_network: ${{ vars.VPC_NETWORK }}
TF_VAR_subnet_name: ${{ vars.SUBNET_NAME }}
TF_VAR_zone: ${{ vars.ZONE }}
TF_VAR_instance_type: ${{ vars.INSTANCE_TYPE }}
TF_VAR_waf_version: ${{ vars.WAF_VERSION }}
TF_VAR_timezone: ${{ vars.TIMEZONE }}
TF_VAR_ssh_access_source_ranges: ${{ vars.SSH_ACCESS_SOURCE_RANGES }}
TF_VAR_ui_access_source_ranges: ${{ vars.UI_ACCESS_SOURCE_RANGES }}
TF_VAR_deployment_name: "gh-${{ github.event.pull_request.number }}-${{ github.run_number }}"
TF_VAR_instance_name: ${{ vars.INSTANCE_NAME }}