Files
ewoooc/scripts/check_observability_suite.sh
OoO 6a0d5c138d
Some checks failed
CD Pipeline / deploy (push) Has been cancelled
test(observability): add one-shot QA suite
2026-05-05 15:39:55 +08:00

66 lines
1.5 KiB
Bash

#!/usr/bin/env bash
# AI observability QA suite.
#
# Runs the static UI regression guard first, then the production page smoke
# check unless --skip-production is provided.
set -euo pipefail
PROJECT_ROOT="$(cd "$(dirname "${BASH_SOURCE[0]}")/.." && pwd)"
BASE_URL="https://mo.wooo.work"
SKIP_PRODUCTION=0
while [[ $# -gt 0 ]]; do
case "$1" in
--base-url)
BASE_URL="${2:-}"
if [[ -z "$BASE_URL" ]]; then
echo "ERROR: --base-url requires a value" >&2
exit 1
fi
shift 2
;;
--skip-production)
SKIP_PRODUCTION=1
shift
;;
-h|--help)
cat <<'EOF'
Usage: scripts/check_observability_suite.sh [--base-url URL] [--skip-production]
Runs:
1. python3 scripts/check_observability_ui.py
2. python3 scripts/check_observability_pages.py --base-url URL
Options:
--base-url URL Target site for the 10-page smoke check.
--skip-production Run only the static UI guard.
EOF
exit 0
;;
*)
echo "ERROR: unknown option: $1" >&2
exit 1
;;
esac
done
cd "$PROJECT_ROOT"
echo "========================================"
echo "AI Observability QA Suite"
echo "========================================"
echo "1/2 Static UI guard"
python3 scripts/check_observability_ui.py
if [[ "$SKIP_PRODUCTION" -eq 1 ]]; then
echo "2/2 Production smoke skipped"
echo "AI Observability QA Suite: PASS"
exit 0
fi
echo "2/2 Production 10-page smoke"
python3 scripts/check_observability_pages.py --base-url "$BASE_URL"
echo "AI Observability QA Suite: PASS"