refactor: remove fastgpt runtime dependency

This commit is contained in:
kris
2026-03-23 17:06:05 +08:00
parent 71465b3d55
commit 1d9dbfa8a4
22 changed files with 8489 additions and 4520 deletions

View File

@@ -0,0 +1,44 @@
#!/usr/bin/env bash
set -euo pipefail
ROOT_DIR="${ROOT_DIR:-$(cd "$(dirname "${BASH_SOURCE[0]}")/.." && pwd)}"
BASE_COMPOSE_FILE="${BASE_COMPOSE_FILE:-$ROOT_DIR/docker-compose.yml}"
RUNTIME_FIXES_COMPOSE_FILE="${RUNTIME_FIXES_COMPOSE_FILE:-$ROOT_DIR/deploy/storyforge-collector-runtime-fixes.yml}"
OVERLAY_COMPOSE_FILE="${OVERLAY_COMPOSE_FILE:-$ROOT_DIR/deploy/storyforge-collector-source-overlay.yml}"
PROJECT_NAME="${PROJECT_NAME:-storyforge-gitea}"
COLLECTOR_URL="${COLLECTOR_URL:-http://127.0.0.1:8081}"
MAX_ATTEMPTS="${MAX_ATTEMPTS:-25}"
SLEEP_SEC="${SLEEP_SEC:-2}"
compose_with_overlay() {
docker compose -p "$PROJECT_NAME" -f "$BASE_COMPOSE_FILE" -f "$RUNTIME_FIXES_COMPOSE_FILE" -f "$OVERLAY_COMPOSE_FILE" "$@"
}
compose_base() {
docker compose -p "$PROJECT_NAME" -f "$BASE_COMPOSE_FILE" -f "$RUNTIME_FIXES_COMPOSE_FILE" "$@"
}
verify_overlay() {
curl -fsS "$COLLECTOR_URL/healthz" >/dev/null
local paths
paths="$(curl -fsS "$COLLECTOR_URL/openapi.json" | jq -r '.paths | keys[]')"
grep -qx '/v2/douyin/accounts' <<<"$paths"
grep -qx '/v2/pipelines/real-cut' <<<"$paths"
grep -qx '/v2/pipelines/ai-video' <<<"$paths"
grep -qx '/v2/pipelines/content-source-sync' <<<"$paths"
}
echo "[cutover] recreating collector with source overlay"
compose_with_overlay up -d --force-recreate collector
for attempt in $(seq 1 "$MAX_ATTEMPTS"); do
if verify_overlay; then
echo "[cutover] collector overlay is live on $COLLECTOR_URL"
exit 0
fi
sleep "$SLEEP_SEC"
done
echo "[cutover] verification failed, rolling back to base compose"
compose_base up -d --force-recreate collector
exit 1

View File

@@ -0,0 +1,9 @@
#!/usr/bin/env bash
set -euo pipefail
ROOT_DIR="${ROOT_DIR:-$(cd "$(dirname "${BASH_SOURCE[0]}")/.." && pwd)}"
BASE_COMPOSE_FILE="${BASE_COMPOSE_FILE:-$ROOT_DIR/docker-compose.yml}"
RUNTIME_FIXES_COMPOSE_FILE="${RUNTIME_FIXES_COMPOSE_FILE:-$ROOT_DIR/deploy/storyforge-collector-runtime-fixes.yml}"
PROJECT_NAME="${PROJECT_NAME:-storyforge-gitea}"
docker compose -p "$PROJECT_NAME" -f "$BASE_COMPOSE_FILE" -f "$RUNTIME_FIXES_COMPOSE_FILE" up -d --force-recreate collector

View File

@@ -0,0 +1,4 @@
services:
collector:
environment:
N8N_BASE_URL: http://n8n:5678

View File

@@ -0,0 +1,6 @@
services:
collector:
environment:
N8N_BASE_URL: http://n8n:5678
volumes:
- ${COLLECTOR_APP_OVERLAY_DIR:-/Users/kris/code/StoryForge/collector-service/app}:/app/app:ro