From 2cad2dbb10fc84a9512b86d826fb33c87cce88db Mon Sep 17 00:00:00 2001 From: Sergei Trofimov Date: Tue, 29 May 2018 11:36:05 +0100 Subject: [PATCH] fw/execution: implement abnormal job status signals Implement signals for failed/aborted jobs. --- wa/framework/execution.py | 3 +++ 1 file changed, 3 insertions(+) diff --git a/wa/framework/execution.py b/wa/framework/execution.py index 03a1691b..c38ed53b 100644 --- a/wa/framework/execution.py +++ b/wa/framework/execution.py @@ -614,12 +614,14 @@ class Runner(object): 'Max retries exceeded.' self.logger.error(msg.format(job.id, job.iteration, job.status)) self.context.failed_jobs += 1 + self.send(signal.JOB_FAILED) else: # status not in retry_on_status self.logger.info('Job completed with status {}'.format(job.status)) if job.status != 'ABORTED': self.context.successful_jobs += 1 else: self.context.failed_jobs += 1 + self.send(signal.JOB_ABORTED) def retry_job(self, job): retry_job = Job(job.spec, job.iteration, self.context) @@ -627,6 +629,7 @@ class Runner(object): retry_job.retries = job.retries + 1 retry_job.set_status(Status.PENDING) self.context.job_queue.insert(0, retry_job) + self.send(signal.JOB_RESTARTED) def send(self, s): signal.send(s, self, self.context)