Skip to content

Commit

Permalink
travis-ci: retry if Git for Windows CI returns HTTP error 502 or 503
Browse files Browse the repository at this point in the history
The Git for Windows CI web app sometimes returns HTTP errors of
"502 bad gateway" or "503 service unavailable" [1]. We also need to
check the HTTP content because the GfW web app seems to pass through
(error) results from other Azure calls with HTTP code 200.
Wait a little and retry the request if this happens.

[1] https://docs.microsoft.com/en-in/azure/app-service-web/app-service-web-troubleshoot-http-502-http-503

Signed-off-by: Lars Schneider <larsxschneider@gmail.com>
  • Loading branch information
larsxschneider committed May 3, 2017
1 parent 1ea7e62 commit af0f0f0
Showing 1 changed file with 21 additions and 2 deletions.
23 changes: 21 additions & 2 deletions ci/run-windows-build.sh
Expand Up @@ -14,14 +14,33 @@ COMMIT=$2

gfwci () {
local CURL_ERROR_CODE HTTP_CODE
exec 3>&1
CONTENT_FILE=$(mktemp -t "git-windows-ci-XXXXXX")
while test -z $HTTP_CODE
do
HTTP_CODE=$(curl \
-H "Authentication: Bearer $GFW_CI_TOKEN" \
--silent --retry 5 --write-out '%{HTTP_CODE}' \
--output >(sed "$(printf '1s/^\xef\xbb\xbf//')" >cat >&3) \
--output >(sed "$(printf '1s/^\xef\xbb\xbf//')" >$CONTENT_FILE) \
"https://git-for-windows-ci.azurewebsites.net/api/TestNow?$1" \
)
CURL_ERROR_CODE=$?
# The GfW CI web app sometimes returns HTTP errors of
# "502 bad gateway" or "503 service unavailable".
# We also need to check the HTTP content because the GfW web
# app seems to pass through (error) results from other Azure
# calls with HTTP code 200.
# Wait a little and retry if we detect this error. More info:
# https://docs.microsoft.com/en-in/azure/app-service-web/app-service-web-troubleshoot-http-502-http-503
if test $HTTP_CODE -eq 502 ||
test $HTTP_CODE -eq 503 ||
grep "502 - Web server received an invalid response" $CONTENT_FILE >/dev/null
then
sleep 10
HTTP_CODE=
fi
done
cat $CONTENT_FILE
rm $CONTENT_FILE
if test $CURL_ERROR_CODE -ne 0
then
return $CURL_ERROR_CODE
Expand Down

0 comments on commit af0f0f0

Please sign in to comment.