diff options
Diffstat (limited to 'yardstick/benchmark')
-rw-r--r-- | yardstick/benchmark/runners/duration.py | 3 | ||||
-rw-r--r-- | yardstick/benchmark/runners/proxduration.py | 3 | ||||
-rw-r--r-- | yardstick/benchmark/scenarios/base.py | 3 | ||||
-rw-r--r-- | yardstick/benchmark/scenarios/networking/vnf_generic.py | 3 |
4 files changed, 10 insertions, 2 deletions
diff --git a/yardstick/benchmark/runners/duration.py b/yardstick/benchmark/runners/duration.py index 14fd8bb47..55c3690fd 100644 --- a/yardstick/benchmark/runners/duration.py +++ b/yardstick/benchmark/runners/duration.py @@ -106,7 +106,8 @@ def _worker_process(queue, cls, method_name, scenario_cfg, sequence += 1 - if (errors and sla_action is None) or time.time() > timeout or aborted.is_set(): + if ((errors and sla_action is None) or time.time() > timeout + or aborted.is_set() or benchmark.is_ended()): LOG.info("Worker END") break diff --git a/yardstick/benchmark/runners/proxduration.py b/yardstick/benchmark/runners/proxduration.py index 61a468fd3..e217904b9 100644 --- a/yardstick/benchmark/runners/proxduration.py +++ b/yardstick/benchmark/runners/proxduration.py @@ -112,7 +112,8 @@ def _worker_process(queue, cls, method_name, scenario_cfg, sequence += 1 - if (errors and sla_action is None) or time.time() > timeout or aborted.is_set(): + if ((errors and sla_action is None) or time.time() > timeout + or aborted.is_set() or benchmark.is_ended()): LOG.info("Worker END") break diff --git a/yardstick/benchmark/scenarios/base.py b/yardstick/benchmark/scenarios/base.py index 90a87ac29..1737bb942 100644 --- a/yardstick/benchmark/scenarios/base.py +++ b/yardstick/benchmark/scenarios/base.py @@ -50,6 +50,9 @@ class Scenario(object): def run(self, *args): """Entry point for scenario classes, called from runner worker""" + def is_ended(self): + return False + def teardown(self): """Default teardown implementation for Scenario classes""" pass diff --git a/yardstick/benchmark/scenarios/networking/vnf_generic.py b/yardstick/benchmark/scenarios/networking/vnf_generic.py index 6d68c5e64..20fff61ed 100644 --- a/yardstick/benchmark/scenarios/networking/vnf_generic.py +++ b/yardstick/benchmark/scenarios/networking/vnf_generic.py @@ -63,6 +63,9 @@ class NetworkServiceTestCase(scenario_base.Scenario): self.bin_path = get_nsb_option('bin_path', '') self._mq_ids = [] + def is_ended(self): + return self.traffic_profile is not None and self.traffic_profile.is_ended() + def _get_ip_flow_range(self, ip_start_range): """Retrieve a CIDR first and last viable IPs |