Files
storyforge/scripts/check_repo_baseline.sh

46 lines
1.0 KiB
Bash
Executable File

#!/bin/sh
set -eu
ROOT="$(CDPATH= cd -- "$(dirname "$0")/.." && pwd)"
need_cmd() {
if ! command -v "$1" >/dev/null 2>&1; then
echo "missing required command: $1" >&2
exit 1
fi
}
need_cmd python3
need_cmd docker
need_cmd node
cd "$ROOT"
echo "[1/5] compile collector-service"
python3 -m compileall collector-service/app >/dev/null
echo "[2/5] validate docker compose"
docker compose config >/dev/null
echo "[3/5] validate n8n workflows"
python3 - <<'PY'
import json
import pathlib
for path in sorted(pathlib.Path("n8n/workflows").glob("*.json")):
with path.open() as handle:
json.load(handle)
print(f"workflow ok: {path.name}")
PY
echo "[4/5] validate web scripts"
for file in web/storyforge-web-v4/assets/app.js web/storyforge-web-v4/assets/storyforge-*.js; do
node --check "$file"
done
node --check scripts/douyin-browser-capture/control_panel.mjs
echo "[5/5] validate homepage dashboard tests"
node --test web/storyforge-web-v4/tests/dashboard-home.test.mjs
echo "baseline checks passed"