Files
llm-intelligence/scripts/apply_migration.sh
phamnazage-jpg 98b9203302
Some checks failed
CI / go-test (push) Has been cancelled
CI / scripts-regression (push) Has been cancelled
CI / frontend-build (push) Has been cancelled
CI / docker-build (push) Has been cancelled
fix: preserve local env overrides in shell pipelines
2026-05-30 16:38:38 +08:00

19 lines
663 B
Bash
Executable File

#!/usr/bin/env bash
set -euo pipefail
ROOT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")/.." && pwd)"
cd "$ROOT_DIR"
while IFS= read -r kv; do export "$kv"; done < <("$ROOT_DIR/scripts/load_project_env.sh" ".env.local")
while IFS= read -r kv; do key="${kv%%=*}"; [[ -n "$key" && -n "${!key:-}" ]] && continue; export "$kv"; done < <("$ROOT_DIR/scripts/load_project_env.sh" ".env")
if [[ -z "${DATABASE_URL:-}" ]]; then
echo "DATABASE_URL 未设置" >&2
exit 1
fi
find "db/migrations" -maxdepth 1 -type f -name "*.sql" | sort | while read -r migration; do
psql "$DATABASE_URL" -v ON_ERROR_STOP=1 -f "$migration"
echo "migration 已应用: $migration"
done