This program takes a GitHub webhook POST request, parses it according to configuration, and redirects it to another POST endpoint.
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Matei-Alexandru Gardus e100982fda
Add decode of base64 string from GitHub webhook
10 ay önce
.vscode Initial commit 11 ay önce
config Reconfigure config package 10 ay önce
hooks Make "original" field exported 10 ay önce
log Fix logger to show information level 10 ay önce
server Add decode of base64 string from GitHub webhook 10 ay önce
.gitignore Initial commit 11 ay önce
LICENSE Initial commit 11 ay önce
README.md Add information of how to use to README 10 ay önce
main.go Fix main.go file in order to actually work 10 ay önce

README.md

GitHookParser

GitHookParser is a nifty server written in Go that can take a GitHub webhook, parse it according to configuration, and redirect it to another POST endpoint.

Primarily, this can be used to manage multiple webhooks for GitHub repos on the fly and send them all to a push notification service defined by the user, such as Pushover. Currently, this is the only notification service supported.

Getting started

To install GitHookParser, simply

go get -u -v github.com/stormfirefox1/GitHookParser

By default, a configuration file is needed under $HOME/.config/git-hook-parser/config.yml. If there is a file there, it will read any environment variables from the respective file. You will need to set, at minimum:

  • REDIRECT_URL
  • API_KEY
  • USER_TOKEN

After creating the configuration file, run the compiled binary, either by go install it or by running go build and moving the binary to your directory of choice.

Then, point GitHub’s webhook to:

http://example.com:80/github-hook

and watch the magic happen.