Try fixing the 'brew update' issue in bootstrap script (#5400)

* Try fixing the 'brew update' issue in bootstrap script

* Add a log message

* Add a comment
This commit is contained in:
Dongbo Wang 2017-11-13 12:21:53 -08:00 committed by Aditya Patwardhan
parent ecf0f8c151
commit da0b384b2a

View file

@ -127,10 +127,23 @@ fi
# Suppress output, it's very noisy on travis-ci
echo "Refreshing Homebrew cache..."
if ! brew update > /dev/null; then
echo "ERROR: Refreshing Homebrew cache failed..." >&2
exit 2
fi
for count in {1..2}; do
# Try the update twice if the first time fails
brew update > /dev/null && break
# If the update fails again after increasing the Git buffer size, exit with error.
if [[ $count == 2 ]]; then
echo "ERROR: Refreshing Homebrew cache failed..." >&2
exit 2
fi
# The update failed for the first try. An error we see a lot in our CI is "RPC failed; curl 56 SSLRead() return error -36".
# What 'brew update' does is to fetch the newest version of Homebrew from GitHub using git, and the error comes from git.
# A potential solution is to increase the Git buffer size to a larger number, say 150 mb. The default buffer size is 1 mb.
echo "First attempt of update failed. Increase Git buffer size and try again ..."
git config --global http.postBuffer 157286400
sleep 5
done
# Suppress output, it's very noisy on travis-ci
if [[ ! -d $(brew --prefix cask) ]]; then