Age | Commit message (Collapse) | Author | Files | Lines |
|
JIRA: YARDSTICK-635
Change-Id: Ic27517714db9325e7a3b1ef623c49af61c36b2b5
Signed-off-by: tjuyinkanglin <14_ykl@tongji.edu.cn>
(cherry picked from commit 2fb95fbb9380ea7ce92dcb32cd2f0789b9f91bdc)
|
|
we need to be following defautl paramiko rules,
first use pkey, then key_filenames (autodetecting ~/.ssh/ keys),
then password
We have too much boilerplate redudant code everywhere, we need
to standardize on a factory function that takes a node dict.
Using Python3 ChainMap we can layer overrides and defaults.
VNF descriptors have to default key_filename, password to Python None.
The only way to do this is to omit key values if the variable is not
defined, this way the dict will not have the value and it will
default to Python None
Add python2 chainmap backport
Updated unittest mocking to use ssh.SSH.from_node
Change-Id: I80b0cb606e593b33e317c9e5e8ed0b74da591514
Signed-off-by: Ross Brattain <ross.b.brattain@intel.com>
(cherry picked from commit 99abbb424007da2e01762f3c040a39c0157cbe1f)
|
|
This allows calculating throughput in Gbps.
Add: test_pktgen.py
Change-Id: I7e2132ec71985c14570ef18b952b2264ebf7abbc
JIRA: YARKSTICK-611
Signed-off-by: Jing Zhang <jing.c.zhang@nokia.com>
(cherry picked from commit 639450d91ab409f70b6f119291197da40b1d5f0b)
|
|
Change-Id: I36d93eacab2470f90af5653104ad5c07853411bf
Signed-off-by: Ross Brattain <ross.b.brattain@intel.com>
(cherry picked from commit 4a16c5c592f48953d0b6678376f540b54135d51c)
|
|
|
|
Change-Id: Ib451d7883eb5df13cfe95477cea43c076ac0452a
Signed-off-by: Ross Brattain <ross.b.brattain@intel.com>
(cherry picked from commit 45f46d5220cbfa89224d55caf94a079fccd2679f)
|
|
This patch is used to add breaktrace option to monitor the latency
values while executing cyclictest test cases as a part of kvmfornfv
verify and daily jobs.
Change-Id: I035ea72a8946a9d3db37a6ee33ffbf3ca67834a2
Signed-off-by: Gundarapu Kalyan Reddy <reddyx.gundarapu@intel.com>
(cherry picked from commit 97c39be854022146b1c27fa2932bdc88a8781cf9)
|
|
JIRA: YARDSTICK-633
Change-Id: I65fd1ba11504dc61485f83c3bcc93bec4d41883b
Signed-off-by: tjuyinkanglin <14_ykl@tongji.edu.cn>
(cherry picked from commit 27cc0643cf93f4b44c12fbdfcc3e0841d46214c4)
|
|
|
|
JIRA: YARDSTICK-634
Change-Id: I46681c7e8afe391eef9c5309470028167e911950
Signed-off-by: rexlee8776 <limingjiang@huawei.com>
(cherry picked from commit 71bbbdb18b5f8621b8b4ed9aa0e4fcc1e8882085)
|
|
The original way to kill keystone service didn't work anymore.
this patch uses killall -u to kill keystone processes.
Change-Id: I553b716f17a5ab7e57630468517642a92f06dd27
Signed-off-by: JingLu5 <lvjing5@huawei.com>
(cherry picked from commit 909606466c50aab19017b6e6cedd3e213aff7c27)
|
|
|
|
Change-Id: I1b37cbf07e8858ca3e75bb74c57fe84485ff4989
Signed-off-by: Ross Brattain <ross.b.brattain@intel.com>
(cherry picked from commit 37f600566c56542999529da47299c4caf54d073a)
|
|
When running with multiple regions we need to specify
the region when we select the endpoint.
the region is specified in the OS_REGION_NAME env variable
Change-Id: I37853dd42f6d9013d4475b5e3b2b9f97b6bdc8d0
Signed-off-by: Ross Brattain <ross.b.brattain@intel.com>
(cherry picked from commit 90032ba61345752b014002dda629f84c42780e6c)
|
|
|
|
|
|
|
|
JIRA: YARDSTICK-632
When we use http dispatcher to output yardstick result.
It can upload data, but when we query the data, it get a KeyError.
Change-Id: I5410c207c68cff2621ff8184ae17daa4c286cea5
Signed-off-by: chenjiankun <chenjiankun1@huawei.com>
(cherry picked from commit 1f59f2e6769cc7ae6f3b73eb1ce8ee09f2929f72)
|
|
Change-Id: Iff40f7c938af0d7c148c708eed19095b140ccb8b
Signed-off-by: Ross Brattain <ross.b.brattain@intel.com>
(cherry picked from commit 6bdf476e43200fefb09a11ea1f6312ca8735fd52)
|
|
Change-Id: Ic930c59fcf3d7e53d385016051596b6563dca0d7
Signed-off-by: JingLu5 <lvjing5@huawei.com>
(cherry picked from commit 01261850ea2ea2cb92572c9cfcb2c64bfafe9cbe)
|
|
Change-Id: Ib38e94610a108ff7195cefdfaf048e0f4fd894e8
Signed-off-by: JingLu5 <lvjing5@huawei.com>
(cherry picked from commit 6604cb5f2d6e3c819cb8488f1ad3468184822cf9)
|
|
JIRA: YARDSTICK-620
In the patch, I separate python-setuptools from install.sh
and separate appdirs from requirements.txt because there will be
error when install them in virtualenv.
Also I will update the documentation when this patch merged;
Change-Id: I99a532d1851983775869e7c5e8e65fd0229e86df
Signed-off-by: chenjiankun <chenjiankun1@huawei.com>
(cherry picked from commit bb365d411d88a71871993b4ed803c2ffbbcb79bf)
|
|
JIRA: YARDSTICK-621
The storperf job status query in TC074 didn' work properly. The cause is the
"type: status" is not passed in the URL. This patch also update storperf VM
image to xenial.
Change-Id: Idd9f501416b24612f6045a57ba2a95e2ed3a9572
Signed-off-by: JingLu5 <lvjing5@huawei.com>
(cherry picked from commit b2fb23ca8ccc1acedaa9156552af4ba347f24103)
|
|
JIRA: YARDSTICK-620
Currently we recommend using docker to run yardstick.
And it is hard to use virtualenv to install yardstick.
So I modify install.sh in yardstick root path.
It will support using virtualenv to install yardstick(including API) in
linux.
In this patch, I make yardstick support read yardstick configuration
have priority over constants.
Change-Id: I9ea1241b228532a6497451e6c8f232173ddb783e
Signed-off-by: chenjiankun <chenjiankun1@huawei.com>
(cherry picked from commit b74d875134b988a26441d559a9e700aaa68d6a0c)
|
|
Currently Yardstick doesnt have any UI which gives detail analysis
of the test-results.
This commit generates a HTML page after the execution of a command
"yardstick report generate <task-ID> <TC-name>" which intern
can be executed after the execution of test-case.
Used: Highcharts.js for the graphs.
JIRA: YARDSTICK-280
Change-Id: Ic98cc348719f3922bff178f52e7944a4a931763a
Signed-off-by: Rajesh K <4k.rajesh@gmail.com>
(cherry picked from commit 25b21add71fcf7c2c795bd950b5117d69fac68fb)
|
|
|
|
return True
JIRA: YARDSTICK-600
Bugfix: netperf_bottleneck execute failed because is_same_heat_context return True
So it exit without warning.
I will remove the 'return True' from it.
Change-Id: I48d62bd15ec359e2121f236c48d9d349174f2c10
Signed-off-by: chenjiankun <chenjiankun1@huawei.com>
|
|
JIRA: YARDSTICK-573
Since the yardstick framework now has supported an improved node type context,
this patch adds support for VM vcpu pinning ability in the node type context.
It provides several scripts that can be used to configurate the controller and
compute nodes.
Change-Id: If2c6e7b1b85ff78b9d2a5997bf03bdc6877aaf74
Signed-off-by: JingLu5 <lvjing5@huawei.com>
(cherry picked from commit f138b480ea4c9954d107555d7a46ec3d4375653f)
|
|
|
|
JIRA: YARDSTICK-586
When run tc072, there is a bug: network_utilization: parse error, see the log:
ERROR ('network_utilization: parse error', [], [u'05:10:46', u'IFACE',
u'rxpck/s', u'txpck/s', u'rxkB/s', u'txkB/s', u'rxcmp/s',
u'txcmp/s', u'rxmcst/s', u'%ifutil'])
Traceback (most recent call last):
File
"/usr/local/lib/python2.7/dist-packages/yardstick/benchmark/runners/duration.py",
line 69, in _worker_process
method(data)
File
"/usr/local/lib/python2.7/dist-packages/yardstick/benchmark/scenarios/networking/netutilization.py",
line 191, in run
result.update(self._get_network_utilization())
File
"/usr/local/lib/python2.7/dist-packages/yardstick/benchmark/scenarios/networking/netutilization.py",
line 182, in _get_network_utilization
result = self._filtrate_result(raw_result)
File
"/usr/local/lib/python2.7/dist-packages/yardstick/benchmark/scenarios/networking/netutilization.py",
line 146, in _filtrate_result
fields, line)
RuntimeError: ('network_utilization: parse error', [], [u'05:10:46',
u'IFACE', u'rxpck/s', u'txpck/s', u'rxkB/s', u'txkB/s',
u'rxcmp/s', u'txcmp/s', u'rxmcst/s', u'%ifutil'])
Maybe the tool has some changes.
Change-Id: I6c4fe3fe9f749ec942fb5fbd799b8f4ab9a5c16c
Signed-off-by: chenjiankun <chenjiankun1@huawei.com>
|
|
JIRA: YARDSTICK-587
When run in https environment, there is a bug:
error: failed to deploy stack: '_init_() got an unexpected keyword argument 'ca_cert''
The reason is the key pass to Session() is cacert, but the key should be
verify.
Change-Id: Ia9fc1d7908c2fca9d827a5f64deac7cd333d5c07
Signed-off-by: chenjiankun <chenjiankun1@huawei.com>
(cherry picked from commit 747e3c5f8a882b07b6876aae61c84d05a8b832f4)
|
|
JIRA: YARDSTICK-585
In CI when run tc070, there is a error: Failed executing command: 'free -s 1 -c 10'
Here it is the log:
Traceback (most recent call last):
File
"/usr/local/lib/python2.7/dist-packages/yardstick/benchmark/runners/duration.py",
line 69, in _worker_process
method(data)
File
"/usr/local/lib/python2.7/dist-packages/yardstick/benchmark/scenarios/compute/memload.py",
line 126, in run
result.update(self._get_mem_usage())
File
"/usr/local/lib/python2.7/dist-packages/yardstick/benchmark/scenarios/compute/memload.py",
line 116, in _get_mem_usage
result = self._execute_command(cmd)
File
"/usr/local/lib/python2.7/dist-packages/yardstick/benchmark/scenarios/compute/memload.py",
line 70, in _execute_command
cmd, stderr)
RuntimeError: ('Failed executing command: ', 'free -s 1 -c 10',u"free: seconds argument `1' failed\n")
And it is a bug of free. the -c option should in front of -s, so change the position will solve
this problem.
Also it has another bug:
'KeyError', there no 'cached' keyword, so I change it to 'buff/cache'.
Change-Id: I0ca16e8d8cc11c6a3b2f364cadbdb3ea367eee53
Signed-off-by: chenjiankun <chenjiankun1@huawei.com>
|
|
|
|
|
|
|
|
using API in parallel"
|
|
isinstance allows for matching with list and dict subclasses
as well and list and dict themselves
Use collections.Mapping for dict
We still have to use list, because iterable is too generic,
strings are iterable for example.
use dict literal for point
fix logging to use deferred interpolation
Change-Id: I4c9b27fd07b57139e86315e39f58d54cc18e402d
Signed-off-by: Ross Brattain <ross.b.brattain@intel.com>
|
|
in parallel
JIRA: YARDSTICK-575
Currently yardstick will create stacks with the same name when run using
API in parallel.
The reason is there is a global variable in context base and the core
will always deploy the first context in Context.list. When run in
parallel, it will run in the one process. So yardstick will deploy
stacks with the same name.
The solution is do not use Context.list in yardstick core. And using a
local variable instead.
BTW, if we use API to call yardstick core, we can not config the output
way. So I parse yardstick.conf when task start. And I think we can
include scenario_cfg, context_cfg, yardstick_cfg in one config object
later so that we can get all config in one object.
Change-Id: I1ada4ef486bd252e78c3a2e49c6a39b3f8f16a7c
Signed-off-by: chenjiankun <chenjiankun1@huawei.com>
|
|
It looks like jsonutils.load uses a codec reader
to read from the file, but we already are using
Python 3.5 open() which should already do the UTF-8
decode itself.
return json.load(codecs.getreader(encoding)(fp), **kwargs)C
When we use jsonutils.load() we get a TypeErorr when concating
str and bytes
2017-02-28 16:42:38,431 yardstick.cmd.commands.task task.py:61 ERROR
Traceback (most recent call last):
File "yardstick/yardstick/cmd/commands/task.py", line 58, in do_start
self._finish()
File "yardstick/yardstick/cmd/commands/task.py", line 69, in _finish
result = read_json_from_file(self.output_file).get('result')
File "yardstick/yardstick/common/utils.py", line 136, in read_json_from_file
return jsonutils.load(f)
File "yardstick_venv3/lib/python3.5/site-packages/oslo_serialization/jsonutils.py", line 241, in load
return json.load(codecs.getreader(encoding)(fp), **kwargs)
File "/usr/lib/python3.5/json/__init__.py", line 265, in load
return loads(fp.read(),
File "yardstick_venv3/lib/python3.5/codecs.py", line 497, in read
data = self.bytebuffer + newdata
TypeError: can't concat bytes to str
So switch back to jsonutils.loads() which does nothing if the
bytes are already decoded.
JIRA: YARDSTICK-584
Change-Id: I36acfda3df2b46d16a87f2741a04fe7ee8e8d89b
Signed-off-by: Ross Brattain <ross.b.brattain@intel.com>
|
|
|
|
|
|
if there are no external networks defined
then assign the external network to the first
network as determined by standard sorting
Change-Id: I9d32eca258f8e7de3d44cec4124c0e8c020c0b85
Signed-off-by: Ross Brattain <ross.b.brattain@intel.com>
|
|
The DEBUG log can be stored as file and pushed into artifacts.
Default sys.out level should be INFO. Stream level can be
changed to DEBUG if cli "-d" is enabled.
remove "-v" since it's not useful for a test framework
JIRA: YARDSTICK-507
Change-Id: I3caafd31a2caac73b0e3f33c2762c090e76c707e
Signed-off-by: rexlee8776 <limingjiang@huawei.com>
|
|
We init all the fields to None, so the default value
is None, which is what .get() returns when the key
is not present it the dictionary.
Replace
if key in dict:
self.val = dict[key]
with
self.val = dict.get(key)
This also has the added beneifit of re-initializing
default values to None.
In idiomatic Python we do not check a dictionary twice
if we can avoid it. Either use dict.get() with a default
value or catch the KeyError and do the correct thing.
Change-Id: If8d1caeb7288f888f02622d62e8db9f59f50717a
Signed-off-by: Ross Brattain <ross.b.brattain@intel.com>
|
|
experiment_[12].yaml are generated from templates
during the unittest, so they will be overwritten.
yardstick/vTC/apexlake/tests/data/generated_templates/vTC.yaml
was submitted by Vincenzo Riccobene in gerrit
https://gerrit.opnfv.org/gerrit/#/c/11333/
so assign copyright to Intel instead of invalid
user@TRAFCLASS-PACKET1.fuel.local
Change-Id: If516037c4f4c859e417ca12e6d5300e4e0a3817c
Signed-off-by: Ross Brattain <ross.b.brattain@intel.com>
|
|
|
|
|
|
JIRA: YARDSTICK-566
Current Heat context support affinity and availability arguments
but not support affinity and anti-affinity.
Enhance Heat context to support affinity and anti-affinity:
1. can create heat server group with affinity/anti-affinity
2. each server could be specified which server group they are in
Change-Id: I46e7376fd116c6e109cb5dcb1c168460918e6d43
Signed-off-by: rexlee8776 <limingjiang@huawei.com>
|
|
JIRA: YARDSTICK-569
We have much redundancy code when using nova/neutron/glance... python client.
So I write this code in openstack_utils for calling.
Change-Id: I322b7577de4933246a15e6742ae5a28bea16eb02
Signed-off-by: chenjiankun <chenjiankun1@huawei.com>
|
|
JIRA: YARDSTICK-509
Currently we use influxdb as database and will not record test case name
when run a test suite. So if we must offer test case name if we want to
get result from API.
I will record test case name when run a test suite. So we needn't
offer test case any more when call for get result API.
Change-Id: I87ea4770422cbc46aa6671bfcc53bd4498825eef
Signed-off-by: chenjiankun <chenjiankun1@huawei.com>
|