X-Git-Url: https://gerrit.opnfv.org/gerrit/gitweb?a=blobdiff_plain;f=yardstick%2Fbenchmark%2Fscenarios%2Fcompute%2Fcyclictest.py;h=998463ef6073d6ce1a3f0a7ad0b97d964a38dcfe;hb=2bea82e39d62246552a9d6d49c74bbc32747f018;hp=a6c4d95cf88803eb6965a0cec48121c1611719ad;hpb=4a9465801b48c1042656d860b54621f30c6c1423;p=yardstick.git diff --git a/yardstick/benchmark/scenarios/compute/cyclictest.py b/yardstick/benchmark/scenarios/compute/cyclictest.py index a6c4d95cf..998463ef6 100644 --- a/yardstick/benchmark/scenarios/compute/cyclictest.py +++ b/yardstick/benchmark/scenarios/compute/cyclictest.py @@ -6,12 +6,16 @@ # which accompanies this distribution, and is available at # http://www.apache.org/licenses/LICENSE-2.0 ############################################################################## -import pkg_resources +from __future__ import absolute_import +from __future__ import print_function + import logging -import json +import os import re import time -import os + +import pkg_resources +from oslo_serialization import jsonutils import yardstick.ssh as ssh from yardstick.benchmark.scenarios import base @@ -81,24 +85,17 @@ class Cyclictest(base.Scenario): def _connect_host(self): host = self.context_cfg["host"] - user = host.get("user", "root") - ip = host.get("ip", None) - key_filename = host.get("key_filename", "~/.ssh/id_rsa") - LOG.debug("user:%s, host:%s", user, ip) - self.host = ssh.SSH(user, ip, key_filename=key_filename) + self.host = ssh.SSH.from_node(host, defaults={"user": "root"}) self.host.wait(timeout=600) def _connect_guest(self): host = self.context_cfg["host"] - user = host.get("user", "root") - ip = host.get("ip", None) - ssh_port = host.get("ssh_port", 5555) - key_filename = host.get("key_filename", "~/.ssh/id_rsa") - - LOG.debug("user:%s, host:%s", user, ip) - self.guest = ssh.SSH(user, ip, port=ssh_port, - key_filename=key_filename) + # why port 5555? + self.guest = ssh.SSH.from_node(host, + defaults={ + "user": "root", "ssh_port": 5555 + }) self.guest.wait(timeout=600) def _run_setup_cmd(self, client, cmd): @@ -137,7 +134,7 @@ class Cyclictest(base.Scenario): self._connect_guest() def setup(self): - '''scenario setup''' + """scenario setup""" setup_options = self.scenario_cfg["setup_options"] host_setup_seqs = setup_options["host_setup_seqs"] guest_setup_seqs = setup_options["guest_setup_seqs"] @@ -154,28 +151,29 @@ class Cyclictest(base.Scenario): self.target_script = pkg_resources.resource_filename( "yardstick.benchmark.scenarios.compute", Cyclictest.TARGET_SCRIPT) - self.guest.run("cat > ~/cyclictest_benchmark.sh", - stdin=open(self.target_script, "rb")) + self.guest._put_file_shell( + self.target_script, '~/cyclictest_benchmark.sh') self.setup_done = True def run(self, result): """execute the benchmark""" - default_args = "-m -n -q" + default_args = "-m -n -q --notrace" if not self.setup_done: self.setup() options = self.scenario_cfg["options"] affinity = options.get("affinity", 1) + breaktrace = options.get("breaktrace", 1000) interval = options.get("interval", 1000) priority = options.get("priority", 99) loops = options.get("loops", 1000) threads = options.get("threads", 1) histogram = options.get("histogram", 90) - cmd_args = "-a %s -i %s -p %s -l %s -t %s -h %s %s" \ - % (affinity, interval, priority, loops, + cmd_args = "-a %s -b %s -i %s -p %s -l %s -t %s -h %s %s" \ + % (affinity, breaktrace, interval, priority, loops, threads, histogram, default_args) cmd = "bash cyclictest_benchmark.sh %s" % (cmd_args) LOG.debug("Executing command: %s", cmd) @@ -183,7 +181,7 @@ class Cyclictest(base.Scenario): if status: raise RuntimeError(stderr) - result.update(json.loads(stdout)) + result.update(jsonutils.loads(stdout)) if "sla" in self.scenario_cfg: sla_error = "" @@ -201,7 +199,7 @@ class Cyclictest(base.Scenario): def _test(): # pragma: no cover - '''internal test function''' + """internal test function""" key_filename = pkg_resources.resource_filename("yardstick.resources", "files/yardstick_key") ctx = { @@ -217,6 +215,7 @@ def _test(): # pragma: no cover options = { "affinity": 2, + "breaktrace": 1000, "interval": 100, "priority": 88, "loops": 10000, @@ -236,7 +235,8 @@ def _test(): # pragma: no cover cyclictest = Cyclictest(args, ctx) cyclictest.run(result) - print result + print(result) + if __name__ == '__main__': # pragma: no cover _test()