Add job processing system with streaming endpoint
Introduced a `processing` router to handle job streaming using server-sent events. Added `Jobs` and `JobStatus` models for managing job-related data, along with database creation logic. Updated the `sample` router to create new job entries during experiment creation.
This commit is contained in:
@ -15,6 +15,7 @@ from app.routers import (
|
||||
logistics,
|
||||
auth,
|
||||
sample,
|
||||
processing,
|
||||
)
|
||||
from app.database import Base, engine, SessionLocal
|
||||
from app.routers.protected_router import protected_router
|
||||
@ -119,6 +120,8 @@ async def lifespan(app: FastAPI):
|
||||
db = SessionLocal()
|
||||
try:
|
||||
if environment == "prod":
|
||||
Base.metadata.drop_all(bind=engine)
|
||||
Base.metadata.create_all(bind=engine)
|
||||
from sqlalchemy.engine import reflection
|
||||
|
||||
inspector = reflection.Inspector.from_engine(engine)
|
||||
@ -143,8 +146,8 @@ async def lifespan(app: FastAPI):
|
||||
load_slots_data(db)
|
||||
else: # dev or test environments
|
||||
print(f"{environment.capitalize()} environment: Regenerating database.")
|
||||
# Base.metadata.drop_all(bind=engine)
|
||||
# Base.metadata.create_all(bind=engine)
|
||||
Base.metadata.drop_all(bind=engine)
|
||||
Base.metadata.create_all(bind=engine)
|
||||
# from sqlalchemy.engine import reflection
|
||||
# from app.models import ExperimentParameters # adjust the import as needed
|
||||
# inspector = reflection.Inspector.from_engine(engine)
|
||||
@ -194,6 +197,7 @@ app.include_router(puck.router, prefix="/pucks", tags=["pucks"])
|
||||
app.include_router(spreadsheet.router, tags=["spreadsheet"])
|
||||
app.include_router(logistics.router, prefix="/logistics", tags=["logistics"])
|
||||
app.include_router(sample.router, prefix="/samples", tags=["samples"])
|
||||
app.include_router(processing.router, prefix="/processing", tags=["processing"])
|
||||
|
||||
app.mount("/images", StaticFiles(directory="images"), name="images")
|
||||
|
||||
|
Reference in New Issue
Block a user