opd_zt / scripts /launch_extract.sh
sdzt's picture
Add files using upload-large-folder tool
bf46e5d verified
Raw
History Blame Contribute Delete
904 Bytes
#!/usr/bin/env bash
# Launch archive extraction detached. Usage: launch_extract.sh [tb|lv178k|all]
set -euo pipefail
ROOT=/mnt/local-fast/opd_zt
cd "$ROOT"
source "$ROOT/.env"
source "$ROOT/.venv/bin/activate"
WHICH=${1:-all}
LOG_DIR="$ROOT/logs"
mkdir -p "$LOG_DIR"
STAMP=$(date +%Y%m%d_%H%M%S)
LOG="$LOG_DIR/extract_${WHICH}_${STAMP}.log"
PID_FILE="$LOG_DIR/extract_${WHICH}.pid"
if [[ -f "$PID_FILE" ]] && kill -0 "$(cat "$PID_FILE")" 2>/dev/null; then
echo "extract ($WHICH) already running, pid=$(cat "$PID_FILE")"
exit 1
fi
# 5 workers — extraction is CPU-bound (decompression), 8x H100 box has plenty CPU
setsid nohup python "$ROOT/scripts/extract_archives.py" --only "$WHICH" --workers 5 \
> "$LOG" 2>&1 < /dev/null &
PID=$!
echo "$PID" > "$PID_FILE"
ln -sfn "$LOG" "$LOG_DIR/extract_${WHICH}.latest.log"
disown $PID || true
echo "launched extract ($WHICH), pid=$PID log=$LOG"