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 Dump) 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, DBIx::Class::Migration::RunScript::Trait::Dump 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
AUTHOR
See DBIx::Class::Migration for author information
COPYRIGHT & LICENSE
See DBIx::Class::Migration for copyright and license information