Cloner
Easily clone your production Mongoid or PostgreSQL database and files for local development or staging area.
Installation
Add this line to your application's Gemfile:
gem 'cloner'
And then execute:
$ bundle
Or install it yourself as:
$ gem install cloner
Usage
create lib/tasks/dl.thor with following content:
require 'cloner'
class Dl < Cloner::Base
no_commands do
def rails_path
File.("../../../config/environment", __FILE__)
end
def ssh_host
'hottea.ru'
end
def ssh_user
'tea'
end
def remote_dump_path
'/data/tea/dump'
end
def remote_app_path
"/data/tea/app/current"
end
end
desc "download", "clone files and DB from production"
def download
load_env
clone_db
rsync_public("ckeditor_assets")
rsync_public("uploads")
end
end
Adjust it to your project and deployment.
Run it:
thor dl
Additional
All functions from cloner/internal.rb can be overriden, for example:
def verbose?
false
end
def env_from
'production'
end
def ssh_opts
{}
end
Contributing
- Fork it ( https://github.com/[my-github-username]/cloner/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