-
Notifications
You must be signed in to change notification settings - Fork 0
42 lines (36 loc) · 1.21 KB
/
terraform.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
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