summaryrefslogtreecommitdiffstats
path: root/storperf
diff options
context:
space:
mode:
authormbeierl <mark.beierl@dell.com>2017-01-30 12:14:02 -0500
committermbeierl <mark.beierl@dell.com>2017-01-30 12:14:02 -0500
commit83e2fb154a4e89901b57cfca1931167898a2833f (patch)
treee890e5f3b305a64145b38bb68bbfe1b43402d46b /storperf
parentd6a4c32eeb15b24aa3079bb404ac79cffeacf6ff (diff)
Make it easier to see what's happening in Jenkins
Change-Id: I3ac727faa98c1e87dcd9522c0063ca6b251c62b4 Signed-off-by: mbeierl <mark.beierl@dell.com>
Diffstat (limited to 'storperf')
-rw-r--r--storperf/test_executor.py29
1 files changed, 24 insertions, 5 deletions
diff --git a/storperf/test_executor.py b/storperf/test_executor.py
index cda6c78..e6f0784 100644
--- a/storperf/test_executor.py
+++ b/storperf/test_executor.py
@@ -42,6 +42,7 @@ class TestExecutor(object):
self.start_time = None
self.end_time = None
self.current_workload = None
+ self.workload_status = {}
self._queue_depths = [1, 4, 8]
self._block_sizes = [512, 4096, 16384]
self.event_listeners = set()
@@ -188,13 +189,17 @@ class TestExecutor(object):
return terminated_hosts
def execution_status(self, job_id):
- if self.job_db.job_id != job_id:
- return "Completed"
- if (self._terminated is False):
- return "Running"
+ result = {}
+ status = "Completed"
- return "Completed"
+ if self.job_db.job_id == job_id and self._terminated is False:
+ status = "Running"
+
+ result['Status'] = status
+ result['Workloads'] = self.workload_status
+
+ return result
def execute_workloads(self):
self._terminated = False
@@ -205,6 +210,18 @@ class TestExecutor(object):
self.start_time = time.time()
+ self.workload_status = {}
+ # Prepare stats list
+ for workload_module in self.workload_modules:
+ workload_name = getattr(workload_module, "__name__")
+ blocksizes = self._block_sizes
+ iodepths = self._queue_depths
+ for blocksize in blocksizes:
+ for iodepth in iodepths:
+ name = '%s.%s.queue-depth.%s.block-size.%s' % \
+ (self.job_db.job_id, workload_name, iodepth, blocksize)
+ self.workload_status[name] = "Pending"
+
for workload_module in self.workload_modules:
workload_name = getattr(workload_module, "__name__")
self.logger.info("Starting workload %s" % (workload_name))
@@ -238,6 +255,7 @@ class TestExecutor(object):
blocksize))
self.logger.info("Starting run %s" % self.current_workload)
+ self.workload_status[self.current_workload] = "Running"
scheduler = sched.scheduler(time.time, time.sleep)
if self.deadline is not None \
@@ -278,6 +296,7 @@ class TestExecutor(object):
self.logger.info("Completed run %s" %
self.current_workload)
+ self.workload_status[self.current_workload] = "Completed"
self._workload_executors = []
self.current_workload = None