import asyncio from alembic import context from sqlalchemy.ext.asyncio import create_async_engine from app import models # noqa: F401 (registers tables) from app.config import get_settings from app.db import Base target_metadata = Base.metadata def run(connection) -> None: context.configure(connection=connection, target_metadata=target_metadata) with context.begin_transaction(): context.run_migrations() async def main() -> None: engine = create_async_engine(get_settings().database_url) async with engine.connect() as conn: await conn.run_sync(run) await engine.dispose() asyncio.run(main())