#!/usr/bin/env bash
# 只做数据库迁移(不启服务)。部署 / CI / "只想把表建好"时用。
# 用法: bash scripts/migrate.sh
# 启动服务用 ./run.sh(它会自动先跑迁移)。详见 docs/数据库迁移.md
set -e
cd "$(dirname "$0")/.."   # 切到项目根(alembic.ini 所在)

if [ ! -f .env ]; then
  echo "❌ 缺 .env：先  cp .env.example .env  并填值(至少 JWT_SECRET_KEY)"
  exit 1
fi

mkdir -p data             # SQLite 库文件所在目录(用 Postgres 时无害)
echo "→ alembic upgrade head"
alembic upgrade head      # 幂等：已是最新则 no-op
echo "✅ 数据库已升到最新 (alembic current 可查看当前版本)"
