Files
ts-anomaly-td/scripts/run_e2e.sh
T

49 lines
1.1 KiB
Bash
Executable File

#!/usr/bin/env bash
set -euo pipefail
SCRIPT_DIR="$(cd "$(dirname "$0")" && pwd)"
PROJECT_DIR="$(dirname "$SCRIPT_DIR")"
cd "$PROJECT_DIR"
echo "=== ts-anomaly-td E2E ==="
echo ""
echo "[1/5] Starting TDengine container..."
docker compose up -d
echo "[2/5] Waiting for TDengine to be healthy..."
for i in $(seq 1 60); do
if docker compose exec -T tdengine taos -s "SELECT SERVER_VERSION()" > /dev/null 2>&1; then
echo "TDengine ready (attempt $i)"
break
fi
sleep 2
done
mkdir -p render logs
echo "[3/5] Running E2E pipeline..."
uv run python -m ts_anomaly_td e2e --data-dir data --output-dir render --log-dir logs
echo "[4/5] Checking results..."
for png in render/*.png; do
if [ -f "$png" ]; then
sz=$(stat -c%s "$png" 2>/dev/null || stat -f%z "$png" 2>/dev/null || echo 0)
echo " $png: ${sz} bytes"
if [ "$sz" -lt 10240 ]; then
echo " WARNING: PNG too small (< 10KB)"
fi
fi
done
for log in logs/e2e_*.json; do
if [ -f "$log" ]; then
echo " $log: $(wc -c < "$log") bytes"
fi
done
echo "[5/5] Done."
echo ""
echo "To clean up: docker compose down"
echo "To keep containers for debug: leave them running"