#!/bin/bash
set -e
BASEDIR=$(dirname "$(dirname "$(readlink -f "$0")")")
TOOLSDIR="$BASEDIR/tools"
VENV="$TOOLSDIR/.venv"

PYVER=$(ls "$VENV/lib/" | head -1)
export PYTHONPATH="$VENV/lib/$PYVER/site-packages"
source "$VENV/bin/activate"
"$VENV/bin/coilmq" -b 0.0.0.0 -p 61613 &
echo $! > "$TOOLSDIR/coilmq.pid"

READY=0
for attempt in $(seq 1 20); do
    if "$VENV/bin/python3" -c "import socket; s=socket.socket(); s.settimeout(0.5); s.connect(('127.0.0.1', 61613)); s.close()" 2>/dev/null; then
        READY=1
        break
    fi
    sleep 0.25
done

if [ "$READY" -ne 1 ]; then
    echo "ERROR: CoilMQ failed to start after 20 attempts" >&2
    exit 1
fi
