--- builds_bin/update_repos 2008/01/22 20:23:58 1.36 +++ builds_bin/update_repos 2008/01/22 22:21:42 1.38 @@ -29,7 +29,6 @@ my $distrepo = { '7' => { active => 1, os => 'RPMS/', builds => '/builds/smeserver-7-core/', contribs => '/builds/smeserver-7-contribs/', - qa => '/builds/smeserver-7-qa/', stage => '/stage/7/', }, '8' => { active => 1, @@ -39,7 +38,6 @@ my $distrepo = { '7' => { active => 1, os => '', builds => '/builds/smeserver-8-core/', contribs => '/builds/smeserver-8-contribs/', - qa => '/builds/smeserver-8-qa/', stage => '/stage/8/', }, }; @@ -143,7 +141,7 @@ foreach my $smever ( sort { $a <=> $b } last unless $dir =~ m{~A}; } } - find( { wanted => sub { process_rpm($_, $smever, 'builds'); }, no_chdir => 1, follow_fast => 1 }, ( $distrepo->{$smever}->{'builds'}, $distrepo->{$smever}->{'qa'} ) ); + find( { wanted => sub { process_rpm($_, $smever, 'builds'); }, no_chdir => 1, follow_fast => 1 }, $distrepo->{$smever}->{'builds'} ); find( { wanted => sub { process_rpm($_, $smever, 'contribs'); }, no_chdir => 1, follow_fast => 1 }, $distrepo->{$smever}->{'contribs'} ); foreach my $base ( sort keys %$rpms ) { @@ -234,7 +232,9 @@ foreach my $smever ( sort { $a <=> $b } } $cmp->{oldrepo} = $cmp->{repo} unless $cmp->{oldrepo}; $cmp->{repo} = $dest; - $track{repo} = $dest unless $dest eq $track{repo}; + if ( ! $cmp->{src} || $repos->{$dest}->{prio} > $repos->{$track{repo}}->{prio} ) { + $track{repo} = $dest; + } } if ( $cmp->{src} && $reposrc{$cmp->{repo}} ) { $reposrc{$cmp->{repo}}->{srpm} = $cmp; @@ -255,20 +255,14 @@ foreach my $smever ( sort { $a <=> $b } my $dest = $repos->{$track{repo}}->{prio} > $repos->{$devel2}->{prio} ? $track{repo} : $devel2; $dest = pkgdest($cmp, $devel1, $dest, $rpms->{$base}->{rpms}); $dest = $devel1 if verrel($cmp, $dest, \%counts); - unless ( verrel($cmp, $dest, \%counts) ) { + if ( $cmp->{src} && ! $reposrc{$dest} ) { + $cmp->{delete}++; + } elsif ( $repos->{$dest}->{prio} >= $repos->{$track{repo}}->{prio} && ! verrel($cmp, $dest, \%counts) ) { push @{$cmp->{repos}}, $dest; - if ( $repos->{$cmp->{repo}}->{orig} ) { - $orig{$cmp->{nvra}}++; - } elsif ( $cmp->{src} && $reposrc{$cmp->{repo}} ) { - $reposrc{$cmp->{repo}}->{srpm} = $cmp; - } else { - $cmp->{delete}++; - } + $orig{$cmp->{nvra}}++; $cmp->{oldrepo} = $cmp->{repo} unless $cmp->{oldrepo}; $cmp->{repo} = $dest; - if ( $cmp->{src} && $reposrc{$cmp->{repo}} ) { - $reposrc{$cmp->{repo}}->{srpm} = $cmp; - } + $reposrc{$cmp->{repo}}->{srpm} = $cmp if $cmp->{src}; } else { $cmp->{delete}++; } @@ -407,7 +401,7 @@ foreach my $smever ( sort { $a <=> $b } } } unless ( $opts{t} ) { - finddepth(sub{rmdir}, $distrepo->{$smever}->{$_}) foreach ('builds','contribs','qa'); + finddepth(sub{rmdir}, $distrepo->{$smever}->{$_}) foreach ('builds','contribs'); } }