Files
codeless/backend/app/db/session.py
2025-08-27 19:15:08 +02:00

16 lines
714 B
Python

from typing import AsyncGenerator, Optional
import os
from sqlalchemy.ext.asyncio import AsyncEngine, AsyncSession, create_async_engine
from sqlalchemy.orm import sessionmaker
DATABASE_URL = os.getenv("DATABASE_URL", "postgresql+asyncpg://postgres:postgres@db:5432/postgres")
engine: AsyncEngine = create_async_engine(DATABASE_URL, echo=False, future=True)
AsyncSessionLocal = sessionmaker(engine, class_=AsyncSession, expire_on_commit=False)
async def get_session(jwt: Optional[str] = None) -> AsyncGenerator[AsyncSession, None]:
async with engine.connect() as conn:
# TODO: forward Supabase JWT → Postgres for RLS
async with AsyncSession(bind=conn) as session:
yield session