Skip to content

🌍 Terraform Automation #65

🌍 Terraform Automation

🌍 Terraform Automation #65

Workflow file for this run

name: '🌍 Terraform Automation'
on:
workflow_dispatch:
inputs:
folderName:
description: "folder name"
required: true
env:
TF_VAR_subscription_id: ${{secrets.SUBSCRIPTION_ID}}
ARM_SUBSCRIPTION_ID: ${{secrets.SUBSCRIPTION_ID}}
ARM_TENANT_ID: ${{secrets.AZURE_TENANT_ID}}
ARM_CLIENT_ID: ${{secrets.AZURE_CLIENT_ID}}
ARM_CLIENT_SECRET: ${{secrets.AZURE_CLIENT_SECRET}}
jobs:
job1:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
with:
ref: ${{ github.event.inputs.branchName }}
- name: 🧩 HashiCorp - Setup Terraform
uses: hashicorp/[email protected]
- name: πŸ”‘ Login to Azure
id : az-login
run : az login --service-principal -u $ARM_CLIENT_ID -p $ARM_CLIENT_SECRET --tenant $ARM_TENANT_ID
- name: πŸ—οΈ Terraform
id: init
run: |
DIRECTORIES= ( ${{ github.event.inputs.folderName }} )
for directory in ${DIRECTORIES[@]}; do
cd ${directory} || exit 1
terraform init -input=false
terraform plan -out=tfplan -input=false
terraform apply -input=false -auto-approve tfplan
cd ..
done