diff options
author | Mark Beierl <mark.beierl@emc.com> | 2016-05-11 10:54:48 -0600 |
---|---|---|
committer | Mark Beierl <mark.beierl@emc.com> | 2016-05-11 11:23:48 -0600 |
commit | 12d0fb066321f5503128b4babd79a3efd369fb07 (patch) | |
tree | 2844b2f7ef2e7441d0d7ce731abd987f89c38646 /storperf | |
parent | f250f3e2eb01e88adcf2f9f3c01d898ce2e5f5a9 (diff) |
Job Run Metadata
Add the ability to store arbitrary metadata about the job for
later reporting
Change-Id: If7f1d0a69111567d69db865baec6c20f9a1f494f
Signed-off-by: Mark Beierl <mark.beierl@emc.com>
Diffstat (limited to 'storperf')
-rw-r--r-- | storperf/storperf_master.py | 11 | ||||
-rw-r--r-- | storperf/test_executor.py | 4 |
2 files changed, 8 insertions, 7 deletions
diff --git a/storperf/storperf_master.py b/storperf/storperf_master.py index b678bc8..33f0819 100644 --- a/storperf/storperf_master.py +++ b/storperf/storperf_master.py @@ -283,7 +283,7 @@ class StorPerfMaster(object): self._heat_client.stacks.delete(stack_id=self.stack_id) sleep(2) - def execute_workloads(self): + def execute_workloads(self, metadata={}): if (self.stack_id is None): raise ParameterError("ERROR: Stack does not exist") @@ -305,11 +305,13 @@ class StorPerfMaster(object): self._test_executor.slaves = slaves job_id = self._test_executor.execute() - params = {} + + params = metadata params['agent_count'] = self.agent_count params['public_network'] = self.public_network params['volume_size'] = self.volume_size self.job_db.record_workload_params(job_id, params) + return job_id def terminate_workloads(self): @@ -319,6 +321,9 @@ class StorPerfMaster(object): graphite_db = GraphiteDB() return graphite_db.fetch_averages(job_id) + def fetch_metadata(self, job_id): + return self.job_db.fetch_workload_params(job_id) + def _setup_slave(self, slave): logger = logging.getLogger(__name__ + ":" + slave) @@ -387,7 +392,7 @@ class StorPerfMaster(object): def _attach_to_openstack(self): time_since_last_auth = datetime.now() - self._last_openstack_auth - print time_since_last_auth.total_seconds() + if (self._cinder_client is None or time_since_last_auth.total_seconds() > 600): self._last_openstack_auth = datetime.now() diff --git a/storperf/test_executor.py b/storperf/test_executor.py index 7fdf741..d1ad3ca 100644 --- a/storperf/test_executor.py +++ b/storperf/test_executor.py @@ -207,7 +207,3 @@ class TestExecutor(object): self.job_db.end_workload(workload) self.logger.info("Ended " + workload.fullname) - - def fetch_workloads(self, job, workload_name=""): - self.job_db.job_id = job - return self.job_db.fetch_workloads(workload_name) |