diff options
Diffstat (limited to 'lib')
-rw-r--r-- | lib/Youri/Repository/Mandriva_upload_pre.pm | 22 |
1 files changed, 13 insertions, 9 deletions
diff --git a/lib/Youri/Repository/Mandriva_upload_pre.pm b/lib/Youri/Repository/Mandriva_upload_pre.pm index d8c8c68..c755ea9 100644 --- a/lib/Youri/Repository/Mandriva_upload_pre.pm +++ b/lib/Youri/Repository/Mandriva_upload_pre.pm @@ -85,13 +85,16 @@ sub get_revisions { } else { $arch .= '/media' } - my @packages = - map { $self->get_package_class()->new(file => $_) } - $self->get_files( - $self->{_install_root}, - "$target/$arch/" . $self->_get_section($package, $target, $define), - $self->get_package_class()->get_pattern($package->get_name(),undef, undef, $package->get_arch()) - ); + my @packages; + foreach my $dir ('main', 'contrib') { + push @packages, + map { $self->get_package_class()->new(file => $_) } + $self->get_files( + $self->{_install_root}, + "$target/$arch/$dir/release" . $self->_get_section($package, $target, $define), + $self->get_package_class()->get_pattern($package->get_name(),undef, undef, $package->get_arch()) + ); + } @packages = grep { $filter->($_) } @packages if $filter; @@ -242,8 +245,9 @@ sub get_upload_newer_revisions { my $pattern = $self->get_package_class()->get_pattern($package->get_name()); print "Looking for package $package revisions for $target in $self->{_upload_root} (pattern $pattern)\n"; my @packages; - find(sub { return if ! /$pattern/; print "Find $_\n"; push @packages, $File::Find::name if $package->compare($self->get_package_class()->new(file => $File::Find::name)) <= 0 }, $self->{_upload_root}); - + foreach my $dir ('cooker', 'contrib') { + find(sub { return if ! /$pattern/; print "Find $_\n"; push @packages, $File::Find::name if $package->compare($self->get_package_class()->new(file => $File::Find::name)) <= 0 }, "$self->{_upload_root}/$dir"); + } return @packages; } |