X-Git-Url: https://gerrit.opnfv.org/gerrit/gitweb?a=blobdiff_plain;ds=sidebyside;f=yardstick%2Fbenchmark%2Frunners%2Fsequence.py;h=fe53412ca0ac677b86d1a44ea06e39e1b87d24f0;hb=290819311d37937e24907d956f1b5de45b06870c;hp=a410eea0ef56006d9ac7161982bc9469906ad76f;hpb=2e1094d4aee93180126d3ce86db3cc7df2e87bc5;p=yardstick.git diff --git a/yardstick/benchmark/runners/sequence.py b/yardstick/benchmark/runners/sequence.py index a410eea0e..fe53412ca 100644 --- a/yardstick/benchmark/runners/sequence.py +++ b/yardstick/benchmark/runners/sequence.py @@ -1,11 +1,20 @@ -############################################################################## -# Copyright (c) 2015 Ericsson AB and others. +# Copyright 2014: Mirantis Inc. +# All Rights Reserved. # -# All rights reserved. This program and the accompanying materials -# are made available under the terms of the Apache License, Version 2.0 -# which accompanies this distribution, and is available at -# http://www.apache.org/licenses/LICENSE-2.0 -############################################################################## +# Licensed under the Apache License, Version 2.0 (the "License"); you may +# not use this file except in compliance with the License. You may obtain +# a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT +# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the +# License for the specific language governing permissions and limitations +# under the License. + +# yardstick comment: this is a modified copy of +# rally/rally/benchmark/runners/constant.py '''A runner that every run changes a specified input value to the scenario. The input value in the sequence is specified in a list in the input file. @@ -22,7 +31,8 @@ from yardstick.benchmark.runners import base LOG = logging.getLogger(__name__) -def _worker_process(queue, cls, method_name, scenario_cfg, context_cfg): +def _worker_process(queue, cls, method_name, scenario_cfg, + context_cfg, aborted): sequence = 1 @@ -95,7 +105,7 @@ def _worker_process(queue, cls, method_name, scenario_cfg, context_cfg): sequence += 1 - if errors: + if (errors and sla_action is None) or aborted.is_set(): break benchmark.teardown() @@ -125,5 +135,6 @@ class SequenceRunner(base.Runner): def _run_benchmark(self, cls, method, scenario_cfg, context_cfg): self.process = multiprocessing.Process( target=_worker_process, - args=(self.result_queue, cls, method, scenario_cfg, context_cfg)) + args=(self.result_queue, cls, method, scenario_cfg, + context_cfg, self.aborted)) self.process.start()