Wizarddev::Heroku
Deploys rails apps to heroku
Installation
Add this line to your application's Gemfile:
gem 'wizarddev-heroku'
And then execute:
$ bundle
Or install it yourself as:
$ gem install wizarddev-heroku
Usage
From rake deploy
Deploys the currently checked out revision to Heroku.
Reads the project's app.json file to determine tasks for a target.
Tasks include:
Tag the release and pushes it to github
Deploy the release to Heroku
Execute commands remotely eg 'rake db:migrate'
Restart the app
Uses the ~/.netrc file for authentication per the Heroku toolbelt.
usage: rake deploy TARGET=target_name
usage: rake deploy:{staging|production}
Example app.json
This is very similar and compatible with Heroku's app.json
.
{
"name": "Our Cool App",
"description": "Great app to use all the time.",
"website": "https://www.ourcoolapp.com",
"heroku-environments": {
"staging": {
"app-name": "ourcoolapp-staging",
"tag-name": false,
"force-push": true,
"scripts": [
{ "cmd": "rake db:migrate", "restart": true }
]
},
"production": {
"app-name": "ourcoolapp-production",
"force-push": false,
"tag-name": "prod",
"scripts": [
{ "cmd": "rake db:migrate", "restart": true, "remote": true },
{ "cmd": "say 'deploy complete'"}
]
}
},
"source-repo": "git@github.com:wizarddevelopment/ourcoolapp.git"
}
Contributing
- Fork it ( https://github.com/wizarddevelopment/wizarddev-heroku/fork )
- Create your feature branch (
git checkout -b my-new-feature
) - Commit your changes (
git commit -am 'Add some feature'
) - Push to the branch (
git push origin my-new-feature
) - Create a new Pull Request