fix: keep track of the stopped/started state of haproxy

This commit is contained in:
Jose Diaz-Gonzalez
2023-05-28 15:46:24 -04:00
parent ed46a2e67b
commit 986c05ff7e
2 changed files with 22 additions and 0 deletions

View File

@@ -129,6 +129,7 @@ cmd-haproxy-start() {
local TMP_COMPOSE_FILE=$(mktemp "/tmp/dokku-${DOKKU_PID}-${FUNCNAME[0]}.XXXXXX")
trap "rm -rf '$TMP_COMPOSE_FILE' >/dev/null" RETURN INT TERM EXIT
fn-plugin-property-write "caddy" "--global" "proxy-status" "started"
fn-haproxy-template-compose-file "$TMP_COMPOSE_FILE"
"$DOCKER_BIN" compose -f "$TMP_COMPOSE_FILE" -p haproxy up -d --quiet-pull
}
@@ -145,6 +146,7 @@ cmd-haproxy-stop() {
local TMP_COMPOSE_FILE=$(mktemp "/tmp/dokku-${DOKKU_PID}-${FUNCNAME[0]}.XXXXXX")
trap "rm -rf '$TMP_COMPOSE_FILE' >/dev/null" RETURN INT TERM EXIT
fn-plugin-property-write "haproxy" "--global" "proxy-status" "stopped"
fn-haproxy-template-compose-file "$TMP_COMPOSE_FILE"
"$DOCKER_BIN" compose -f "$TMP_COMPOSE_FILE" -p haproxy down --remove-orphans
}

View File

@@ -0,0 +1,20 @@
#!/usr/bin/env bash
source "$PLUGIN_CORE_AVAILABLE_PATH/common/functions"
source "$PLUGIN_AVAILABLE_PATH/haproxy-vhosts/command-functions"
set -eo pipefail
[[ $DOKKU_TRACE ]] && set -x
trigger-haproxy-pre-restore() {
declare desc="pre-restore the caddy proxy"
declare trigger="install"
if [[ "$(fn-plugin-property-get "haproxy" "--global" "proxy-status")" == "stopped" ]]; then
return
fi
if ! cmd-haproxy-start; then
dokku_log_warn "Failed to restore haproxy proxy, requests may not route as expected"
fi
}
trigger-haproxy-pre-restore "$@"