Railman Deployment

Gem Version Build Status Dependency Status Code Climate Coverage Status

railman-deployment gem adds capistrano tasks for automated deployment of rails applications generated by railman

Installation

Add this line to your application's Gemfile:

gem 'railman-deployment'

And then execute:

$ bundle

Usage

Add require 'railman/deployment' to Capfile and you'll get following capistrano tasks:

  • cap ENV setup => Setup rails application for the first time on a server
  • cap ENV deploy => Deploy rails application
  • cap ENV update => Synchronize local database with the production database; sync files if any (see :sync_dirs)
  • cap ENV remove => Remove the application completely from the server
  • cap ENV reset_server => Recreate server database from db/.sql and sync local files to server (see :sync_dirs)

Specify deployment settings in config/deploy.rb and config/deploy/production.rb.

Example deploy.rb:

set :application, 'first'
set :repo_url, '[email protected]:mmustermann/first.git'
append :sync_dirs, 'public/system', 'uploads'
set :log_level, :info

Example production.rb:

set :server, 'prod.myapp.com'
set :user, 'deploy'
server fetch(:server), user: fetch(:user), roles: %w{web app db}
# set :deploy_branch, 'another'

Development

After checking out the repo, run bin/setup to install dependencies. Then, run rake test to run the tests. You can also run bin/console for an interactive prompt that will allow you to experiment.

To install this gem onto your local machine, run bundle exec rake install.

To release a new version, run bundle exec rake release_patch, bundle exec rake release_minor, oder bundle exec rake release_major, which will create a git tag for the version, push git commits and tags, and push the .gem file to https://rubygems.org.

Contributing

Bug reports and pull requests are welcome on github at https://github.com/igorj/railman-deployment.

License

The gem is available as open source under the terms of the MIT License.