Files
biliup-next/run-worker.sh

31 lines
1.1 KiB
Bash
Executable File

#!/usr/bin/env bash
set -euo pipefail
PROJECT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
LOCAL_DEFAULT_PYTHON="$PROJECT_DIR/.venv/bin/python"
LEGACY_DEFAULT_PYTHON="$PROJECT_DIR/../.venv/bin/python"
PYTHON_BIN="${BILIUP_NEXT_PYTHON:-$LOCAL_DEFAULT_PYTHON}"
if [[ ! -x "$PYTHON_BIN" ]]; then
if [[ -x "$LEGACY_DEFAULT_PYTHON" ]]; then
PYTHON_BIN="$LEGACY_DEFAULT_PYTHON"
else
PYTHON_BIN="${BILIUP_NEXT_PYTHON:-python3}"
fi
fi
cd "$PROJECT_DIR"
export PYTHONPATH="$PROJECT_DIR/src"
LOG_DIR="$PROJECT_DIR/runtime/logs"
LOG_FILE="$LOG_DIR/worker.log"
mkdir -p "$LOG_DIR"
LOG_MAX_BYTES="${BILIUP_NEXT_LOG_MAX_BYTES:-20971520}"
LOG_BACKUPS="${BILIUP_NEXT_LOG_BACKUPS:-5}"
echo "[$(date '+%Y-%m-%d %H:%M:%S %z')] starting biliup-next worker" | "$PROJECT_DIR/scripts/log-tee.sh" "$LOG_FILE" "$LOG_MAX_BYTES" "$LOG_BACKUPS"
"$PYTHON_BIN" -u -m biliup_next.app.cli init-workspace \
2>&1 | "$PROJECT_DIR/scripts/log-tee.sh" "$LOG_FILE" "$LOG_MAX_BYTES" "$LOG_BACKUPS"
"$PYTHON_BIN" -u -m biliup_next.app.cli worker --interval "${BILIUP_NEXT_WORKER_INTERVAL:-5}" \
2>&1 | "$PROJECT_DIR/scripts/log-tee.sh" "$LOG_FILE" "$LOG_MAX_BYTES" "$LOG_BACKUPS"