Skip to content

Instantly share code, notes, and snippets.

@dehio3
Last active November 6, 2021 17:37
Show Gist options
  • Save dehio3/3ceeaa513ec95b5f04b23c2f487c266b to your computer and use it in GitHub Desktop.
Save dehio3/3ceeaa513ec95b5f04b23c2f487c266b to your computer and use it in GitHub Desktop.
name: 'Terraform Plan'
on:
- pull_request
permissions:
id-token: write
contents: write
issues: write
pull-requests: write
jobs:
terraform:
name: 'Terraform Plan'
runs-on: ubuntu-latest
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
steps:
- name: 'Checkout'
uses: actions/checkout@master
- name: Configure AWS Credentials
uses: aws-actions/configure-aws-credentials@master
with:
role-to-assume: ${{ secrets.AWS_ASSUME_ROLE_ARN }}
role-session-name: terraform
aws-region: ap-northeast-1
- name: "Terraform Setup"
uses: hashicorp/setup-terraform@v1
with:
terraform_version: 0.14.9
- name: "Terraform format"
id: format
run: terraform fmt -check -recursive
continue-on-error: true
- name: Post Format
if: always() && github.ref != 'refs/heads/master' && (steps.fmt.outcome == 'success' || steps.fmt.outcome == 'failure')
uses: robburger/terraform-pr-commenter@v1
with:
commenter_type: fmt
commenter_input: ${{ format('{0}{1}', steps.fmt.outputs.stdout, steps.fmt.outputs.stderr) }}
commenter_exitcode: ${{ steps.fmt.outputs.exitcode }}
- name: "Terraform init"
id: init
run: terraform init
- name: Post Init
if: always() && github.ref != 'refs/heads/master' && (steps.init.outcome == 'success' || steps.init.outcome == 'failure')
uses: robburger/terraform-pr-commenter@v1
with:
commenter_type: init
commenter_input: ${{ format('{0}{1}', steps.init.outputs.stdout, steps.init.outputs.stderr) }}
commenter_exitcode: ${{ steps.init.outputs.exitcode }}
- name: "Terraform validate"
id: validate
run: terraform validate
- name: Post Validate
if: always() && github.ref != 'refs/heads/master' && (steps.validate.outcome == 'success' || steps.validate.outcome == 'failure')
uses: robburger/terraform-pr-commenter@v1
with:
commenter_type: validate
commenter_input: ${{ format('{0}{1}', steps.validate.outputs.stdout, steps.validate.outputs.stderr) }}
commenter_exitcode: ${{ steps.validate.outputs.exitcode }}
- name: "Terraform plan"
id: plan
run: terraform plan
- name: Post Plan
if: always() && github.ref != 'refs/heads/master' && (steps.plan.outcome == 'success' || steps.plan.outcome == 'failure')
uses: robburger/terraform-pr-commenter@v1
with:
commenter_type: plan
commenter_input: ${{ format('{0}{1}', steps.plan.outputs.stdout, steps.plan.outputs.stderr) }}
commenter_exitcode: ${{ steps.plan.outputs.exitcode }}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment