- migrate-test-db.sh: reuse parameterized migrate-dev-db.sh with test defaults (container shuimu-system-pg-test -> localpg :5434, PGDATA=data/test/pg) - launch-single.sh: non-dev single-binary launcher (SYSTEM_DB_*->CONTEXT_DB_* mapping, env-scoped PI sidecar, no Vite); task record for dev->test rc promotion + test conversion (rc-v1.1.0-beta.4)
36 lines
1.7 KiB
Bash
Executable File
36 lines
1.7 KiB
Bash
Executable File
#!/usr/bin/env bash
|
||
# migrate-test-db.sh — dump 容器 system-db (shuimu-system-pg-test :5434) → 本机 localpg :5434
|
||
#
|
||
# 复用 migrate-dev-db.sh 的通用逻辑(其全部差异点已参数化);本脚本只钉 test 默认值:
|
||
# CONTAINER=shuimu-system-pg-test DATA_DIR=data/test PORT=5434 DB=agent_system_test
|
||
# 前置:
|
||
# - 容器 shuimu-system-pg-test 健康(作为 dump 源)
|
||
# - brew postgresql@18 + pgvector 已安装(LOCALPG_BIN 可覆盖)
|
||
# - configs/.env.test 提供 SYSTEM_DB_*(或用环境变量覆盖)
|
||
# 不删除 docker volume;回滚:docker compose -f docker-compose.test.yml -p agent-test up -d system-db
|
||
set -euo pipefail
|
||
|
||
ROOT="$(cd "$(dirname "${BASH_SOURCE[0]}")/.." && pwd)"
|
||
|
||
# 读取 test 环境 SSOT(SYSTEM_DB_* 等;含密钥,勿回显)
|
||
# shellcheck disable=SC1091
|
||
if [[ -f "$ROOT/configs/.env.test" ]]; then
|
||
set -a
|
||
. "$ROOT/configs/.env.test"
|
||
set +a
|
||
fi
|
||
|
||
export CONTAINER="${DEV_PG_CONTAINER:-shuimu-system-pg-test}"
|
||
export DATA_DIR="${MIGRATE_DATA_DIR:-$ROOT/data/test}" # 绝对路径,避免 PGDATA 相对解析漂移
|
||
export PORT="${CONTEXT_DB_PORT:-${SYSTEM_DB_PUBLISH_PORT:-5434}}"
|
||
export CONTEXT_DB_PORT="$PORT"
|
||
export DB_USER="${CONTEXT_DB_USER:-${SYSTEM_DB_USER:-app}}"
|
||
export DB_PASS="${CONTEXT_DB_PASSWORD:-${SYSTEM_DB_PASSWORD:?SYSTEM_DB_PASSWORD required (configs/.env.test)}}"
|
||
export DB_NAME="${CONTEXT_DB_NAME:-${SYSTEM_DB_NAME:-agent_system_test}}"
|
||
export DUMP="${DUMP_PATH:-$ROOT/.tmp/test-pg-migrate.dump}"
|
||
# migrate-dev-db.sh 的 dump 步骤读取 SYSTEM_DB_USER / SYSTEM_DB_NAME
|
||
export SYSTEM_DB_USER="${SYSTEM_DB_USER:-app}"
|
||
export SYSTEM_DB_NAME="${SYSTEM_DB_NAME:-agent_system_test}"
|
||
|
||
bash "$ROOT/scripts/migrate-dev-db.sh"
|