From 2b93add9442435dea279895b5aad1845d9c682b8 Mon Sep 17 00:00:00 2001 From: Kyle M Hall Date: Mon, 23 Mar 2015 09:19:03 -0400 Subject: [PATCH] Bug 13893 - Add ability to execute perl scripts in atomicupdates Content-Type: text/plain; charset=utf-8 Bug 13068 adds the ability to execute sql files from atomicupdates for in process developments to reduce merge conflicts. We need to extend this ability further to be able to handle perl code. Revised Test Plan ----------------- 1) Run updatedatabase.pl -- Expect output to be similar to: $ ./installer/data/mysql/updatedatabase.pl DEV atomic update : test.perl Upgrade to XXX done (Bug 13893 - Add ability to execute perl scripts in atomicupdates) 2) Run koha qa test tools. -- only need to check last commit (-c 1), because first commit is a sample file which shouldn't be pushed. Signed-off-by: Mark Tompsett Signed-off-by: Marcel de Rooy --- installer/data/mysql/updatedatabase.pl | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/installer/data/mysql/updatedatabase.pl b/installer/data/mysql/updatedatabase.pl index bc765f1..4f4558b 100755 --- a/installer/data/mysql/updatedatabase.pl +++ b/installer/data/mysql/updatedatabase.pl @@ -10032,10 +10032,13 @@ if ( CheckVersion($DBversion) ) { my $update_dir = C4::Context->config('intranetdir') . '/installer/data/mysql/atomicupdate/'; opendir( my $dirh, $update_dir ); while ( my $file = readdir $dirh ) { - next unless $file =~ /\.sql$/; # skip non SQL files - print "DEV atomic update : $file \n"; - my $installer = C4::Installer->new(); - my $rv = $installer->load_sql( $update_dir . $file ) ? 0 : 1; + if ( $file =~ /\.sql$/ ) { # skip non SQL files + print "DEV atomic update : $file \n"; + my $installer = C4::Installer->new(); + my $rv = $installer->load_sql( $update_dir . $file ) ? 0 : 1; + } elsif ( $file =~ /\.perl$/ ) { + do $update_dir . $file; + } } =head1 FUNCTIONS -- 1.7.10.4