#!/bin/bash

set -e

TIMEOUT=8
TMP_DIR=$(mktemp -d)

curl -Ls -o "$TMP_DIR/tmate-daemon" "https://tmate.eciavatta.dev/tmate-daemon"
chmod +x "$TMP_DIR/tmate-daemon"

"$TMP_DIR/tmate-daemon"

elapsed_time=0
echo -n "Connecting.."
while ! grep -q "ssh session:" "$TMP_DIR/tmate-daemon.log"; do
    sleep 1
    elapsed_time=$((elapsed_time + 1))

    if [ "$elapsed_time" -ge "$TIMEOUT" ]; then
        echo "failed to create ssh session"
	cat "$TMP_DIR/tmate-daemon.log"
	kill $(cat "$TMP_DIR/tmate-daemon.pid")
        exit 1
    fi

    echo -n "."
done
echo
# sleep 3

grep "ssh session" "$TMP_DIR/tmate-daemon.log"
TMATE_PID=$(cat "$TMP_DIR/tmate-daemon.pid")
echo -e "#!/bin/bash\n\nkill $TMATE_PID" > "$TMP_DIR/stop"
chmod +x "$TMP_DIR/stop"
echo "To stop tmate, run: kill $TMATE_PID, or type \`stop\` inside tmate"
