John Napiorkowski > DBIx-Class-Migration-0.033 > DBIx::Class::Migration::RunScript

Download:
DBIx-Class-Migration-0.033.tar.gz

Dependencies

Annotate this POD

Website

View/Report Bugs
Source   Latest Release: DBIx-Class-Migration-0.044

NAME ^

DBIx::Class::Migration::RunScript - Control your Perl Migration Run Scripts

SYNOPSIS ^

Using the builder exported subroutine:

    use DBIx::Class::Migration::RunScript;

    builder {
      'SchemaLoader',
      sub {
        shift->schema->resultset('Country')
          ->populate([
          ['code'],
          ['bel'],
          ['deu'],
          ['fra'],
        ]);
      };
    };

Alternatively, use the migrate exported subroutine for standard and external plugins:

    use DBIx::Class::Migration::RunScript;
    use DBIx::Class::Migration::RunScript::Trait::AuthenPassphrase;

    migrate {
      shift->schema
        ->resultset('Country')
        ->populate([
          ['code'],
          ['bel'],
          ['deu'],
          ['fra'],
        ]);
    };

DESCRIPTION ^

When using Perl based run files for your migrations, this class lets you manage that and offers a clean method to add in functionality.

See DBIx::Class::Migration::Tutorial for an extended discussion.

ATTRIBUTES ^

This class defines the follow attributes

version_set

An arrayref of the from / to version you are attempting to migrate.

dbh

The current database handle to the database you are trying to migrate.

EXPORTS ^

This class defines the following exports

builder

Allows you to construct a migration script from a subroutine and also lets you specify plugins.

migrate

Run a migration subref with default plugins (SchemaLoader, Populate, TargetDir) and any additional plugins that you've used. For example:

    use DBIx::Class::Migration::RunScript;

    migrate {
      my $runscript = shift;
    }

In this case $runscript is an instance of DBIx::Class::Migration::RunScript and has the default traits applied (see DBIx::Class::Migration::RunScript::Trait::TargetPath, DBIx::Class::Migration::RunScript::Trait::Schema, DBIx::Class::Migration::RunScript::Trait::Populate for more).

Second example:

    use DBIx::Class::Migration::RunScript;
    use DBIx::Class::Migration::RunScript::Trait::AuthenPassphrase;

    migrate {
      my $runscript = shift;
    }

In this case $runscript is an instance of DBIx::Class::Migration::RunScript with traits applied as above and in addition one more trait, DBIx::Class::Migration::RunScript::Trait::AuthenPassphrase which is available on CPAN (is external because it carries a dependency weight I don't want to impose on people if they don't need it).

UTILITY SUBROUTINES ^

The follow subroutines are available as package method, and not exported

default_plugins

returns an array of the default plugins.

SEE ALSO ^

DBIx::Class::Migration.

AUTHOR ^

See DBIx::Class::Migration for author information

COPYRIGHT & LICENSE ^

See DBIx::Class::Migration for copyright and license information

syntax highlighting: