31 lines
1.1 KiB
Bash
Executable File
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"
|