Revision history for {{$dist->name}}
{{$NEXT}}
+ - Allow user to specify version of schema to install
- Added better sandboxing (stolen straight from Plack::Util) for coderefs
to avoid accidental leakage
- Sandboxing also makes $0 and thus FindBin et al work in perl scripts
sub install {
my $self = shift;
- log_info { 'installing version ' . $self->to_version };
+
+ my $version = (shift @_ || {})->{version} || $self->to_version;
+ log_info { "installing version $version" };
croak 'Install not possible as versions table already exists in database'
if $self->version_storage_is_installed;
- my $ddl = $self->deploy({version=>$self->to_version});
+ my $ddl = $self->deploy({ version=> $version });
$self->add_database_version({
version => $self->to_version,
$dh->install
-Deploys the current schema into the database. Populates C<version_storage> with
-C<version> and C<ddl>.
+or
+
+ $dh->install({ version => 1 })
+
+Deploys the requested version into the database Version defaults to
+L</schema_version>. Populates C<version_storage> with C<version> and C<ddl>.
B<Note>: you typically need to call C<< $dh->prepare_deploy >> before you call
this method.