Browse Source

Bug 17356: Add atomic update .perl skeleton file

To show devs how it should be written.

Test plan:
% cp installer/data/mysql/atomicupdate/skeleton.perl
installer/data/mysql/atomicupdate/bug_XXXXX.perl
% perl installer/data/mysql/updatedatabase.pl

You should see:
DEV atomic update: bug_xxxxx.perl
Upgrade to 16.06.00.XXX done (Bug XXXXX - description)

Signed-off-by: Liz Rea <liz@catalyst.net.nz>
Very good. I'll submit a patch for the readme to make the instructions better.

Signed-off-by: Liz Rea <liz@catalyst.net.nz>

Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>

Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
16.11.x
Jonathan Druart 8 years ago
committed by Kyle M Hall
parent
commit
3f7098a02f
  1. 10
      installer/data/mysql/atomicupdate/skeleton.perl
  2. 1
      installer/data/mysql/updatedatabase.pl

10
installer/data/mysql/atomicupdate/skeleton.perl

@ -0,0 +1,10 @@
use C4::Installer;
my $dbh = C4::Context->dbh;
$DBversion = '16.06.00.XXX';
if (C4::Context->preference("Version") < TransformToNum($DBversion)) {
unless( column_exists( 'biblio', 'biblionumber' ) ) { # or constraint_exists( $table_name, $key_name )
warn "There is something wrong";
}
SetVersion ($DBversion);
print "Upgrade to $DBversion done (Bug XXXXX - description)\n";
}

1
installer/data/mysql/updatedatabase.pl

@ -13585,6 +13585,7 @@ my $update_dir = C4::Context->config('intranetdir') . '/installer/data/mysql/ato
opendir( my $dirh, $update_dir );
foreach my $file ( sort readdir $dirh ) {
next if $file !~ /\.(sql|perl)$/; #skip other files
next if $file eq 'skeleton.perl'; # skip the skeleton file
print "DEV atomic update: $file\n";
if ( $file =~ /\.sql$/ ) {
my $installer = C4::Installer->new();

Loading…
Cancel
Save