From ff18f380d50ef5c0a0e948804a2e2f1e7c3d616c Mon Sep 17 00:00:00 2001 From: Chris Rebert Date: Thu, 14 Aug 2014 17:59:55 -0700 Subject: [PATCH] Add retries to uncached-npm-install.sh Pull requests are frequently failing on Travis due to npm flakiness (I think) travis_retry isn't available in indirect subshells like this --- test-infra/uncached-npm-install.sh | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/test-infra/uncached-npm-install.sh b/test-infra/uncached-npm-install.sh index 7c728aa645..a2d41445d8 100755 --- a/test-infra/uncached-npm-install.sh +++ b/test-infra/uncached-npm-install.sh @@ -2,5 +2,14 @@ set -e cd .. # /bootstrap/ cp test-infra/npm-shrinkwrap.json npm-shrinkwrap.json -npm install +# npm is flaky, so try multiple times +MAXTRIES=3 +TRIES=1 +while ! npm install; do + if [ $TRIES -ge $MAXTRIES ]; then + exit 1 + fi + TRIES=$(($TRIES + 1)) + echo "Retrying npm install (Try $TRIES of $MAXTRIES)..." +done rm npm-shrinkwrap.json