is => 'ro',
default => sub { {} },
);
-has upgrade_directory => (
+has script_directory => (
isa => 'Str',
is => 'ro',
required => 1,
has schema_version => (
is => 'ro',
+ isa => 'Str',
lazy_build => 1,
);
method _build_schema_version { $self->schema->schema_version }
method __ddl_consume_with_prefix($type, $versions, $prefix) {
- my $base_dir = $self->upgrade_directory;
+ my $base_dir = $self->script_directory;
my $main = catfile( $base_dir, $type );
my $generic = catfile( $base_dir, '_generic' );
}
method _ddl_schema_produce_filename($type, $version) {
- my $dirname = catfile( $self->upgrade_directory, $type, 'schema', $version );
+ my $dirname = catfile( $self->script_directory, $type, 'schema', $version );
mkpath($dirname) unless -d $dirname;
return catfile( $dirname, '001-auto.sql' );
}
method _ddl_schema_up_produce_filename($type, $versions) {
- my $dir = $self->upgrade_directory;
+ my $dir = $self->script_directory;
my $dirname = catfile( $dir, $type, 'up', join q(-), @{$versions});
mkpath($dirname) unless -d $dirname;
my $to_file = shift;
my $schema = $self->schema;
my $databases = $self->databases;
- my $dir = $self->upgrade_directory;
+ my $dir = $self->script_directory;
my $version = $self->schema_version;
my $sqlt = SQL::Translator->new({
my ($self, $source_name) = @_;
return sub {
my ($self, $type, $version) = @_;
- my $dirname = catfile( $self->upgrade_directory, $type, 'schema', $version );
+ my $dirname = catfile( $self->script_directory, $type, 'schema', $version );
mkpath($dirname) unless -d $dirname;
return catfile( $dirname, "001-auto-$source_name.sql" );
method _prepare_changegrade($from_version, $to_version, $version_set, $direction) {
my $schema = $self->schema;
my $databases = $self->databases;
- my $dir = $self->upgrade_directory;
+ my $dir = $self->script_directory;
my $sqltargs = $self->sql_translator_args;
my $schema_version = $self->schema_version;
The arguments that get passed to L<SQL::Translator> when it's used.
-=attr upgrade_directory
+=attr script_directory
-The directory (default C<'sql'>) that upgrades are stored in
+The directory (default C<'sql'>) that scripts are stored in
=attr databases
The version the schema on your harddrive is at. Defaults to
C<< $self->schema->schema_version >>.
-=method __ddl_consume_with_prefix
+=begin comment
+
+=head2 __ddl_consume_with_prefix
$dm->__ddl_consume_with_prefix( 'SQLite', [qw( 1.00 1.01 )], 'up' )
files in the order that they should be run for a generic "type" of upgrade.
You should not be calling this in user code.
-=method _ddl_schema_consume_filenames
+=head2 _ddl_schema_consume_filenames
$dm->__ddl_schema_consume_filenames( 'SQLite', [qw( 1.00 )] )
Just a curried L</__ddl_consume_with_prefix>. Get's a list of files for an
initial deploy.
-=method _ddl_schema_produce_filename
+=head2 _ddl_schema_produce_filename
$dm->__ddl_schema_produce_filename( 'SQLite', [qw( 1.00 )] )
Returns a single file in which an initial schema will be stored.
-=method _ddl_schema_up_consume_filenames
+=head2 _ddl_schema_up_consume_filenames
$dm->_ddl_schema_up_consume_filenames( 'SQLite', [qw( 1.00 )] )
Just a curried L</__ddl_consume_with_prefix>. Get's a list of files for an
upgrade.
-=method _ddl_schema_down_consume_filenames
+=head2 _ddl_schema_down_consume_filenames
$dm->_ddl_schema_down_consume_filenames( 'SQLite', [qw( 1.00 )] )
Just a curried L</__ddl_consume_with_prefix>. Get's a list of files for a
downgrade.
-=method _ddl_schema_up_produce_filenames
+=head2 _ddl_schema_up_produce_filenames
$dm->_ddl_schema_up_produce_filename( 'SQLite', [qw( 1.00 1.01 )] )
Returns a single file in which the sql to upgrade from one schema to another
will be stored.
-=method _ddl_schema_down_produce_filename
+=head2 _ddl_schema_down_produce_filename
$dm->_ddl_schema_down_produce_filename( 'SQLite', [qw( 1.00 1.01 )] )
Returns a single file in which the sql to downgrade from one schema to another
will be stored.
-=method _resultsource_install_filename
+=head2 _resultsource_install_filename
my $filename_fn = $dm->_resultsource_install_filename('User');
$dm->$filename_fn('SQLite', '1.00')
Returns a function which in turn returns a single filename used to install a
single resultsource. Weird interface is convenient for me. Deal with it.
-=method _run_sql_and_perl
+=head2 _run_sql_and_perl
$dm->_run_sql_and_perl([qw( list of filenames )])
Depending on L</txn_wrap> all of the files run will be wrapped in a single
transaction.
-=method _prepare_install
+=head2 _prepare_install
$dm->_prepare_install({ add_drop_table => 0 }, sub { 'file_to_create' })
L<SQL::Translator> args and the second is a coderef that returns the filename
to store the sql in.
-=method _prepare_changegrade
+=head2 _prepare_changegrade
$dm->_prepare_changegrade('1.00', '1.01', [qw( 1.00 1.01)], 'up')
L<version set|DBIx::Class::DeploymentHandler/VERSION SET>, and last is the
direction of the changegrade, be it 'up' or 'down'.
-=method _read_sql_file
+=head2 _read_sql_file
$dm->_read_sql_file('foo.sql')
Reads a sql file and returns lines in an C<ArrayRef>. Strips out comments,
transactions, and blank lines.
+=end comment