A plugin to make it easier to host migrations for multiple databases in one rails app. This has been built for Rails 3.0.x.
License: MIT License
Ruby 100.00%
multi-database-migrations's Introduction
A plugin to make it easier to host migrations for multiple databases in one rails app. NOTE: This has been upgraded to work with Rails 3.0.x.
=======
CONCEPT
=======
Rather than mixing all the migrations in one folder and relying on the specific migration to define which database it works with, we have separate folders for each database. Supposing you had a normal database--myapp_development--and a legacy database--legacy_development--we'd have something like:
db/migrate
db/migrate/myapp
db/migrate/legacy
and each database's migrations sit in the relevant folder.
=====
USAGE
=====
With the plugin installed we have:
rails generate multi_migration MigrationName DBName ....
which should accept all the options of a normal migration generation, and
rake db:multi:migrate DATABASE=xxxx
normally we would expect the database name to match rails' conventions, eg:
rake db:multi:migrate DATABASE=myapp
would look for a database configuration of myapp_development. But if you specify a full database name, we will look for a configuration with a matching database name.
======
CREDIT
======
This plugin was originally created by James Stewart - http://jystewart.net/process/
Converted to Rails 3 by Chris Rohr http://www.nearinfinity.com/blogs/chris_rohr/