Skip to content

Commit 3588cb9

Browse files
authored
Update terraform-destroy.yml
1 parent 87a04c5 commit 3588cb9

File tree

1 file changed

+21
-15
lines changed

1 file changed

+21
-15
lines changed

.github/workflows/terraform-destroy.yml

Lines changed: 21 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,11 @@
11
name: Terraform Destroy
22

33
on:
4-
workflow_dispatch: # permite ejecutarlo manualmente desde la UI de GitHub
4+
workflow_dispatch:
5+
inputs:
6+
confirm_destroy:
7+
description: "⚠️ Type 'YES' to confirm destroying the infrastructure"
8+
required: true
59

610
permissions:
711
contents: read
@@ -19,6 +23,12 @@ jobs:
1923
runs-on: ubuntu-latest
2024

2125
steps:
26+
- name: 🛑 Validate confirmation input
27+
if: ${{ github.event.inputs.confirm_destroy != 'YES' }}
28+
run: |
29+
echo "You must type YES to proceed with destroy."
30+
exit 1
31+
2232
- name: 📦 Checkout code
2333
uses: actions/checkout@v3
2434

@@ -49,18 +59,14 @@ jobs:
4959
-backend-config="container_name=tfstate" \
5060
-backend-config="key=terraform.tfstate"
5161
52-
- name: 📝 Generate terraform.tfvars
53-
run: |
54-
cat > infra/terraform.tfvars <<EOF
55-
subscription_id = "${{ secrets.ARM_SUBSCRIPTION_ID }}"
56-
client_id = "${{ secrets.ARM_CLIENT_ID }}"
57-
client_secret = "${{ secrets.ARM_CLIENT_SECRET }}"
58-
tenant_id = "${{ secrets.ARM_TENANT_ID }}"
59-
allowed_ssh_ip = "${{ secrets.MY_IP_ADDRESS }}"
60-
mysql_user = "${{ secrets.MYSQL_USER }}"
61-
mysql_admin_password = "${{ secrets.MYSQL_ADMIN_PASSWORD }}"
62-
ssh_public_key = "${{ secrets.VM_SSH_PUB_KEY }}"
63-
EOF
64-
6562
- name: ⚠️ Terraform Destroy
66-
run: terraform -chdir=infra destroy -auto-approve -input=false -var-file=terraform.tfvars
63+
run: |
64+
terraform -chdir=infra destroy -auto-approve -input=false \
65+
-var="subscription_id=${{ secrets.ARM_SUBSCRIPTION_ID }}" \
66+
-var="client_id=${{ secrets.ARM_CLIENT_ID }}" \
67+
-var="client_secret=${{ secrets.ARM_CLIENT_SECRET }}" \
68+
-var="tenant_id=${{ secrets.ARM_TENANT_ID }}" \
69+
-var="allowed_ssh_ip=${{ secrets.MY_IP_ADDRESS }}" \
70+
-var="mysql_user=${{ secrets.MYSQL_USER }}" \
71+
-var="mysql_admin_password=${{ secrets.MYSQL_ADMIN_PASSWORD }}" \
72+
-var="ssh_public_key=${{ secrets.VM_SSH_PUB_KEY }}"

0 commit comments

Comments
 (0)