From e905503bb98569923024110ea8107da9ad58111b Mon Sep 17 00:00:00 2001 From: Jose Diaz-Gonzalez Date: Sat, 28 Sep 2024 21:11:13 -0400 Subject: [PATCH] fix: compute path for docker-container-healthchecker This fixes an issue for source-based Dokku installs where the binary is installed in /usr/local/bin instead of /usr/bin due to not being installed via an OS package. Closes #7010 --- plugins/scheduler-docker-local/check-deploy | 5 ++++- plugins/scheduler-docker-local/install | 4 +++- 2 files changed, 7 insertions(+), 2 deletions(-) diff --git a/plugins/scheduler-docker-local/check-deploy b/plugins/scheduler-docker-local/check-deploy index 9343aa4b9..cf2fb5922 100755 --- a/plugins/scheduler-docker-local/check-deploy +++ b/plugins/scheduler-docker-local/check-deploy @@ -153,7 +153,10 @@ trigger-scheduler-docker-local-check-deploy() { echo "$content" >"$TMP_APP_JSON_OUTPUT" fi - sudo /usr/bin/docker-container-healthchecker check "$DOKKU_APP_CONTAINER_ID" "${ARG_ARRAY[@]}" || FAILEDCHECKS="$?" + local docker_container_healthchecker_path + docker_container_healthchecker_path="$(command -v docker-container-healthchecker)" + + sudo "$docker_container_healthchecker_path" check "$DOKKU_APP_CONTAINER_ID" "${ARG_ARRAY[@]}" || FAILEDCHECKS="$?" if [[ $FAILEDCHECKS -gt 0 ]]; then "$DOCKER_BIN" container update --restart=no "$DOKKU_APP_CONTAINER_ID" &>/dev/null || true diff --git a/plugins/scheduler-docker-local/install b/plugins/scheduler-docker-local/install index f7ddd44af..890d1b40d 100755 --- a/plugins/scheduler-docker-local/install +++ b/plugins/scheduler-docker-local/install @@ -16,7 +16,9 @@ trigger-scheduler-docker-local-install() { rm -f "/etc/sudoers.d/dokku-cron" - echo "%dokku ALL=(ALL) NOPASSWD:/usr/bin/docker-container-healthchecker" >"/etc/sudoers.d/dokku-docker-container-healthchecker" + local docker_container_healthchecker_path + docker_container_healthchecker_path="$(command -v docker-container-healthchecker)" + echo "%dokku ALL=(ALL) NOPASSWD:$docker_container_healthchecker_path" >"/etc/sudoers.d/dokku-docker-container-healthchecker" chmod "0440" "/etc/sudoers.d/dokku-docker-container-healthchecker" DOKKU_PATH="$(command -v dokku)"