From 6a7405ce4cdf6577ad0c7e9d70345585a6066412 Mon Sep 17 00:00:00 2001 From: Oliver Tappe Date: Mon, 12 Mar 2007 23:20:40 +0000 Subject: * moved the clone-filter around to make it actually work again. git-svn-id: http://svn.openslx.org/svn/openslx/trunk@763 95ad53e4-c205-0410-b2fa-d234c58c8868 --- installer/OpenSLX/OSSetup/Engine.pm | 25 ++++++++++++++----------- 1 file changed, 14 insertions(+), 11 deletions(-) (limited to 'installer/OpenSLX/OSSetup/Engine.pm') diff --git a/installer/OpenSLX/OSSetup/Engine.pm b/installer/OpenSLX/OSSetup/Engine.pm index a804632f..b39fe9a7 100644 --- a/installer/OpenSLX/OSSetup/Engine.pm +++ b/installer/OpenSLX/OSSetup/Engine.pm @@ -690,17 +690,7 @@ sub clone_fetchSource my $source = shift; vlog 0, _tr("Cloning vendor-OS from <%s>...\n", $source); - my (@includeList, @excludeList); - my $filterFile = "../lib/distro-info/clone-filter-common"; - if (open(FILTER, "< $filterFile")) { - while() { - chomp; - push @includeList, $_ if /^\+\s+/; - push @excludeList, $_ if /^\-\s+/; - } - close(FILTER); - } - my $excludeIncludeList = join("\n", @includeList, @excludeList); + my $excludeIncludeList = $self->clone_determineIncludeExcludeList(); vlog 1, "using exclude-include-filter:\n$excludeIncludeList\n"; open(RSYNC, "| rsync -av --delete --exclude-from=- $source $self->{'vendor-os-path'}") or die _tr("unable to start rsync for source '%s', giving up! (%s)", @@ -712,6 +702,19 @@ sub clone_fetchSource } } +sub clone_determineIncludeExcludeList +{ + my $self = shift; + + my $localFilterFile = "../lib/distro-info/clone-filter.local"; + my $includeExcludeList = slurpFile($localFilterFile, 1); + $includeExcludeList .= $self->{distro}->{'clone-filter'}; + $includeExcludeList =~ s[^\s+][]igms; + # remove any leading whitespace, as rsync doesn't like it + return $includeExcludeList; +} + + ################################################################################ ### utility functions ################################################################################ -- cgit v1.2.3-55-g7522