Retry sccache release downloads
This commit is contained in:
@@ -79,8 +79,16 @@ runs:
|
||||
base_url="https://github.com/mozilla/sccache/releases/download/${version}"
|
||||
tmp="$(mktemp -d)"
|
||||
trap 'rm -rf "$tmp"' EXIT
|
||||
curl -fsSLo "$tmp/$asset" "$base_url/$asset"
|
||||
curl -fsSLo "$tmp/$asset.sha256" "$base_url/$asset.sha256"
|
||||
curl_retry() {
|
||||
curl --http1.1 --retry 5 --retry-all-errors --retry-delay 3 --connect-timeout 20 -fsSLo "$1" "$2"
|
||||
}
|
||||
if ! curl_retry "$tmp/$asset" "$base_url/$asset" || ! curl_retry "$tmp/$asset.sha256" "$base_url/$asset.sha256"; then
|
||||
echo "sccache release download failed; falling back to cargo install" >&2
|
||||
crate_version="${version#v}"
|
||||
cargo install sccache --locked --version "$crate_version" --features s3
|
||||
sccache --version
|
||||
exit 0
|
||||
fi
|
||||
expected="$(tr -d '[:space:]' < "$tmp/$asset.sha256")"
|
||||
if command -v sha256sum >/dev/null 2>&1; then
|
||||
actual="$(sha256sum "$tmp/$asset" | cut -d ' ' -f 1)"
|
||||
|
||||
Reference in New Issue
Block a user