Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/cirrus-actions/branch-guard

Action to guard branches from merges when any of the latest check suites or commit statuses is failing.
https://github.com/cirrus-actions/branch-guard

github-actions

Last synced: 6 days ago
JSON representation

Action to guard branches from merges when any of the latest check suites or commit statuses is failing.

Awesome Lists containing this project

README

        

# Deprecated

In favor of a more suphesicated GitHub App. See https://github.com/cirruslabs/gh-submit-queue

# Block PR merges when Checks for target branches are failing 🔓

![](demo.png)

Create following `.github/workflows/branch-guard.yml` that will block PRs from merging when the latest [Check Suite](https://developer.github.com/v3/checks/)
starts failing and unblock once it's passing again:

```yaml
on:
pull_request: # to update newly open PRs or when a PR is synced
check_suite: # to update all PRs upon a Check Suite completion
type: ['completed']

name: Branch Guard
jobs:
branch-guard:
name: Branch Guard
if: github.event.check_suite.head_branch == 'master' || github.event.pull_request.base.ref == 'master'
runs-on: ubuntu-latest
steps:
- uses: cirrus-actions/[email protected]
with:
appsToCheck: Cirrus CI # or any other App name (can be a comma separated list of names)
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
```

**Disclaimer:** Action doesn't fully work on PRs from forks since GitHub Actions for such PRs have only read permissions and can't update the status checks. Please remove `pull_request` line from `branch-guard.yml` to mitigate the issue,