49 lines
1.1 KiB
Bash
Executable File
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"
|