Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat: updated github workflow auto merge file #37

Closed
wants to merge 1 commit into from
Closed
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
78 changes: 69 additions & 9 deletions .github/workflows/automerge.yml
Original file line number Diff line number Diff line change
@@ -1,12 +1,72 @@
---
name: Auto merge
name: Automerge

on:
pull_request:
jobs:
auto-merge:
uses: clouddrove/github-shared-workflows/.github/workflows/auto_merge.yml@1.2.1
workflow_call:
inputs:
tfcheck:
description: 'Enter the tfcheck action name.'
required: false
type: string
secrets:
GITHUB: ${{ secrets.GITHUB }}
with:
tfcheck: 'tf-checks-example / Check code format'
...
GITHUB:
description: 'GitHub Token'
required: false

jobs:
static-checks:
name: Check Static Analysis
runs-on: ubuntu-latest
strategy:
matrix:
tf-checks: ["tf-lint / tflint", "tfsec / tfsec sarif report", "${{ inputs.tfcheck }}"]
if: github.actor == 'dependabot[bot]'
steps:
- name: Wait for 2 Minutes
run: sleep 120s
shell: bash

- name: Wait for "${{ matrix.tf-checks }}" to Succeed
uses: lewagon/wait-on-check-action@v1.3.3
with:
ref: ${{ github.event.pull_request.head.sha }}
check-name: ${{ matrix.tf-checks }}
repo-token: ${{ secrets.GITHUB }}
wait-interval: 30

autoapprove:
permissions:
contents: write
pull-requests: write
name: Auto Approve PRs by Dependabot
needs: static-checks
runs-on: ubuntu-latest
if: github.actor == 'dependabot[bot]'
steps:
- name: Approve PR via GitHub Bot
run: gh pr review --approve "$PR_URL"
env:
PR_URL: ${{github.event.pull_request.html_url}}
GITHUB_TOKEN: ${{secrets.GITHUB_TOKEN}}

- name: Approve PR via Anmol Nagpal
run: gh pr review --approve "$PR_URL"
env:
PR_URL: ${{github.event.pull_request.html_url}}
GITHUB_TOKEN: ${{secrets.GITHUB}}

automerge:
runs-on: ubuntu-latest
needs: autoapprove
steps:
- name: Automerge
uses: pascalgn/automerge-action@v0.16.2
if: github.event_name == 'pull_request' && github.event.pull_request.draft == false
env:
GITHUB_TOKEN: ${{ secrets.GITHUB }}
MERGE_FILTER_AUTHOR: 'dependabot[bot]'
MERGE_METHOD: "merge"
MERGE_DELETE_BRANCH: "true"
MERGE_LABELS: "dependencies, github_actions"
MERGE_REQUIRED_APPROVALS: ""
...
Loading