fix: add go download fallback for production bootstrap
This commit is contained in:
@@ -80,7 +80,20 @@ install_go() {
|
|||||||
return
|
return
|
||||||
fi
|
fi
|
||||||
log "Installing Go ${version} for linux-${arch}"
|
log "Installing Go ${version} for linux-${arch}"
|
||||||
curl -fL "https://go.dev/dl/go${version}.linux-${arch}.tar.gz" -o /tmp/go.tar.gz
|
local downloaded=""
|
||||||
|
for url in \
|
||||||
|
"https://dl.google.com/go/go${version}.linux-${arch}.tar.gz" \
|
||||||
|
"https://golang.google.cn/dl/go${version}.linux-${arch}.tar.gz" \
|
||||||
|
"https://go.dev/dl/go${version}.linux-${arch}.tar.gz"; do
|
||||||
|
if curl -fL --connect-timeout 20 --max-time 300 "$url" -o /tmp/go.tar.gz; then
|
||||||
|
downloaded="yes"
|
||||||
|
break
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
if [[ "$downloaded" != "yes" ]]; then
|
||||||
|
echo "Failed to download Go ${version} for linux-${arch}." >&2
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
rm -rf /usr/local/go
|
rm -rf /usr/local/go
|
||||||
tar -C /usr/local -xzf /tmp/go.tar.gz
|
tar -C /usr/local -xzf /tmp/go.tar.gz
|
||||||
ln -sf /usr/local/go/bin/go /usr/local/bin/go
|
ln -sf /usr/local/go/bin/go /usr/local/bin/go
|
||||||
|
|||||||
Reference in New Issue
Block a user