lava_wait_jobs.py: Fetch artifacts for finished jobs immediately
Intention is to parallelize waiting for job completion and fetching
artifacts, i.e. as soon as a complete job is detected, fetch artifacts
for it, instead of spending time waiting for other jobs to complete
first.
Signed-off-by: Paul Sokolovsky <paul.sokolovsky@linaro.org>
Change-Id: I7bbfb31516ad53fe119f1775b5d795ffd07378bc
diff --git a/tfm_ci_pylib/lava_rpc_connector.py b/tfm_ci_pylib/lava_rpc_connector.py
index f9547e5..1e27932 100644
--- a/tfm_ci_pylib/lava_rpc_connector.py
+++ b/tfm_ci_pylib/lava_rpc_connector.py
@@ -296,7 +296,7 @@
break
return self.scheduler.job_health(job_id)["job_health"]
- def block_wait_for_jobs(self, job_ids, timeout, poll_freq=10):
+ def block_wait_for_jobs(self, job_ids, timeout, poll_freq=10, callback=None):
""" Wait for multiple LAVA job ids to finish and return finished list """
start_t = int(time.time())
@@ -331,6 +331,8 @@
cur_status['health'],
len(job_ids) - len(finished_jobs)
)
+ if callback:
+ callback(job_id, cur_status)
if len(job_ids) == len(finished_jobs):
break
else: