Skip to content
This repository

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP

Capistrano tasks to work with production data and assets

tree: 2f4697a019

Fetching latest commit…

Cannot retrieve the latest commit at this time

README.rdoc

Capistrano Transmit

Rails tasks to work with production data and assets.

This Ruby on Rails plugin allows you to fetch the production database and assets and store them in your local development environment. For reasonably sized projects, you should do this regularly since you will notice typical production-related slowdowns such as missing indexes. The task to fetch assets helps keep your images un-broken, which is always nice.

The only thing this plugin does, is extend Capistrano. No Rails code is loaded. Capistrano loads the scripts in the recipes directory, and that's just what we need.

The plugin uses rsync to transfer the files, which means any existing files are skipped and/or appended based on their checksum. The transfers are compressed as well so we don't need to gzip the contents first. All this assumes both your production and development environment are Unix. Tested on Linux production and Mac OS X development.

Installation for Rails 2

In config/environments/development.rb:

config.gem 'capistrano_transmit', :lib => false

Then add to your deploy.rb:

require 'capistrano/transmit'

Installation for Rails 3

In your Gemfile in the development group:

gem 'capistrano_transmit'

Then add to your deploy.rb:

require 'capistrano/transmit'

Examples

cap transmit:get:mysql		# Fetch the production database into local development
cap transmit:put:mysql		# Overwrite the production MySQL database with your development data

Prerequisites

You need Capistrano 2 for this gem to work.

A couple variables can be overridden by setting them in config/deploy.rb:

user                      # SSH user, defaults to nil, which falls back to your unix user
deploy_host               # the host on which to run the db dump, falls back to your first db
dumpfile                  # remote pathname to dump the database in, defaults to tmp/${production}.sql.gz

Copyright © 2010-2011 Joost Baaij, released under the MIT license.

Something went wrong with that request. Please try again.