From 0f5dc45c4f934f34f9fd127336dd24e9d503d581 Mon Sep 17 00:00:00 2001 From: Jan Blunck Date: Wed, 16 Jul 2014 12:55:11 -0700 Subject: livebuild: Make LiveBuild.pm ignore recipe name base directory as well Signed-off-by: Jan Blunck --- Build/LiveBuild.pm | 4 ++-- t/directory.livebuild | Bin 0 -> 30720 bytes t/live-build | 7 ++++++- 3 files changed, 8 insertions(+), 3 deletions(-) create mode 100644 t/directory.livebuild diff --git a/Build/LiveBuild.pm b/Build/LiveBuild.pm index e6bda10..00da9e3 100644 --- a/Build/LiveBuild.pm +++ b/Build/LiveBuild.pm @@ -76,7 +76,7 @@ sub parse { # check that directory layout matches live-build directory structure for my $file ($tar->list_files('')) { - next unless $file =~ /^config\/archives\/.*\.list.*/; + next unless $file =~ /^(.*\/)?config\/archives\/.*\.list.*/; warn("$filename: config/archives/*.list* files not allowed!\n"); $ret->{'error'} = "$filename: config/archives/*.list* files not allowed!"; return $ret; @@ -87,7 +87,7 @@ sub parse { my @packages = ( 'live-build-desc' ); for my $file ($tar->list_files('')) { - next unless $file =~ /^config\/package-lists\/.*\.list.*/; + next unless $file =~ /^(.*\/)?config\/package-lists\/.*\.list.*/; push @packages, parse_package_list($tar->get_content($file)); } diff --git a/t/directory.livebuild b/t/directory.livebuild new file mode 100644 index 0000000..318d128 Binary files /dev/null and b/t/directory.livebuild differ diff --git a/t/live-build b/t/live-build index ac5d6c9..b0c9699 100755 --- a/t/live-build +++ b/t/live-build @@ -1,7 +1,7 @@ #!/usr/bin/perl -w -I .. use strict; -use Test::More tests => 4; +use Test::More tests => 5; use Build::LiveBuild; use Data::Dumper; @@ -41,6 +41,11 @@ is(md5_hex(Dumper(Build::LiveBuild::parse( $config, 'standard.livebuild'))), #print Dumper(Build::LiveBuild::parse( $config, 'standard.livebuild')); +is(md5_hex(Dumper(Build::LiveBuild::parse( $config, 'directory.livebuild'))), + 'bc803d2b4a375d9a02b3242117f6c93a'); + +#print Dumper(Build::LiveBuild::parse( $config, 'directory.livebuild')); + is(md5_hex(Dumper(Build::LiveBuild::parse( $config, 'bad.livebuild'))), '1e596160978007d1014e9c5e38574700'); -- cgit v1.2.3