fix(rebuild): harden split workflow setup

This change will:\n\n- retry transient uvr dependency resolution failures with bounded backoff\n- reuse the re-index checkout when purging the CDN
This commit is contained in:
Patrick Schratz 2026-08-13 13:36:24 +00:00
commit e4f8250d0b
No known key found for this signature in database
GPG key ID: 62050D5BC68AB6DC

View file

@ -84,9 +84,20 @@ trap 'rm -rf "$project_dir"' EXIT
cd "$project_dir"
"$uvr_bin" init --here --r-version "$r_full"
# --no-install: resolve and lock only. The install happens in the sync below,
# which is the only command that honours --library.
"$uvr_bin" add --no-install "$@"
# --no-install resolves and locks only; retry because concurrent shards can
# expose short-lived DNS or CRAN-index failures and uvr rolls the manifest back
# cleanly after an unsuccessful resolution.
add_attempt=1
while ! "$uvr_bin" add --no-install "$@"; do
if [ "$add_attempt" -ge 4 ]; then
echo "error: uvr add failed after ${add_attempt} attempts" >&2
exit 1
fi
add_delay=$((add_attempt * 10))
echo "warning: uvr add attempt ${add_attempt} failed; retrying in ${add_delay}s" >&2
sleep "$add_delay"
add_attempt=$((add_attempt + 1))
done
# TEMPORARY (drop once the images ship a uvr above v0.4.5): the sync below runs
# `apt-get install` for every resolved system dependency without refreshing the