https://github.com/jelder/bownse
The Heroku Webhook Multiplexer
https://github.com/jelder/bownse
go heroku slack webhook
Last synced: 2 months ago
JSON representation
The Heroku Webhook Multiplexer
- Host: GitHub
- URL: https://github.com/jelder/bownse
- Owner: jelder
- License: mit
- Created: 2015-01-29T22:16:04.000Z (over 11 years ago)
- Default Branch: master
- Last Pushed: 2015-10-07T17:51:43.000Z (over 10 years ago)
- Last Synced: 2026-03-29T16:59:43.848Z (3 months ago)
- Topics: go, heroku, slack, webhook
- Language: Go
- Homepage:
- Size: 977 KB
- Stars: 1
- Watchers: 1
- Forks: 1
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# bownse
[](https://circleci.com/gh/jelder/bownse)
[](https://codeclimate.com/github/jelder/bownse)
How Heroku's [deploy webhooks](https://devcenter.heroku.com/articles/deploy-hooks#http-post-hook) were supposed to work: Ping a bunch of relevant services after every deploy. Bownse sits between Heroku and your addons, sending artisnal webhooks to your team chat, application performance monitors, and error trackers.
Currently supports Slack, Honeybadger, and NewRelic.
You can launch your own private Bownse instance from this button.
[](https://heroku.com/deploy)
## Setup
Once you've deployed your own copy of Bownse, configure all of your Heroku apps to use it. The URL will be the URL of your Bownse instance followed by the value `SECRET_KEY` ENV var. For example, it might look a lot like this:
```
https://boundless-bownse.herokuapp.com/074585ce6ef2d8e457d31fc4af098bbdae039c640f041184f9b2488d60e19012
```
Heroku doesn't expose the upstream GitHub respository name, so you will have to configure it manually as an ENV var for each of your apps.
```bash
heroku config:set GITHUB_REPO=myname/myapp --app myapp
```
Finally, you must tell your Bownse instance how to authenticate against Heroku to get the information it needs. It exclusively uses the `config-vars` endpoint and never modifies anything. More details here: https://devcenter.heroku.com/articles/platform-api-reference#config-vars
```bash
heroku config:set HEROKU_AUTH_TOKEN=$(heroku auth:token) --app my-bownse-instance
```
## Slack
Bownse will figure everything out from your app's ENV vars, with one exception: Slack. Create an incoming webhook at https://boundless.slack.com/services/new/incoming-webhook, and then tell your Bownse instance about it by setting the `SLACK_URL` ENV var.
If you don't use Slack, I envy you. It's a pretty mediocre system especially for developers.
## Contributing
Obviously, you are expected to follow the [contributor code of conduct](http://contributor-covenant.org/version/1/0/0/).
1. Fork it
2. Create your feature branch (`git checkout -b my-new-feature`)
3. Commit your changes (`git commit -am 'Add some feature'`)
4. Push to the branch (`git push origin my-new-feature`)
5. Create new Pull Request