CARVIEW |
Select Language
HTTP/2 302
server: nginx
date: Tue, 05 Aug 2025 00:35:16 GMT
content-type: text/plain; charset=utf-8
content-length: 0
x-archive-redirect-reason: found capture at 20100328192719
location: https://web.archive.org/web/20100328192719/https://github.com/pjhyett/github-services
server-timing: captures_list;dur=1.004679, exclusion.robots;dur=0.031320, exclusion.robots.policy;dur=0.014616, esindex;dur=0.041893, cdx.remote;dur=155.718634, LoadShardBlock;dur=293.357439, PetaboxLoader3.datanode;dur=92.641725, PetaboxLoader3.resolve;dur=112.024109
x-app-server: wwwb-app212
x-ts: 302
x-tr: 501
server-timing: TR;dur=0,Tw;dur=0,Tc;dur=0
set-cookie: wb-p-SERVER=wwwb-app212; path=/
x-location: All
x-rl: 0
x-na: 0
x-page-cache: MISS
server-timing: MISS
x-nid: DigitalOcean
referrer-policy: no-referrer-when-downgrade
permissions-policy: interest-cohort=()
HTTP/2 200
server: nginx
date: Tue, 05 Aug 2025 00:35:16 GMT
content-type: text/html; charset=utf-8
x-archive-orig-server: nginx/0.7.61
x-archive-orig-date: Sun, 28 Mar 2010 19:27:19 GMT
x-archive-orig-connection: close
x-archive-orig-status: 200 OK
x-archive-orig-etag: "b26aa04e4a666fa3bcee2386c931020a"
x-archive-orig-x-runtime: 146ms
x-archive-orig-content-length: 27866
x-archive-orig-cache-control: private, max-age=0, must-revalidate
x-archive-guessed-content-type: text/html
x-archive-guessed-charset: utf-8
memento-datetime: Sun, 28 Mar 2010 19:27:19 GMT
link: ; rel="original", ; rel="timemap"; type="application/link-format", ; rel="timegate", ; rel="first memento"; datetime="Fri, 02 May 2008 21:03:29 GMT", ; rel="prev memento"; datetime="Sat, 13 Feb 2010 22:40:11 GMT", ; rel="memento"; datetime="Sun, 28 Mar 2010 19:27:19 GMT", ; rel="next memento"; datetime="Sat, 24 Sep 2011 07:16:06 GMT", ; rel="last memento"; datetime="Sat, 26 Jul 2025 12:25:57 GMT"
content-security-policy: default-src 'self' 'unsafe-eval' 'unsafe-inline' data: blob: archive.org web.archive.org web-static.archive.org wayback-api.archive.org athena.archive.org analytics.archive.org pragma.archivelab.org wwwb-events.archive.org
x-archive-src: 51_15_20100328161903_crawl103-c/51_15_20100328192521_crawl101.arc.gz
server-timing: captures_list;dur=0.494521, exclusion.robots;dur=0.019277, exclusion.robots.policy;dur=0.008752, esindex;dur=0.011220, cdx.remote;dur=13.802122, LoadShardBlock;dur=151.599398, PetaboxLoader3.datanode;dur=143.853254, PetaboxLoader3.resolve;dur=91.563147, load_resource;dur=113.168453
x-app-server: wwwb-app212
x-ts: 200
x-tr: 337
server-timing: TR;dur=0,Tw;dur=0,Tc;dur=0
x-location: All
x-rl: 0
x-na: 0
x-page-cache: MISS
server-timing: MISS
x-nid: DigitalOcean
referrer-policy: no-referrer-when-downgrade
permissions-policy: interest-cohort=()
content-encoding: gzip
pjhyett's github-services at master - GitHub
pjhyett / github-services
- Source
- Commits
- Network (92)
- Issues (8)
- Downloads (0)
- Wiki (1)
- Graphs
-
Branch:
master
click here to add a description
click here to add a homepage
README.mkdn
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
https://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| end
Vendor 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) - Add your name to the
CONTRIBUTORS
file - Create an Issue at https://github.com/pjhyett/github-services/issues with links to each commit you want included.
- Once it's accepted we'll add any new necessary data fields to the GitHub front-end so people can start using your addition.
Patches including tests are encouraged
Running the server locally
- [sudo] gem install hpricot
- git clone git://github.com/pjhyett/github-services.git
- cd github-services
ruby github-services.rb
Bugs in the code should be filed under the Issues tab
- Problems with the service hooks can be filed here: https://support.github.com/discussions/post-receive-issues
How to test your service
- Start the github-services Sinatra server with
ruby github-services.rb
. By default, it runs on port 8080. - Edit the doc/github_payload file as necessary to test your service. (Usually just editing the "data" values but leaving the "payload" alone.)
- Send the doc/github_payload file to your service by calling:
./script/deliver_payload [service-name]
NOTE: The name of the service and your docs/ file matters. If your service is RunCodeRun, your service
and docs MUST be run_code_run
. Good luck!