diff options
Diffstat (limited to 'iurt')
-rwxr-xr-x | iurt | 10 |
1 files changed, 10 insertions, 0 deletions
@@ -176,6 +176,12 @@ $run{todo} = []; [ "", "build-all", 0, "", "Build all packages of the media, even if they are up to date", sub { $run{build_all} = 1 }, "Setting the full build flag" ], + [ "", "num_shards", 1, "<n>", + "Number of shards for building", + sub { ($run{num_shards}) = @_; 1 }, 'Setting number of shards' ], + [ "", "shard_id", 1, "<n>", + "Shard id (starts at 0)", + sub { ($run{shard_id}) = @_; 1 }, 'Setting shard id' ], [ "n", "no", 0, "", "Perform all the check but do not compile anything", sub { ($run{no_compile}) = 1 }, "Setting the no compilation flag" ], @@ -972,6 +978,10 @@ do { my %children; for ($i; $i < @{$run{todo}}; $i++) { my ($dir, $srpm, $status) = @{$run{todo}[$i]}; + if ($run{num_shards} && ($i % $run{num_shards}) != $run{shard_id}) { + plog('DEBUG', "Skipping $srpm, not for my shard"); + next; + } $done{$srpm} and next; $done{$srpm} = 1; check_version(\%run, $srpm, \%srpm_version) or next; |