From: Ondrej Lichtner <olichtne(a)redhat.com>
The level attribute of a Job indicates it's importance level with
regards to results and can be used when filtering results.
Setting the default result level of a job to DEBUG.
Overriding the JobResult level getter to return the level of the
associated Job object.
Signed-off-by: Ondrej Lichtner <olichtne(a)redhat.com>
---
lnst/Controller/Job.py | 13 ++++++++++++-
lnst/Controller/RecipeResults.py | 6 +++++-
2 files changed, 17 insertions(+), 2 deletions(-)
diff --git a/lnst/Controller/Job.py b/lnst/Controller/Job.py
index 6cd4a15..4416d9a 100644
--- a/lnst/Controller/Job.py
+++ b/lnst/Controller/Job.py
@@ -15,6 +15,7 @@ import logging
import signal
from lnst.Common.JobError import JobError
from lnst.Common.TestModule import BaseTestModule
+from lnst.Controller.RecipeResults import ResultLevel
class Job(object):
"""Tester facing Job API
@@ -27,12 +28,14 @@ class Job(object):
print job.stdout
"""
def __init__(self, namespace, what,
- expect=True, json=False, desc=None):
+ expect=True, json=False, desc=None,
+ level=ResultLevel.DEBUG):
self._what = what
self._expect = expect
self._json = json
self._netns = namespace
self._desc = desc
+ self._level = level
self._res = None
@@ -109,6 +112,14 @@ class Job(object):
except:
return None
+ @property
+ def level(self):
+ return self._level
+
+ @level.setter
+ def level(self, value):
+ self._level = value
+
@property
def passed(self):
"""Indicates whether or not the Job passed
diff --git a/lnst/Controller/RecipeResults.py b/lnst/Controller/RecipeResults.py
index 2dcafdc..97308bf 100644
--- a/lnst/Controller/RecipeResults.py
+++ b/lnst/Controller/RecipeResults.py
@@ -62,6 +62,10 @@ class JobResult(BaseResult):
def job(self):
return self._job
+ @BaseResult.level.getter
+ def level(self):
+ return self.job.level
+
class JobStartResult(JobResult):
"""Generated automatically when a Job is succesfully started on a
slave"""
@BaseResult.short_desc.getter
@@ -74,7 +78,7 @@ class JobFinishResult(JobResult):
success depends on the Job passed value and returns the data returned as
a result of the Job."""
def __init__(self, job):
- super(JobFinishResult, self).__init__(job, True)
+ super(JobFinishResult, self).__init__(job, None)
@BaseResult.success.getter
def success(self):
--
2.17.0