From ae52188bccbc2b77ebd44c423d5ee343b6c7b9f8 Mon Sep 17 00:00:00 2001 From: Michael Woods Date: Sat, 20 Dec 2025 22:14:06 -0500 Subject: [PATCH] DB works now. --- packetserver/http/server.py | 10 ++++++---- packetserver/runners/http_server.py | 4 ++-- 2 files changed, 8 insertions(+), 6 deletions(-) diff --git a/packetserver/http/server.py b/packetserver/http/server.py index 2df7d9f..7bf8ab4 100644 --- a/packetserver/http/server.py +++ b/packetserver/http/server.py @@ -21,11 +21,13 @@ app = FastAPI( version="0.1.0", ) -# Mount static files -app.mount("/static", StaticFiles(directory="packetserver/http/static"), name="static") +# New static (relative to this file's location – always works) +from pathlib import Path -# Templates -templates = Jinja2Templates(directory="packetserver/http/templates") +BASE_DIR = Path(__file__).parent.resolve() + +app.mount("/static", StaticFiles(directory=BASE_DIR / "static"), name="static") +templates = Jinja2Templates(directory=BASE_DIR / "templates") security = HTTPBasic() diff --git a/packetserver/runners/http_server.py b/packetserver/runners/http_server.py index b752040..22e63f4 100644 --- a/packetserver/runners/http_server.py +++ b/packetserver/runners/http_server.py @@ -22,7 +22,7 @@ _db = None _connection = None -def open_database(db_arg: str) -> ZODB.DB.DB: +def open_database(db_arg: str) -> ZODB.DB: """ Open a ZODB database from either a local FileStorage path or ZEO address. Reuses the same logic as http_user_manager.py. @@ -45,7 +45,7 @@ def open_database(db_arg: str) -> ZODB.DB.DB: def get_db_connection(): """Helper used in http/server.py dependency (get_current_http_user)""" global _connection - if _connection is None or _connection.closed: + if _connection is None or getattr(_connection, "opened", None) is None: if _db is None: raise RuntimeError("Database not opened – run the runner properly") _connection = _db.open()