feat(auth): call ensure_default_admin on startup

This commit is contained in:
2026-08-06 16:23:31 +00:00
parent d61a9ee17a
commit 75dd560baf
+18 -4
View File
@@ -1,7 +1,10 @@
from contextlib import asynccontextmanager
from fastapi import FastAPI from fastapi import FastAPI
from fastapi.middleware.cors import CORSMiddleware from fastapi.middleware.cors import CORSMiddleware
from app.database import Base, engine from app.auth import ensure_default_admin
from app.database import Base, engine, SessionLocal
from app.routes.auth import router as auth_router from app.routes.auth import router as auth_router
from app.routers.inventory import router as inventory_router from app.routers.inventory import router as inventory_router
from app.routers.relations import router as relations_router from app.routers.relations import router as relations_router
@@ -10,10 +13,21 @@ from app.routers.jobs import router as jobs_router
from app.routers.objects import router as objects_router from app.routers.objects import router as objects_router
from app.routers.health import router as health_router from app.routers.health import router as health_router
# Create all tables on startup
Base.metadata.create_all(bind=engine)
app = FastAPI(title="NetMapper API", version="0.1.0") @asynccontextmanager
async def lifespan(app: FastAPI):
# Create all tables
Base.metadata.create_all(bind=engine)
# Seed default users if DB is empty
db = SessionLocal()
try:
ensure_default_admin(db)
finally:
db.close()
yield
app = FastAPI(title="NetMapper API", version="0.1.0", lifespan=lifespan)
app.add_middleware( app.add_middleware(
CORSMiddleware, CORSMiddleware,