Files
services_manager_server/src/core/app.py
2023-01-08 00:02:04 +01:00

33 lines
679 B
Python

import sentry_sdk
from fastapi import FastAPI
from app.views import router
from core.config import env_config
from core.db import database
sentry_sdk.init(
env_config.SENTRY_DSN,
)
def start_app() -> FastAPI:
app = FastAPI()
app.include_router(router)
app.state.database = database
@app.on_event("startup")
async def startup() -> None:
database_ = app.state.database
if not database_.is_connected:
await database_.connect()
@app.on_event("shutdown")
async def shutdown() -> None:
database_ = app.state.database
if database_.is_connected:
await database_.disconnect()
return app