schema/spacewalk/spacewalk-schema-upgrade | 8 ++++++--
1 file changed, 6 insertions(+), 2 deletions(-)
New commits:
commit 1a33fe5ffc6d7fbc69c03dcb0497bb664bac88ca
Author: Milan Zazrivec <mzazrivec(a)redhat.com>
Date: Thu Sep 17 17:44:05 2009 +0200
523389 - add support for schema upgrade overrides
This basically allows us to override both .sql and .ref files
with .override files during schema upgrade course.
diff --git a/schema/spacewalk/spacewalk-schema-upgrade b/schema/spacewalk/spacewalk-schema-upgrade
index e4cdc2c..7208387 100755
--- a/schema/spacewalk/spacewalk-schema-upgrade
+++ b/schema/spacewalk/spacewalk-schema-upgrade
@@ -161,7 +161,7 @@ while (@path) {
die "Directory [$SCHEMA_UPGRADE_DIR/$dir] was seen but is lost now.\n";
}
- my @files = sort glob "$SCHEMA_UPGRADE_DIR/$dir/*.{sql,ref}";
+ my @files = match_overrides("$SCHEMA_UPGRADE_DIR/$dir/*.{sql,ref}");
for (my $i = 0; $i < @files; $i++) {
if ($files[$i] =~ /\.ref$/) {
my @subfiles;
@@ -170,7 +170,7 @@ while (@path) {
while (<REF>) {
chomp;
next if /^\s*(#|$)/;
- my @newsubfiles = sort glob "$SCHEMA_UPGRADE_DIR/$_";
+ my @newsubfiles = match_overrides("$SCHEMA_UPGRADE_DIR/$_");
if (not @newsubfiles) {
die "Could not find any files matching [$_] from [$files[$i]]\n";
}
@@ -331,6 +331,10 @@ sub get_shortest_path {
@out;
}
+sub match_overrides {
+ return map {-e "$_.override" ? "$_.override" : $_} sort glob shift;
+}
+
1;
=head1 NAME