From ce60ef6bff1b0b6df7fd5e8b67ee7765ec575fd8 Mon Sep 17 00:00:00 2001 From: Jose Diaz-Gonzalez Date: Mon, 9 Dec 2019 13:52:53 -0500 Subject: [PATCH] fix: properly track failed check count Closes #3799 --- plugins/scheduler-docker-local/check-deploy | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/plugins/scheduler-docker-local/check-deploy b/plugins/scheduler-docker-local/check-deploy index 49daaca64..be127dfbb 100755 --- a/plugins/scheduler-docker-local/check-deploy +++ b/plugins/scheduler-docker-local/check-deploy @@ -205,6 +205,7 @@ scheduler-docker-local-check-deploy() { [[ $DOKKU_TRACE ]] && dokku_log_verbose "$ curl $CURL_ARGS" local ATTEMPT=0 + local SUCCESS=0 until [[ $SUCCESS == 1 || $ATTEMPT -ge $ATTEMPTS ]]; do local ATTEMPT=$((ATTEMPT + 1)) dokku_log_verbose "Attempt $ATTEMPT/$ATTEMPTS. Waiting for $WAIT seconds ..." @@ -214,23 +215,22 @@ scheduler-docker-local-check-deploy() { # shellcheck disable=SC2086 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\"" - local FAILEDCHECKS=$((FAILEDCHECKS + 1)) + if [[ "$OUTPUT" =~ $EXPECTED ]]; then + SUCCESS=1 + break fi + dokku_log_warn "$LOG_URL: expected to but did not find: \"$EXPECTED\"" else # Failed to connect/no response, OUTPUT contains error message dokku_log_warn "$OUTPUT" - local FAILEDCHECKS=$((FAILEDCHECKS + 1)) fi - if [[ $FAILEDCHECKS -gt 0 ]]; then - dokku_log_warn "Check attempt $ATTEMPT/$ATTEMPTS failed." - local SUCCESS=0 - else - local SUCCESS=1 - fi + dokku_log_warn "Check attempt $ATTEMPT/$ATTEMPTS failed." done + + if [[ $SUCCESS -ne 1 ]]; then + FAILEDCHECKS=$((FAILEDCHECKS + 1)) + fi done if [[ $FAILEDCHECKS -gt 0 ]]; then