Want to see more badges? Click here!
Want to run this app with GitHub Actions? Click here
A GitHub app built with Probot that automatically deletes a branch after it's merged. That's it, enjoy!
-
First, follow these instructions for making your own GitHub app.
- Give your app the following permissions:
- Repository contents: Read & Write.
- Pull requests: Read
- And Subscribe to the following events
- Pull Request
- Give your app the following permissions:
-
Then, clone the repo:
git clone [email protected]:SvanBoxel/delete-merged-branch.git
-
Copy
.env.example
to.env
and set the right environment variables as here -
Now, install app dependencies and run it:
# Install dependencies
npm install
# Run the bot
npm start
-
Make sure you have docker installed.
-
Follow the same steps as running locally to set up the GitHub app and environment files.
-
Build the docker image:
docker build -t delete-merged-branch .
-
Run the docker image:
docker run -i -t --rm \ -v "$(pwd)/.env:/app/.env" \ -p 3000:3000 \ delete-merged-branch
Alternate Example: Running test in the docker image
docker run -i -t --rm \
-v "$(pwd)/.env:/app/.env" \
-v "$(pwd)/sample-data:/sample-data" \
delete-merged-branch \
receive /app/index.js -p /sample-data/event.json
This GitHub app listens to the pull_request.closed
webhook. If a pull request is closed and the connected branch is merged, it will delete the branch.
The optional app configuration YAML file should be saved as .github/delete-merged-branch-config.yml
. At the moment it supports the following options:
exclude
(array) - list of branches that should not be automatically deleted after a merge. Wildcards supported.
Example .github/delete-merged-branch-config.yml
:
exclude:
- development
- qa
- feature-*
CI (Travis) is in charge of releasing new versions of the GitHub Application to Now. On every new commit to master we run semantic-release to determine whether the major/minor/patch version should be incremented. If so, we update the version running in production.
This app is compatible with GitHub Actions. You need to create a workflow that is triggered on the pull_request
event for this. Then, you use this repo for the action. (SvanBoxel/delete-merged-branch@master
). Don't forget to check the GITHUB_TOKEN
secret. That's it.
If you have suggestions for how this GitHub app could be improved, or want to report a bug, open an issue! We'd love all and any contributions.
For more, check out the Contributing Guide.
ISC © 2018 Sebass van Boxel [email protected]