From be053c1ef4f64b106657902b3b37cd5e3c7ce22e Mon Sep 17 00:00:00 2001 From: Pascal Terjan Date: Tue, 11 Oct 2016 09:06:22 +0100 Subject: Fix reuse of {arch} part of the tree It is used by ulri for both builds in progress and already done, while emi expects it to be only for done ones. This causes to upload only part of mandatory arches and later reject the other. --- lib/Iurt/Emi.pm | 4 ++-- lib/Iurt/Queue.pm | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) (limited to 'lib') diff --git a/lib/Iurt/Emi.pm b/lib/Iurt/Emi.pm index b1bc619..a0ed76e 100644 --- a/lib/Iurt/Emi.pm +++ b/lib/Iurt/Emi.pm @@ -44,7 +44,7 @@ sub find_prefixes_ready_to_upload { foreach my $m (@wanted_archs, 'src') { $pkg_tree{$prefix}{media}{$media}{excluded_arch}{$m} and next; my $x = "yes"; - if (!$pkg_tree{$prefix}{media}{$media}{arch}{$m}) { + if (!$pkg_tree{$prefix}{media}{$media}{done_arch}{$m}) { $missing{$m} = 1; $x = "no"; $ok = 0; @@ -177,7 +177,7 @@ sub upload_prefix_in_media { # If we are here, mandatory arches are done, no need to check them my $mandatory_arch = get_mandatory_arch($config, $target); foreach my $arch (difference2(\@arch_list, $mandatory_arch)) { - next if $pkg_tree->{$prefix}{media}{$media}{arch}{$arch}; + next if $pkg_tree->{$prefix}{media}{$media}{done_arch}{$arch}; $all_done = 0; } } diff --git a/lib/Iurt/Queue.pm b/lib/Iurt/Queue.pm index bf1f4f6..f6907e6 100644 --- a/lib/Iurt/Queue.pm +++ b/lib/Iurt/Queue.pm @@ -181,7 +181,7 @@ sub get_upload_tree_state { plog('DEBUG', "found already built rpm $rpm ($prefix) for media $media"); $pkg_tree{$prefix}{target} = $f; if ($arch eq 'src') { - $pkg_tree{$prefix}{media}{$media}{arch}{src} = 1; + $pkg_tree{$prefix}{media}{$media}{done_arch}{src} = 1; } push @{$pkg_tree{$prefix}{media}{$media}{rpms}} , $rpm; push @{$pkg_tree{$prefix}{rpms}} , $rpm; @@ -189,7 +189,7 @@ sub get_upload_tree_state { my ($arch, $result) = ($1, $2); plog('DEBUG', "found .$result ($prefix) for $arch"); if ($result eq 'done') { - $pkg_tree{$prefix}{media}{$media}{arch}{$arch} = 1; + $pkg_tree{$prefix}{media}{$media}{done_arch}{$arch} = 1; } elsif ($result eq 'excluded') { $arch = $config->{arch_translation}{$arch} if $config->{arch_translation}{$arch}; $pkg_tree{$prefix}{media}{$media}{excluded_arch}{$arch} = 1; -- cgit v1.2.1