mirror of
https://github.com/xcat2/xcat-dep.git
synced 2026-09-12 04:26:25 +00:00
3e9cd35ee14ad9281beef5a3cec8480b3038a6d5
Follow-up to the review-fix commit, which broke the two-arch build: - The run lock was on <output_root>/.sbuild-all.lock, shared by BOTH arch stages. But within ONE pipeline run the amd64 and ppc64el stages run concurrently on their own hosts against the same --output-root -- a shared lock serializes/deadlocks them. Lock per-arch (<output_root>/.sbuild-all.<arch>.lock): only same-arch stages (same host) contend, so a local flock is authoritative and cross-run same-arch races are still blocked, without touching the intended amd64||ppc64el parallelism. - wipe_tree died on .nfsXXXX silly-rename artifacts (an already-unlinked file a still-open handle -- e.g. an aborted peer build -- keeps alive). Those are not stale debs and self-heal. Build #26 hit exactly this: the ppc stage's wipe FATAL'd on leftover .nfs* from an aborted run, and failFast then SIGTERM'd the amd64 conserver builds mid-apt (the 'conserver rc=1' was collateral). wipe_tree now retries once, then dies ONLY if a real (non-.nfs*) file survives; .nfs*-only leftovers are tolerated (assemble globs *.deb, never .nfs*, so they can't reach the repo). perl -c clean; prove t/sbuild-all.t: 71/71. Signed-off-by: Daniel Hilst <392820+dhilst@users.noreply.github.com>
Description
No description provided
Languages
C
89%
Perl
6.7%
Assembly
1.4%
JavaScript
0.8%
Makefile
0.6%
Other
1.4%