Recieves POST request from Github, then pulls changes, migrates the DB and restarts the application.
-
Clone the application:
git clone git://github.com/iamsolarpowered/deploy_magic -
Copy the example configuration file to config.yml:
cp config.yml.EXAMPLE config.yml -
Edit config.yml as needed
-
Configure Apache (with Passenger), pointing to /path/to/app/public, or start the server by running
ruby /path/to/app/start_server.rb -
Setup Post-Recieve URL to hit username:password@urlofapp.com/name_of_repo (see github.com/guides/post-receive-hooks)
That’s it. Now, when you push to the Github repo, the changes will be pulled to the server, any new migrations will be run, and the app will be restarted. Instant, painless deployment.
Copyright 2009 Ben Shymkiw. Released under the MIT License.