Files
crm-ai/scripts/export-kb-snapshot.sh

14 lines
653 B
Bash
Executable File

#!/usr/bin/env bash
# 从已有环境导出 KB(kb_docs)快照,供没有旧 bridge 的测试/生产环境导入。
# 用法: bash scripts/export-kb-snapshot.sh [输出文件]
set -euo pipefail
ROOT="$(cd "$(dirname "$0")/.." && pwd)"
OUT="${1:-$ROOT/deploy/seeds/kb_docs.sql.gz}"
SRC_CONTAINER="${SOURCE_PG_CONTAINER:-crm-postgres}"
SRC_DB="${SOURCE_PG_DB:-products}"
SRC_USER="${SOURCE_PG_USER:-postgres}"
mkdir -p "$(dirname "$OUT")"
docker exec "$SRC_CONTAINER" pg_dump -U "$SRC_USER" -d "$SRC_DB" \
-t kb_docs --no-owner --no-privileges | gzip -9 > "$OUT"
echo "[export-kb] $SRC_CONTAINER/$SRC_DB.kb_docs -> $OUT ($(du -h "$OUT" | cut -f1))"