app.py 712 B

123456789101112131415161718192021
  1. from fastapi import FastAPI
  2. from core_shared.observability import add_observability
  3. from app.api.routes import router
  4. from app.bootstrap.settings import ApiGatewaySettings
  5. from app.db.session import build_session_factory
  6. from app.infrastructure.request_context import GatewayRequestContextMiddleware
  7. def create_app() -> FastAPI:
  8. settings = ApiGatewaySettings()
  9. app = FastAPI(
  10. title="agent-platform api-gateway",
  11. version="0.1.0",
  12. )
  13. app.state.settings = settings
  14. app.state.session_factory = build_session_factory(settings)
  15. add_observability(app, settings.service_name)
  16. app.add_middleware(GatewayRequestContextMiddleware)
  17. app.include_router(router)
  18. return app