fix: docker alembic

This commit is contained in:
Leon
2025-07-17 19:31:36 +02:00
parent 8f3634d0dc
commit fe55a49f8d
6 changed files with 35 additions and 118 deletions

View File

@@ -1,4 +1,5 @@
from logging.config import fileConfig
import os
from sqlalchemy import engine_from_config
from sqlalchemy import pool
@@ -39,7 +40,10 @@ def run_migrations_offline() -> None:
script output.
"""
url = config.get_main_option("sqlalchemy.url")
url = os.environ.get("DATABASE_URL") or os.environ.get("LETTERFEED_DATABASE_URL")
if url is None:
url = config.get_main_option("sqlalchemy.url")
context.configure(
url=url,
target_metadata=target_metadata,
@@ -58,11 +62,21 @@ def run_migrations_online() -> None:
and associate a connection with the context.
"""
connectable = engine_from_config(
config.get_section(config.config_ini_section, {}),
prefix="sqlalchemy.",
poolclass=pool.NullPool,
)
connectable = None
database_url = os.environ.get("DATABASE_URL") or os.environ.get("LETTERFEED_DATABASE_URL")
if database_url:
connectable = engine_from_config(
{"sqlalchemy.url": database_url},
prefix="sqlalchemy.",
poolclass=pool.NullPool,
)
else:
connectable = engine_from_config(
config.get_section(config.config_ini_section, {}),
prefix="sqlalchemy.",
poolclass=pool.NullPool,
)
with connectable.connect() as connection:
context.configure(