aboutsummaryrefslogtreecommitdiffstats
path: root/yardstick/benchmark
diff options
context:
space:
mode:
authorJing Lu <lvjing5@huawei.com>2017-10-18 05:59:24 +0000
committerGerrit Code Review <gerrit@opnfv.org>2017-10-18 05:59:24 +0000
commitff9f105af636389a7c66dcabf22fb73abed0a833 (patch)
tree03642e943c4168759549085196e74929dc47b3b9 /yardstick/benchmark
parent32559970a63812dde84efe12d124427f4ef197c3 (diff)
parenta5d0491b47fd1bab27fa603353861ea8eaba8da5 (diff)
Merge "Fio: support input job file configuration"
Diffstat (limited to 'yardstick/benchmark')
-rw-r--r--yardstick/benchmark/scenarios/storage/fio.py17
1 files changed, 16 insertions, 1 deletions
diff --git a/yardstick/benchmark/scenarios/storage/fio.py b/yardstick/benchmark/scenarios/storage/fio.py
index 98fe26973..125bc7ed4 100644
--- a/yardstick/benchmark/scenarios/storage/fio.py
+++ b/yardstick/benchmark/scenarios/storage/fio.py
@@ -32,6 +32,10 @@ class Fio(base.Scenario):
type: string
unit: na
default: None
+ job_file_config - content of job configuration file
+ type: list
+ unit: na
+ default: None
directory - mount directoey for test volume
type: string
unit: na
@@ -90,15 +94,26 @@ class Fio(base.Scenario):
self.client.wait(timeout=600)
self.job_file = self.options.get("job_file", None)
+ config_lines = self.options.get("job_file_config", None)
if self.job_file:
self.job_file_script = pkg_resources.resource_filename(
"yardstick.resources", 'files/' + self.job_file)
- # copy script to host
+ # copy job file to host
self.client._put_file_shell(self.job_file_script, '~/job_file.ini')
+ elif config_lines:
+ LOG.debug("Job file configuration received, Fio job file will be created.")
+ self.job_file = 'tmp_job_file.ini'
+ self.job_file_script = pkg_resources.resource_filename(
+ "yardstick.resources", 'files/' + self.job_file)
+ with open(self.job_file_script, 'w') as f:
+ f.write('\n'.join(str(line) for line in config_lines))
+ # copy job file to host
+ self.client._put_file_shell(self.job_file_script, '~/job_file.ini')
else:
+ LOG.debug("No job file configuration received, Fio will use parameters.")
self.target_script = pkg_resources.resource_filename(
"yardstick.benchmark.scenarios.storage", Fio.TARGET_SCRIPT)