X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=lib%2FDBIx%2FClass%2FDeploymentHandler%2FDad.pm;h=807c7563a7e9e813bd40d2e65991cdf0dc2d4763;hb=7d2a697450860554093a1021d3fe4405bac6328e;hp=d1a4f83105e768ee2c493d718c3afb33280c7799;hpb=392a5ccc70419c87f72c5600e09a7a5697ac9002;p=dbsrgits%2FDBIx-Class-DeploymentHandler.git diff --git a/lib/DBIx/Class/DeploymentHandler/Dad.pm b/lib/DBIx/Class/DeploymentHandler/Dad.pm index d1a4f83..807c756 100644 --- a/lib/DBIx/Class/DeploymentHandler/Dad.pm +++ b/lib/DBIx/Class/DeploymentHandler/Dad.pm @@ -51,7 +51,7 @@ method install { croak 'Install not possible as versions table already exists in database' if $self->version_storage_is_installed; - my $ddl = $self->_deploy; + my $ddl = $self->deploy; $self->version_storage->add_database_version({ version => $self->to_version, @@ -62,7 +62,7 @@ method install { sub upgrade { my $self = shift; while ( my $version_list = $self->next_version_set ) { - my ($ddl, $upgrade_sql) = @{$self->_upgrade_single_step($version_list)||[]}; + my ($ddl, $upgrade_sql) = @{$self->upgrade_single_step($version_list)||[]}; $self->add_database_version({ version => $version_list->[-1], @@ -72,12 +72,18 @@ sub upgrade { } } -method backup { $self->storage->backup($self->backup_directory) } +sub downgrade { + my $self = shift; + while ( my $version_list = $self->previous_version_set ) { + $self->downgrade_single_step($version_list); -method deploy_version_storage { - $self-> + # do we just delete a row here? I think so but not sure + $self->delete_database_version({ version => $version_list->[-1] }); + } } +method backup { $self->storage->backup($self->backup_directory) } + __PACKAGE__->meta->make_immutable; 1;