From: Arthur Axel 'fREW' Schmidt Date: Fri, 2 Apr 2010 06:28:41 +0000 (-0500) Subject: rearrange doc X-Git-Tag: v0.001000_01~18 X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=commitdiff_plain;h=5228a963e60b0c085a6ce930f9ba9dc66215676c;p=dbsrgits%2FDBIx-Class-DeploymentHandler.git rearrange doc --- diff --git a/lib/DBIx/Class/DeploymentHandler.pm b/lib/DBIx/Class/DeploymentHandler.pm index 4d27efe..3f6a154 100644 --- a/lib/DBIx/Class/DeploymentHandler.pm +++ b/lib/DBIx/Class/DeploymentHandler.pm @@ -79,8 +79,6 @@ with): =over -=over - =item * Downgrades in addition to upgrades. diff --git a/lib/DBIx/Class/DeploymentHandler/Dad.pm b/lib/DBIx/Class/DeploymentHandler/Dad.pm index db485b3..ccd6488 100644 --- a/lib/DBIx/Class/DeploymentHandler/Dad.pm +++ b/lib/DBIx/Class/DeploymentHandler/Dad.pm @@ -120,71 +120,73 @@ assuming it will work. =head1 METHODS THAT ARE REQUIRED IN SUBCLASSES +=head2 deploy + +See L. + =head2 version_storage_is_installed - warn q(I can't version this database!) - unless $dh->version_storage_is_installed +See L. -return true iff the version storage is installed. +=head2 add_database_version -=head2 deploy +See L. - $dh->deploy +=head2 delete_database_version -Deploy the schema to the database. +See L. -=head2 add_database_version +=head2 next_version_set - $dh->add_database_version({ - version => '1.02', - ddl => $ddl # can be undef, - upgrade_sql => $sql # can be undef, - }); +See L. -Store a new version into the version storage +=head2 previous_version_set -=head2 delete_database_version +See L. - $dh->delete_database_version({ version => '1.02' }) +=head2 upgrade_single_step -simply deletes given database version from the version storage +See L. -=head2 next_version_set +=head2 downgrade_single_step - print 'versions to install: '; - while (my $vs = $dh->next_version_set) { - print join q(, ), @{$vs} - } - print qq(\n); +See L. -return an arrayref describing each version that needs to be -installed to upgrade to C<< $dh->to_version >>. +=head1 ORTHODOX METHODS -=head2 previous_version_set +These methods are not actually B as things will probably still work +if you don't implement them, but if you want your subclass to get along with +other subclasses (or more likely, tools made to use another subclass), you +should probably implement these too, even if they are no-ops. - print 'versions to uninstall: '; - while (my $vs = $dh->previous_version_set) { - print join q(, ), @{$vs} - } - print qq(\n); +The methods are: -return an arrayref describing each version that needs to be -"installed" to downgrade to C<< $dh->to_version >>. +=head2 database_version -=head2 upgrade_single_step +see L - my ($ddl, $sql) = @{$dh->upgrade_single_step($version_set)||[]} +=head2 prepare_install -call a single upgrade migration. Takes an arrayref describing the version to -upgrade to. Optionally return an arrayref containing C<$ddl> describing -version installed and C<$sql> used to get to that version. +see L -=head2 downgrade_single_step +=head2 prepare_resultsource_install + +see L + +=head2 install_resultsource + +see L + +=head2 prepare_upgrade + +see L + +=head2 prepare_downgrade + +see L - $dh->upgrade_single_step($version_set); +=back -call a single downgrade migration. Takes an arrayref describing the version to -downgrade to. __END__ diff --git a/lib/DBIx/Class/DeploymentHandler/HandlesDeploy.pm b/lib/DBIx/Class/DeploymentHandler/HandlesDeploy.pm index 4ff7694..3ee83f0 100644 --- a/lib/DBIx/Class/DeploymentHandler/HandlesDeploy.pm +++ b/lib/DBIx/Class/DeploymentHandler/HandlesDeploy.pm @@ -22,7 +22,9 @@ __END__ =method deploy - $deploy_method->deploy; + $dh->deploy + +Deploy the schema to the database. =method prepare_resultsource_install @@ -50,10 +52,17 @@ __END__ =method upgrade_single_step - $deploy_method->upgrade_single_step([1, 2]); + my ($ddl, $sql) = @{$dh->upgrade_single_step($version_set)||[]} + +call a single upgrade migration. Takes an arrayref describing the version to +upgrade to. Optionally return an arrayref containing C<$ddl> describing +version installed and C<$sql> used to get to that version. =method downgrade_single_step - $deploy_method->upgrade_single_step([1, 2]); + $dh->downgrade_single_step($version_set); + +call a single downgrade migration. Takes an arrayref describing the version to +downgrade to. vim: ts=2 sw=2 expandtab diff --git a/lib/DBIx/Class/DeploymentHandler/HandlesVersionStorage.pm b/lib/DBIx/Class/DeploymentHandler/HandlesVersionStorage.pm index 9881817..9bf7a0f 100644 --- a/lib/DBIx/Class/DeploymentHandler/HandlesVersionStorage.pm +++ b/lib/DBIx/Class/DeploymentHandler/HandlesVersionStorage.pm @@ -16,20 +16,26 @@ __END__ =method add_database_version - $version_storage->add_database_version({ - version => '1.2002', - ddl => $ddl, # optional - upgrade_sql => undef, # optional - }) + $dh->add_database_version({ + version => '1.02', + ddl => $ddl # can be undef, + upgrade_sql => $sql # can be undef, + }); + +Store a new version into the version storage =method delete_database_version - $version_storage->delete_database_version({ version => '1.2002' }) + $dh->delete_database_version({ version => '1.02' }) + +simply deletes given database version from the version storage =method version_storage_is_installed - if ($verson_storage->version_storage_is_installed) { - say q(you're golden!) - } + warn q(I can't version this database!) + unless $dh->version_storage_is_installed + +return true iff the version storage is installed. + vim: ts=2 sw=2 expandtab diff --git a/lib/DBIx/Class/DeploymentHandler/HandlesVersioning.pm b/lib/DBIx/Class/DeploymentHandler/HandlesVersioning.pm index 495c8bb..43f1009 100644 --- a/lib/DBIx/Class/DeploymentHandler/HandlesVersioning.pm +++ b/lib/DBIx/Class/DeploymentHandler/HandlesVersioning.pm @@ -11,15 +11,25 @@ __END__ =method next_version_set - while (my $version_set = $versions->next_version_set) { - ... + print 'versions to install: '; + while (my $vs = $dh->next_version_set) { + print join q(, ), @{$vs} } + print qq(\n); + +return an arrayref describing each version that needs to be +installed to upgrade to C<< $dh->to_version >>. =method previous_version_set - while (my $version_set = $versions->previous_version_set) { - ... + print 'versions to uninstall: '; + while (my $vs = $dh->previous_version_set) { + print join q(, ), @{$vs} } + print qq(\n); + +return an arrayref describing each version that needs to be +"installed" to downgrade to C<< $dh->to_version >>. # normally a VersionHandler will take # a to_version and yeild an iterator of