Sha256: 04910a30f289222a399d98f206e040b4b493a7a0d4ec1e5d1eea1fa92720a14d

Contents?: true

Size: 1.54 KB

Versions: 4

Compression:

Stored size: 1.54 KB

Contents

Description:
  The plugin migration generator assists in working with schema additions 
  required by plugins. Instead of running migrations from plugins directly,
  the generator creates a regular Rails migration which will be responsible
  for migrating the plugins from their current version to the latest version
  installed.
  
  This is important because the set of application migrations remains an
  accurate record of the state of the database, even as plugins are installed
  and removed during the development process.

Example:
  ./script/generate plugin_migration [<plugin_name> <another_plugin_name> ...]

  This will generate:

    RAILS_ROOT
      |- db
          |-migrate
              |- xxx_plugin_migrations.rb

  which contains the migrations for the given plugin(s).
  
  
Advanced Usage:

There may be situations where you need *complete* control over the migrations
of plugins in your application, migrating a certainly plugin down to X, and
another plugin up to Y, where neither X or Y are the latest migrations for those
plugins.

For those unfortunate few, I have two pieces of advice:

 1. Why? This is a code smell [http://c2.com/xp/CodeSmell.html].
 
 2. Well, OK. Don't panic. You can completely control plugin migrations by
    creating your own migrations. To manually migrate a plugin to a specific
    version, simply use
    
      Rails.plugins[:your_plugin_name].migrate(version)
      
    where version is the integer of the migration this plugin should end
    up at.
    
With great power comes great responsibility. Use this wisely.

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
parlement-0.11 vendor/plugins/engines/generators/plugin_migration/USAGE
parlement-0.12 vendor/plugins/engines/generators/plugin_migration/USAGE
parlement-0.13 vendor/plugins/engines/generators/plugin_migration/USAGE
parlement-0.14 vendor/plugins/engines/generators/plugin_migration/USAGE