Files
webclient-css/start-signaling.sh
T

35 lines
964 B
Bash
Executable File

#!/bin/bash
# Starts the signaling server. Secrets come from .env next to this script
set -e
SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
ENV_FILE="$SCRIPT_DIR/.env"
if [ ! -f "$ENV_FILE" ]; then
echo "Missing $ENV_FILE — copy .env.example to .env and fill in the values." >&2
exit 1
fi
# Export every variable defined in .env
set -a
source "$ENV_FILE"
set +a
for var in CF_APP_ID CF_APP_TOKEN NAME_SALT; do
if [ -z "${!var}" ]; then
echo "$var is not set in $ENV_FILE" >&2
exit 1
fi
done
export CONTAINER_NAME="${CONTAINER_NAME:-css-test}"
# Stop any old instance and wait until it is gone (frees port 3000)
pkill -f signaling-server.js || true
for i in $(seq 1 10); do
pgrep -f signaling-server.js > /dev/null || break
sleep 0.5
done
cd "$SCRIPT_DIR/streaming-agent"
node signaling-server.js &> "$SCRIPT_DIR/signaling.log" &
echo "Signaling server started (PID $!), logs at $SCRIPT_DIR/signaling.log"