Tutter is a web app that trigger actions based on Github events(push, pull_reqeust, release, issue, ...)
- Pluggable with custom actions
- Supports multiple projects
gem install tutter
put a configuration file in /etc/tutter.yaml
an example can be found under conf/tutter.yaml
Let's install the thanks
action that thank anyone that creates an issue in your project.
name
- username/projectnameaccess_token
- github access token (can be generated here)github_site
- github websitegithub_api_enpoint
- github api endpintaction
- action you wish to use for the projectaction_settings
- whatever settings your action require
Hooks can be configured just to send the event that you're interested in. The important part is that Payload URL
points to the webserver running tutter
https://github.com/ORG/PROJECT/settings/hooks/new
Example of how the thanks
demo-action look like. Tutter listen for issue events and posts back with a greeting.
See thanks action
#####Required methods and their arguments
initialize
settings - contains a hash of action specific settings
client - Used to access the github api, all authentication is already done by tutter
project - Project name, eg jhaals/tutter
event - Event type
data - POST data that github send when a hook is triggered
run
- Run action
Tutter uses octokit.rb to communicate with the Github API
- Support multiple actions per project
- Authenticate as a Github application
- Features your're missing (please contribute)
- Tests!