| 12345678910111213141516171819202122232425262728 |
- from contextlib import asynccontextmanager
- from fastapi import FastAPI
- from fastapi.middleware.cors import CORSMiddleware
- from app.api.routes import router
- from app.core.config import settings
- from app.scheduler.manager import shutdown_scheduler, start_scheduler
- @asynccontextmanager
- async def lifespan(_: FastAPI):
- start_scheduler()
- try:
- yield
- finally:
- shutdown_scheduler()
- app = FastAPI(title=settings.app_name, lifespan=lifespan)
- app.add_middleware(
- CORSMiddleware,
- allow_origins=settings.cors_allow_origin_list,
- allow_credentials=False,
- allow_methods=["*"],
- allow_headers=["*"],
- )
- app.include_router(router, prefix="/demand/api/v1")
|