File size: 1,741 Bytes
9f84216 | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 | #!/bin/bash
# Wrapper script to run auto-sync daemon in background
SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
PROJECT_ROOT="$(cd "$SCRIPT_DIR/.." && pwd)"
VENV="$PROJECT_ROOT/.venv"
LOG_FILE="$PROJECT_ROOT/logs/auto_sync_hf.log"
PID_FILE="$PROJECT_ROOT/logs/auto_sync_hf.pid"
mkdir -p "$PROJECT_ROOT/logs"
start() {
if [ -f "$PID_FILE" ] && kill -0 $(cat "$PID_FILE") 2>/dev/null; then
echo "β Auto-sync daemon already running (PID: $(cat "$PID_FILE"))"
exit 1
fi
echo "π Starting auto-sync daemon..."
nohup "$VENV/bin/python" "$SCRIPT_DIR/auto_sync_hf.py" >> "$LOG_FILE" 2>&1 &
echo $! > "$PID_FILE"
echo "β
Daemon started (PID: $(cat "$PID_FILE"))"
echo "π Log: $LOG_FILE"
echo ""
echo "To stop: $0 stop"
echo "To check: $0 status"
}
stop() {
if [ ! -f "$PID_FILE" ]; then
echo "β No PID file found"
exit 1
fi
PID=$(cat "$PID_FILE")
if kill -0 "$PID" 2>/dev/null; then
echo "π Stopping daemon (PID: $PID)..."
kill "$PID"
rm "$PID_FILE"
echo "β
Daemon stopped"
else
echo "β Daemon not running"
rm "$PID_FILE"
fi
}
status() {
if [ -f "$PID_FILE" ] && kill -0 $(cat "$PID_FILE") 2>/dev/null; then
echo "β
Daemon running (PID: $(cat "$PID_FILE"))"
echo "π Log tail:"
tail -10 "$LOG_FILE"
else
echo "β Daemon not running"
fi
}
case "$1" in
start)
start
;;
stop)
stop
;;
restart)
stop
sleep 2
start
;;
status)
status
;;
*)
echo "Usage: $0 {start|stop|restart|status}"
exit 1
;;
esac
|