diff --git a/webservice/webservice.py b/webservice/webservice.py index 4b26e03b961875ddfb2c2518e906a56addd60b00..6bbeeeeef7db847c59b15030f576c176387e8d29 100644 --- a/webservice/webservice.py +++ b/webservice/webservice.py @@ -513,13 +513,22 @@ async def run_action(job_db, cmd, mode, proposal, run, rid) -> str: rstr = stdout.decode() for r in rstr.split("\n"): - if "Submitted job:" in r: - _, jobid = r.split(":") - c.execute( - "INSERT INTO jobs VALUES (?, ?, ?, ?, 'PD', ?, ?, ?)", - (rid, jobid.strip(), proposal, run, - datetime.now().isoformat(), cmd[3], cmd[4]) - ) + if "Submitted the following SLURM jobs:" in r: + _, jobids = r.split(":") + + jobs = [] + for jobid in jobids.split(','): + jobs.append((rid, + jobid.strip(), + proposal, + run, + datetime.now().isoformat(), + cmd[3], + cmd[4]) + ) + c.executemany( + "INSERT INTO jobs VALUES (?, ?, ?, ?, 'PD', ?, ?, ?)", + jobs) job_db.commit() else: # mode == "sim"