Do not attempt to delete protected branches (#21)

* Do not attempt to delete protected branches

* Allow for clean exit if branch is already deleted (#2)

Also reorganize for happy path.
See also -
2 files changed
tree: f2a32174e9fbcf056d4ed5f7a015938729adbb42
  1. .github/
  2. .travis.yml
  3. Dockerfile
  5. Makefile
  7. cleanup-pr-branch
  8. demo.png

Branch Cleanup Action

Travis CI

A GitHub action to automatically delete the branch after a pull request has been merged. Here's a blog post describing this action in more detail.

NOTE: This will never delete the repository's default branch or protected branches. If the pull request is closed without merging, it will not delete it.

Table of Contents


workflow "on pull request merge, delete the branch" {
  on = "pull_request"
  resolves = ["branch cleanup"]

action "branch cleanup" {
  uses = "jessfraz/branch-cleanup-action@master"
  secrets = ["GITHUB_TOKEN"]

If you include this in another Workflow, you may want to configure the environment variable NO_BRANCH_DELETED_EXIT_CODE. The default value for this is 78, as Github Actions will mark a check as "neutral" (neither failed/succeeded) when you exit with code 78. This will however cancel any other actions running in parallel in this workflow.

If you don't want it to cancel, configure your workflow as follows:

action "branch cleanup" {
  uses = "jessfraz/branch-cleanup-action@master"
  secrets = ["GITHUB_TOKEN"]

  env = {



Running the tests

The tests use shellcheck. You don't need to install anything (assuming you have docker installed). The tests run in a container.

$ make test