From d870fe18d3420e05f68a3b17b55461b1a772a96f Mon Sep 17 00:00:00 2001 From: busya Date: Tue, 26 May 2026 19:41:45 +0300 Subject: [PATCH] fix: run Alembic migrations in entrypoint before bootstrap_admin MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The entrypoint was calling init_auth_db.py → init_db() + seed_permissions() before the FastAPI startup_event (where run_alembic_migrations() lived). Since the _ensure_*() safety net was removed, seed_permissions() failed with 'column roles.is_admin does not exist' on databases with old schema. Now alembic upgrade head runs directly in the entrypoint, ensuring all migrations are applied before any DB queries. --- docker/backend.entrypoint.sh | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/docker/backend.entrypoint.sh b/docker/backend.entrypoint.sh index e0934c35..564c9b82 100755 --- a/docker/backend.entrypoint.sh +++ b/docker/backend.entrypoint.sh @@ -150,6 +150,11 @@ install_playwright() { install_certificates install_playwright + +echo "[entrypoint] Running Alembic migrations..." +alembic upgrade head 2>&1 | sed 's/^/[entrypoint] /' +echo "[entrypoint] ✅ Alembic migrations applied" + bootstrap_admin echo "[entrypoint] Starting backend: $*"