@@ -0,0 +1,39 @@
|
||||
#!/usr/bin/env bash
|
||||
# Единая точка запуска Waitress для systemd, post_update и dev.
|
||||
# Переменные: WESP_LISTEN (0.0.0.0:80), WESP_WAITRESS_THREADS (по умолчанию 20).
|
||||
set -euo pipefail
|
||||
|
||||
ROOT="$(cd "$(dirname "$0")/.." && pwd)"
|
||||
cd "$ROOT"
|
||||
|
||||
LISTEN="${WESP_LISTEN:-0.0.0.0:80}"
|
||||
THREADS="${WESP_WAITRESS_THREADS:-20}"
|
||||
if ! [[ "$THREADS" =~ ^[0-9]+$ ]] || [[ "$THREADS" -lt 4 ]]; then
|
||||
THREADS=4
|
||||
fi
|
||||
|
||||
wesp_waitress() {
|
||||
local venv_dir py
|
||||
venv_dir="${WESP_VENV:-/opt/wes}"
|
||||
if [[ -x "${venv_dir}/bin/waitress-serve" ]]; then
|
||||
echo "${venv_dir}/bin/waitress-serve"
|
||||
return
|
||||
fi
|
||||
py="$(command -v python3 2>/dev/null || true)"
|
||||
if [[ -n "$py" && -x "${py%/*}/waitress-serve" ]]; then
|
||||
echo "${py%/*}/waitress-serve"
|
||||
return
|
||||
fi
|
||||
if [[ -x "${ROOT}/../wes_mac/bin/waitress-serve" ]]; then
|
||||
echo "${ROOT}/../wes_mac/bin/waitress-serve"
|
||||
return
|
||||
fi
|
||||
if [[ -x "${ROOT}/.venv/bin/waitress-serve" ]]; then
|
||||
echo "${ROOT}/.venv/bin/waitress-serve"
|
||||
return
|
||||
fi
|
||||
command -v waitress-serve
|
||||
}
|
||||
|
||||
WAITRESS="$(wesp_waitress)"
|
||||
exec "$WAITRESS" --listen="$LISTEN" --threads="$THREADS" wsgi:app
|
||||
Reference in New Issue
Block a user