Skip to content

Configurable post-receive hook handler, implemented as a Django app basically for Github and Bitbucket.

License

Notifications You must be signed in to change notification settings

philippeowagner/django-vcs-hook

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

35 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

github_hook

Simple continuous integration for Django developers, taking the form of a Django app for managing GitHub (or BitBucket) post receive hooks.

https://travis-ci.org/sheppard/django-github-hook.svg?branch=master

Tested on Python 2.7 and 3.4, with Django 1.6 and 1.7.

Usage

  • pip install django-github-hook
  • Add github_hook to INSTALLED_APPS in your settings.py
  • ./manage.py migrate (or ./manage.py syncdb)
  • Add e.g. url(r'^hook/', include('github_hook.urls')) to your urls.py urlpatterns
  • Log into the Django admin console
  • Configure your hook with the folowing fields:
    • Name: Hook identifier
    • User: Repo username
    • Repo: Repo name
    • Path: Absolute path to script to execute
  • Go to your repo's "Service Hooks" settings on GitHub (or BitBucket) and add a WebHook/POST URL:
    • http[s]://[yourwebsite]/hook
    • The repo information will be read from the JSON payload
  • Alternatively, you can specify a specific hook by name:
    • http[s]://[yourwebsite]/hook/name

Examples

The following snippet show how to connect the webhook to a method using django's signal mechanism. Note that path must be set to "send-signal" in the hook object instead of an absolute path to a script.

from github_hook.models import hook_signal

def processWebhook(sender, **kwargs):
        for key, value in kwargs.iteritems():
                print key, value

hook_signal.connect(processWebhook)

About

Configurable post-receive hook handler, implemented as a Django app basically for Github and Bitbucket.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Python 99.6%
  • Shell 0.4%