From 48f76bcfef63ce978e89fbe69470819209cc774e Mon Sep 17 00:00:00 2001 From: Josh Date: Tue, 24 Mar 2015 23:26:31 -0400 Subject: [PATCH] Indentation Indentation for new outer loop --- plugins/checks/check-deploy | 146 ++++++++++++++++++------------------ 1 file changed, 73 insertions(+), 73 deletions(-) diff --git a/plugins/checks/check-deploy b/plugins/checks/check-deploy index a74bb3361..10f7cacc0 100755 --- a/plugins/checks/check-deploy +++ b/plugins/checks/check-deploy @@ -108,83 +108,83 @@ UNCHECKED=1 for (( i=1; i <= RETRIES && UNCHECKED>0 ; i++ )) do -UNCHECKED=0 - -dokku_log_info1 "Attempt $i/$RETRIES Waiting for $WAIT seconds ..." -sleep $WAIT - - -# -q do not use .curlrc (must come first) -# --compressed Test compression handled correctly -# --fail Fail on server errors (4xx, 5xx) -# --location Follow redirects -CURL_OPTIONS="-q --compressed --fail --location --max-time $TIMEOUT" - - -exec < "$FILENAME" -while read CHECK_URL EXPECTED ; do - # Ignore empty lines and lines starting with # - # shellcheck disable=SC1001 - [[ -z "$CHECK_URL" || "$CHECK_URL" =~ ^\# ]] && continue - # Ignore variables - [[ "$CHECK_URL" =~ ^.+= ]] && continue - - if [[ "$CHECK_URL" =~ ^https?: ]] ; then - URL_PROTOCOL=${CHECK_URL%:*} - CHECK_URL=${CHECK_URL#*:} - else - URL_PROTOCOL="http" - fi - - if [[ "$CHECK_URL" =~ ^//.+ ]] ; then - # To test a URL with specific host name, we still make request to localhost, - # but we set Host header to $SEND_HOST. - # - # The pattern is - # //SEND_HOST/PATHNAME - UNPREFIXED=${CHECK_URL#//} - URL_HOSTNAME=${UNPREFIXED%%/*} - URL_PATHNAME=${UNPREFIXED#$URL_HOSTNAME} - - HEADERS="-H Host:$URL_HOSTNAME" - else - URL_HOSTNAME=localhost - URL_PATHNAME=$CHECK_URL - fi - - # This URL will show up in the messages - LOG_URL="$URL_PROTOCOL://$URL_HOSTNAME$URL_PATHNAME" - # And how we formulate the CURL request - CURL_ARGS="$CURL_OPTIONS $URL_PROTOCOL://$DOKKU_APP_LISTEN_IP:$DOKKU_APP_LISTEN_PORT$URL_PATHNAME $HEADERS" - - dokku_log_verbose "CHECKS expected result:" - dokku_log_verbose "$LOG_URL => \"$EXPECTED\"" - [[ $DOKKU_TRACE ]] && dokku_log_verbose "$ curl $CURL_ARGS" - - # Capture HTTP response or CURL error message - if OUTPUT=$(curl -# $CURL_ARGS 2>&1) ; then - # OUTPUT contains the HTTP response - if [[ ! "$OUTPUT" =~ $EXPECTED ]] ; then - dokku_log_warn "$LOG_URL: expected to but did not find: \"$EXPECTED\"" - #exit 1 - UNCHECKED=$(expr $UNCHECKED + 1 ) - - fi - else - # Failed to connect/no response, OUTPUT contains error message - dokku_log_warn "$OUTPUT" - #exit 2 - UNCHECKED=$(expr $UNCHECKED + 1 ) + UNCHECKED=0 + dokku_log_info1 "Attempt $i/$RETRIES Waiting for $WAIT seconds ..." + sleep $WAIT + + + # -q do not use .curlrc (must come first) + # --compressed Test compression handled correctly + # --fail Fail on server errors (4xx, 5xx) + # --location Follow redirects + CURL_OPTIONS="-q --compressed --fail --location --max-time $TIMEOUT" + + + exec < "$FILENAME" + while read CHECK_URL EXPECTED ; do + # Ignore empty lines and lines starting with # + # shellcheck disable=SC1001 + [[ -z "$CHECK_URL" || "$CHECK_URL" =~ ^\# ]] && continue + # Ignore variables + [[ "$CHECK_URL" =~ ^.+= ]] && continue + + if [[ "$CHECK_URL" =~ ^https?: ]] ; then + URL_PROTOCOL=${CHECK_URL%:*} + CHECK_URL=${CHECK_URL#*:} + else + URL_PROTOCOL="http" + fi + + if [[ "$CHECK_URL" =~ ^//.+ ]] ; then + # To test a URL with specific host name, we still make request to localhost, + # but we set Host header to $SEND_HOST. + # + # The pattern is + # //SEND_HOST/PATHNAME + UNPREFIXED=${CHECK_URL#//} + URL_HOSTNAME=${UNPREFIXED%%/*} + URL_PATHNAME=${UNPREFIXED#$URL_HOSTNAME} + + HEADERS="-H Host:$URL_HOSTNAME" + else + URL_HOSTNAME=localhost + URL_PATHNAME=$CHECK_URL + fi + + # This URL will show up in the messages + LOG_URL="$URL_PROTOCOL://$URL_HOSTNAME$URL_PATHNAME" + # And how we formulate the CURL request + CURL_ARGS="$CURL_OPTIONS $URL_PROTOCOL://$DOKKU_APP_LISTEN_IP:$DOKKU_APP_LISTEN_PORT$URL_PATHNAME $HEADERS" + + dokku_log_verbose "CHECKS expected result:" + dokku_log_verbose "$LOG_URL => \"$EXPECTED\"" + [[ $DOKKU_TRACE ]] && dokku_log_verbose "$ curl $CURL_ARGS" + + # Capture HTTP response or CURL error message + if OUTPUT=$(curl -# $CURL_ARGS 2>&1) ; then + # OUTPUT contains the HTTP response + if [[ ! "$OUTPUT" =~ $EXPECTED ]] ; then + dokku_log_warn "$LOG_URL: expected to but did not find: \"$EXPECTED\"" + #exit 1 + UNCHECKED=$(expr $UNCHECKED + 1 ) + + fi + else + # Failed to connect/no response, OUTPUT contains error message + dokku_log_warn "$OUTPUT" + #exit 2 + UNCHECKED=$(expr $UNCHECKED + 1 ) + + fi + done + + if [ $UNCHECKED -gt 0 ]; then + dokku_log_warn "Check attempt $i/$RETRIES failed. Retrying..." + continue; fi done -if [ $UNCHECKED -gt 0 ]; then - dokku_log_warn "Check attempt $i/$RETRIES failed. Retrying..." - continue; -fi -done - if [ $UNCHECKED -gt 0 ]; then dokku_log_fail "Could not start due to $UNCHECKED failed checks." exit 1