dm1sh c40a1b4f92
FInished work
(Too lazy to split by commits)
2023-09-21 20:41:56 +03:00

38 lines
705 B
Python

from contextlib import asynccontextmanager
import datetime
from fastapi import FastAPI
import schedule
from . import models, router
from .database import engine
from .scheduler import run_continuously, run_threaded
from .job import job
from .config import REFETCH_PERIOD_H
models.Base.metadata.create_all(bind=engine)
start_stamp = datetime.datetime.now()
async def lifespan(app: FastAPI):
schedule.every(REFETCH_PERIOD_H).hours.do(job)
stop_run_continuously = run_continuously()
run_threaded(job)
yield
stop_run_continuously()
app = FastAPI(lifespan=lifespan)
app.include_router(router.router)
@app.get('/')
def root():
return {
"up_since": start_stamp
}