aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSergei Trofimov <sergei.trofimov@arm.com>2018-03-16 15:44:00 +0000
committerMarc Bonnici <marc.bonnici@arm.com>2018-03-19 09:06:21 +0000
commitc0049d0a8637669b7fa4618807144a1e9617a470 (patch)
tree97dc65e4c8c577dc13b2194d7b74247796bec31b
parentf946f1383831df9a748f88540cc30e2695286f2d (diff)
fw/job: only finalize if initialized
Only run finalize() for a job if initialize has succeed. finalize() should be able to assume that initialize() has succeed, without needing to check that that file have been created, variables set, etc.
-rw-r--r--wa/framework/job.py8
1 files changed, 8 insertions, 0 deletions
diff --git a/wa/framework/job.py b/wa/framework/job.py
index e41aca9e..6d137b7b 100644
--- a/wa/framework/job.py
+++ b/wa/framework/job.py
@@ -28,6 +28,10 @@ class Job(object):
def status(self):
return self._status
+ @property
+ def has_been_initialized(self):
+ return self._has_been_initialized
+
@status.setter
def status(self, value):
self._status = value
@@ -43,6 +47,7 @@ class Job(object):
self.output = None
self.run_time = None
self.retries = 0
+ self._has_been_initialized = False
self._status = Status.NEW
def load(self, target, loader=pluginloader):
@@ -67,6 +72,7 @@ class Job(object):
self.workload.logger.context = context
self.workload.initialize(context)
self.set_status(Status.PENDING)
+ self._has_been_initialized = True
context.update_job_state(self)
def configure_augmentations(self, context, pm):
@@ -135,6 +141,8 @@ class Job(object):
self.workload.teardown(context)
def finalize(self, context):
+ if not self._has_been_initialized:
+ return
if not context.tm.is_responsive:
self.logger.info('Target unresponsive; not finalizing.')
return