This repository is private.
All pages are served over SSL and all pushing and pulling is done over SSH.
No one may fork, clone, or view it unless they are added as a member.
Every repository with this icon (
) is private.
Every repository with this icon (
This repository is public.
Anyone may fork, clone, or view it.
Every repository with this icon (
) is public.
Every repository with this icon (
| name | age | message | |
|---|---|---|---|
| |
.gitignore | Mon Apr 28 16:45:10 -0700 2008 | |
| |
README.mkdn | Tue May 06 15:11:07 -0700 2008 | |
| |
docs/ | Tue May 06 15:00:41 -0700 2008 | |
| |
github-services.rb | Tue May 06 15:00:41 -0700 2008 | |
| |
services/ | Tue May 06 15:00:41 -0700 2008 | |
| |
vendor/ | Mon Apr 28 18:03:19 -0700 2008 |
GitHub Services
How the services work
- A post-receive background job is submitted when someone pushes their commits to GitHub
- If the repository the commits belong to has any "Service Hooks" setup, the job makes a request to
http://services-server/service_name/with the following data:params[:payload]containing all of the commit data (the same data you get using the API)params[:data]containing the service data (username, password, room, etc)
- Sinatra (github-services.rb) processes the request (twitters your data, says something in campfire, posts it to lighthouse, etc)
- Rinse and repeat
Steps to contributing
- Fork the project
Create a new file in /services/ called
service_name.rb, using the following template:service :service_name do |data, payload| endVendor any external gems your code relies on, and make sure to include it in the requires at the top of github-services.rb
- Add documentation to
docs/service_name(refer to the others for guidance) - Send us a pull request
- Once it's accepted, we'll add any new necessary data fields to the GitHub front-end so people can start using your addition.
If you're interested in setting up an interesting test framework to manage the services, that would also be greatly appreciated.
Bugs can be filed here: Lighthouse
Thanks to the following people for making this possible
- Blake Mizerany
- Brandon Keepers
- Christian Neukirchen
- Florian Frank
- John Nunemaker
- John Reilly
- Luke Redpath
- Noah (ngage)
- Sean O'Brien
- Tekkub Stoutwrithe









