GitHub Action: Terraform Pull Request Report Generator
Updates Pull Requests with visual diff of Terraform Plan changes
name : terraform-plan
on :
pull_request :
jobs :
terraform-plan :
runs-on : ubuntu-latest
steps :
- uses : actions/checkout@v4
- uses : hashicorp/setup-terraform@v3
with :
terraform_wrapper : false
- run : terraform init
- run : terraform plan -lock=false -out terraform.plan
# generate plain output
- run : terraform show -no-color terraform.plan > terraform.text
# generate json output
- run : terraform show -json terraform.plan > terraform.json
- uses : ahmadnassri/action-terraform-report@v4
with :
# tell the action the plan outputs
terraform-text : ${{ github.workspace }}/terraform.text
terraform-json : ${{ github.workspace }}/terraform.json
remove-stale-reports : true
Note : Ensure terraform_wrapper
is set to false
to better capture the output into a file (or use your own method)
input
required
default
description
terraform-text
✅
-
path to the file resulting from the output of terraform show /path/to/plan
terraform-json
✅
-
path to the file resulting from the output of terraform show -json /path/to/plan
github-token
❌
github.token
The GitHub token used to post comments on pull requests
show-plan
❌
true
include the terraform plan view in the final output?
show-diff
❌
false
include the diff view in the final output?
remove-stale-reports
❌
false
remove report comments for old commits?
custom-header
❌
:robot: Terraform Report
The header text for the github comment
Pull Request Comment (default)
Pull Request Comment (Plan)
Pull Request Comment (Diff)
Author: Ahmad Nassri •
Twitter: @AhmadNassri