Skip to content

bloomberg/python-github-webhook

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

21 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

GitHub Webhook (micro) Framework

PyPI

python-github-webhook is a very simple, but powerful, microframework for writing GitHub webhooks in Python. It can be used to write webhooks for individual repositories or whole organisations, and can be used for GitHub.com or GitHub Enterprise installations; in fact, it was orginally developed for Bloomberg's GHE install.

Getting started

python-github-webhook is designed to be as simple as possible, to make a simple Webhook that receives push events all it takes is:

from github_webhook import Webhook
from flask import Flask

app = Flask(__name__)  # Standard Flask app
webhook = Webhook(app) # Defines '/postreceive' endpoint

@app.route("/")        # Standard Flask endpoint
def hello_world():
    return "Hello, World!"

@webhook.hook()        # Defines a handler for the 'push' event
def on_push(data):
    print("Got push with: {0}".format(data))

if __name__ == "__main__":
    app.run(host="0.0.0.0", port=80)

License

The python-github-webhook repository is distributed under the Apache License (version 2.0); see the LICENSE file at the top of the source tree for more information.