Skip to content
Snippets Groups Projects
Commit a87bc770 authored by Robert Goldmann's avatar Robert Goldmann
Browse files

use database url from settings

parent 45b9d0bb
Branches
Tags
No related merge requests found
......@@ -4,6 +4,7 @@ from fastapi import Security, HTTPException
from fastapi.security import APIKeyHeader
from starlette.status import HTTP_403_FORBIDDEN
from Settings import SETTINGS
from logic.databaseNew.Database import SessionLocal
......@@ -19,6 +20,6 @@ API_KEY_HEADER = APIKeyHeader(name='apiKey')
async def check_api_key(apiKey: str = Security(API_KEY_HEADER)):
from main import API_KEY
if not secrets.compare_digest(API_KEY, apiKey):
expectedApiKey = SETTINGS['api']['key']
if not secrets.compare_digest(expectedApiKey, apiKey):
raise HTTPException(status_code=HTTP_403_FORBIDDEN, detail='apiKey invalid')
import json
with open('../settings.json', 'r', encoding='UTF-8') as f:
SETTINGS = json.load(f)
......@@ -2,10 +2,13 @@ from sqlalchemy import create_engine
from sqlalchemy.ext.declarative import declarative_base
from sqlalchemy.orm import sessionmaker
SQLALCHEMY_DATABASE_URL = 'sqlite:///../../storageLeaf_new.db'
from Settings import SETTINGS
databasePath = SETTINGS['database']['databasePath']
databaseUrl = f'sqlite:///{databasePath}'
engine = create_engine(
SQLALCHEMY_DATABASE_URL, connect_args={'check_same_thread': False}
databaseUrl, connect_args={'check_same_thread': False}
)
SessionLocal = sessionmaker(autocommit=False, autoflush=False, bind=engine)
......
......@@ -4,6 +4,7 @@ import uvicorn
from fastapi import FastAPI
from starlette.responses import RedirectResponse, JSONResponse
from Settings import SETTINGS
from logic import Constants
from logic.databaseNew import Models
from logic.databaseNew.Database import engine
......@@ -15,11 +16,6 @@ Models.Base.metadata.create_all(bind=engine)
with open('version.json', 'r', encoding='UTF-8') as f:
versionInfo = json.load(f)['version']
with open('../settings.json', 'r', encoding='UTF-8') as f:
settings = json.load(f)
API_KEY = settings['api']['key']
app = FastAPI(title=Constants.APP_NAME,
version=versionInfo['name'],
description='The StorageLeaf API')
......@@ -36,4 +32,4 @@ async def version():
return JSONResponse(content=versionInfo)
if __name__ == '__main__':
uvicorn.run(app, host=settings['server']['listen'], port=settings['server']['port'])
uvicorn.run(app, host=SETTINGS['server']['listen'], port=SETTINGS['server']['port'])
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment