Add dataset, slurm_id, and FAILED status to models
Enhanced the models with new fields: a dataset field for Experiment Parameters and a slurm_id for Jobs. Introduced a FAILED status for the JobStatus enum. Updated functionality to handle datasets and trigger job creation based on dataset status.
This commit is contained in:
@ -41,6 +41,7 @@ async def job_event_generator(db: Session):
|
||||
experiment_parameters=experiment.beamline_parameters
|
||||
if experiment
|
||||
else None,
|
||||
slurm_id=None,
|
||||
)
|
||||
|
||||
job_items.append(job_item)
|
||||
@ -75,13 +76,14 @@ def update_jobs_status(payload: JobsUpdate, db: Session = Depends(get_db)):
|
||||
|
||||
# Update the status
|
||||
job.status = payload.status
|
||||
job.slurm_id = payload.slurm_id
|
||||
# Optionally update 'updated_at'
|
||||
from sqlalchemy import func
|
||||
from datetime import datetime
|
||||
|
||||
job.updated_at = func.now()
|
||||
job.updated_at = datetime.now()
|
||||
|
||||
db.commit()
|
||||
db.refresh(job)
|
||||
|
||||
# Return the updated job's info as response
|
||||
return JobsUpdate(job_id=job.id, status=job.status)
|
||||
return JobsUpdate(job_id=job.id, status=job.status, slurm_id=job.slurm_id)
|
||||
|
Reference in New Issue
Block a user