Bot_Development / app.py
dsmultimedika's picture
improve docker
d075fb6
raw
history blame
1.17 kB
from fastapi.applications import FastAPI
from api.router import health, topic, user, bot, trial, role, reader
from fastapi.middleware.cors import CORSMiddleware
from api.events import register_events
from utils.utils import pipe
import uvicorn
def create_instance() -> FastAPI:
return FastAPI()
def add_middleware(app: FastAPI) -> FastAPI:
app.add_middleware(
CORSMiddleware,
allow_origins=["*"],
allow_credentials=True,
allow_methods=["*"],
allow_headers=["*"],
)
return app
def init_database(app: FastAPI) -> FastAPI:
return app
def register_routers(app: FastAPI) -> FastAPI:
app.include_router(user.router)
app.include_router(topic.router)
app.include_router(bot.router)
app.include_router(trial.router)
app.include_router(role.router)
app.include_router(reader.router)
app.include_router(health.router)
return app
def init_app() -> FastAPI:
app: FastAPI = pipe(
create_instance(), add_middleware, init_database, register_events, register_routers
)
return app
app = init_app()
if __name__ == '__main__':
uvicorn.run(app, loop = 'asyncio')