summaryrefslogtreecommitdiff
path: root/__main__.py
diff options
context:
space:
mode:
authorBotond Hende <nettingman@gmail.com>2024-08-25 16:30:51 +0200
committerBotond Hende <nettingman@gmail.com>2024-08-25 16:30:51 +0200
commitb3c35c2ca00106fe475d82baa580ee26ee64e1ba (patch)
treea75b346a884b08628c16e2b3263fc5a45faa7ad8 /__main__.py
parentb0cab01ab962e4a0f704012eac28786597726be1 (diff)
create/connect to database on startup
Diffstat (limited to '__main__.py')
-rw-r--r--__main__.py21
1 files changed, 20 insertions, 1 deletions
diff --git a/__main__.py b/__main__.py
index deacefa..7ae3047 100644
--- a/__main__.py
+++ b/__main__.py
@@ -1,9 +1,28 @@
+import os.path
+import sqlite3
+from pathlib import Path
+
+from contextlib import asynccontextmanager
from typing import Annotated
from fastapi import FastAPI, Depends, Request
from fastapi.security import OAuth2PasswordBearer, OAuth2PasswordRequestForm
-app = FastAPI()
+from .config import Config
+
+
+sq_con = None
+
+@asynccontextmanager
+async def lifespan(app: FastAPI):
+ db_dir = os.path.dirname(Config.DATABASE_PATH)
+ Path(db_dir).mkdir(parents=True, exist_ok=True)
+
+ sq_con = sqlite3.connect(Config.DATABASE_PATH)
+ yield
+
+
+app = FastAPI(lifespan=lifespan)
oauth2_scheme = OAuth2PasswordBearer(tokenUrl="token")