I've been meaning to blog about this for a while now. Since I still
haven't had a chance to write a proper post at least I can give you
some of the basic details.
I'm running the patch monitor application on Heroku (using the free
version.) Here are the only two files that you need:
config.ru (http://gist.github.com/207909)
app.rb (http://gist.github.com/207911)
The application file was heavily inspired by the existing Lighthouse
hook support[1] by Pj Hyett. My modifications allow any user to add
this hook to their fork without requiring that they have the full
read/write access token required by the built in Github approach.
This allows users to add [#123] to their commits and then issue #123
in LH will be marked patched and the relevant Github changeset will be
linked to the issue in Github.
The actual Lighthouse tokens, etc. are set as environment variables.
Heroku has a specific way to do this (see the excellent docs[2].)
This actually took quite a while to get it working properly. Here are
a few things that might save you some time and aggravation. One
problem I had with the testing was that either Github or Lighthouse
was throwing away some of the changes when they were identical to the
ones I pushed already. That made for some difficult debugging.
The other problem I discovered was that there was a known issue
related to branches. Github would often not detect changes on a
branch which was a problem b/c we typically create issues as separate
branches. They may have worked that out by now.
Good luck. Let me know how you make out!
Sean Schofield
---------------------------------------
Rails Dog LLC
5335 Wisconsin Avenue NW
Suite 440
Washington, DC 20015
voice: (301)560-2000
---------------------------------------
[1] http://github.com/pjhyett/github-services
[2] http://docs.heroku.com/config-vars
We use LiquidWeb[1] for hosting spreecommerce.com. So far I'm very impressed.
Sean