Skip to content

Commit 3888d4b

Browse files
committed
Add Terraform Plan workflow for manual dispatch
1 parent 5312376 commit 3888d4b

File tree

1 file changed

+58
-0
lines changed

1 file changed

+58
-0
lines changed
Lines changed: 58 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,58 @@
1+
name: Terraform Plan from PR
2+
3+
on:
4+
workflow_dispatch:
5+
6+
env:
7+
TF_VAR_aws_account_id: ${{ secrets.AWS_ACCOUNT_ID }}
8+
TF_VAR_aws_region: ${{ secrets.AWS_REGION }}
9+
TF_VAR_github_actions_role_arn: ${{ secrets.GH_ACTIONS_ROLE_ARN }}
10+
TF_VAR_service_url_registration_api_solana: ${{ secrets.SERVICE_URL_REGISTRATION_API_SOLANA }}
11+
TF_VAR_service_api_key_registration_api_solana: ${{ secrets.SERVICE_API_KEY_REGISTRATION_API_SOLANA }}
12+
TF_VAR_tech_floripa_certificate_validate_url: ${{ secrets.TECH_FLORIPA_CERTIFICATE_VALIDATE_URL }}
13+
TF_VAR_api_key_value: ${{ secrets.API_KEY_VALUE }}
14+
TFPLAN_S3_BUCKET: tech-floripa-plan-artifacts
15+
GH_TOKEN: ${{ github.token }}
16+
17+
permissions:
18+
contents: read
19+
pull-requests: write
20+
id-token: write
21+
22+
jobs:
23+
plan:
24+
strategy:
25+
matrix:
26+
include:
27+
- dir: terraform
28+
env: shared
29+
- dir: terraform/env/dev
30+
env: dev
31+
32+
runs-on: ubuntu-latest
33+
steps:
34+
- uses: actions/checkout@v5
35+
36+
- uses: hashicorp/setup-terraform@v3
37+
38+
- uses: aws-actions/configure-aws-credentials@v4
39+
with:
40+
role-to-assume: ${{ env.TF_VAR_github_actions_role_arn }}
41+
aws-region: ${{ env.TF_VAR_aws_region }}
42+
role-session-name: TerraformPlanSession-${{ matrix.env }}
43+
44+
- name: Terraform Init
45+
run: |
46+
set -euo pipefail
47+
terraform plan -input=false -out=tfplan
48+
terraform show -no-color tfplan > plan-output.txt
49+
echo "## Terraform Plan (${{ matrix.env }})"
50+
echo '```hcl'
51+
cat plan-output.txt
52+
echo '```'
53+
echo '```hcl'
54+
cat plan-output.txt
55+
echo '```'
56+
} > plan-comment.md
57+
58+
working-directory: ${{ matrix.dir }}

0 commit comments

Comments
 (0)