Age | Commit message (Collapse) | Author | Files | Lines |
|
import the AnsibleCommon class to execute Ansible playbooks
Update node context support to use AnsibleCommon
needs unittests
We must call ansible-playbook as an executable, so we must create temp
files for inventory, and for the playbooks.
AnsibleCommon has evolved to be quite flexible, it auto-generates the
inventory from the context['nodes'] and generates groups from the node
Role.
We also support either a single playbook filename, or a list of
filenames.
If given a list we dynamically generate a playbook that includes the
other playbooks.
We support adding any number of extra_vars using a temp JSON file.
Also designed to be extended by subclassing.
Change-Id: I5bd0a2b4547feaadd70b7e2b8801f19371b99df0
Signed-off-by: Ross Brattain <ross.b.brattain@intel.com>
|
|
JIRA: YARDSTICK-775
We have GUI now, but we can't see real time log in GUI view.
So I add real time log view in GUI.
Change-Id: Ie83f327ef0a94302afa6b3def764fec6ef5818d1
Signed-off-by: chenjiankun <chenjiankun1@huawei.com>
|
|
|
|
|
|
|
|
JIRA: YARDSTICK-771
Change-Id: Ibcd2228505d341feb09b0d477e5f4ed6062c1e89
Signed-off-by: rexlee8776 <limingjiang@huawei.com>
|
|
|
|
|
|
JIRA: YARDSTICK-781
This patch adds some common openstack opertation scenarios
Change-Id: I3de7dbb30eaebac4feebcf07dd6a0d2bdcf428d9
Signed-off-by: JingLu5 <lvjing5@huawei.com>
|
|
Change-Id: I598f6f98f94f70334139966cc170832c90ea9aa6
Signed-off-by: Deepak S <deepak.s@linux.intel.com>
Signed-off-by: Edward MacGillivray <edward.s.macgillivray@intel.com>
Signed-off-by: Ross Brattain <ross.b.brattain@intel.com>
|
|
|
|
Change-Id: I32ca166cd6d818b57bbcfaf7c7e5a65b7147ba8d
Signed-off-by: Deepak S <deepak.s@linux.intel.com>
Signed-off-by: Edward MacGillivray <edward.s.macgillivray@intel.com>
Signed-off-by: Ross Brattain <ross.b.brattain@intel.com>
|
|
Change-Id: I0f5555a1674a5ecb7e2afb508d495b7872c90757
Signed-off-by: Deepak S <deepak.s@linux.intel.com>
Signed-off-by: Edward MacGillivray <edward.s.macgillivray@intel.com>
Signed-off-by: Ross Brattain <ross.b.brattain@intel.com>
|
|
JIRA: YARDSTICK-781
This patch adds some common openstack opertation scenarios
Change-Id: I9e84a8894fe9b9c1754a45a0ddfdf93739164b9a
Signed-off-by: JingLu5 <lvjing5@huawei.com>
|
|
remove unused docstring params
remove whitespace
fix sudo vnf_build command
ignore stdout
Signed-off-by: Ross Brattain <ross.b.brattain@intel.com>
Change-Id: I6fcdbb0ed4bc6b7fc2f557529f5ff9fd960c05e9
|
|
|
|
|
|
|
|
don't reparse the yardstick.yaml file each
time we lookup an option.
Since it is global data, just cache it in a global
var
Use pkg_resources.resource_filename
to lookup the path of yardstick tests, intsead of using __file__
pkg_resources is slightly more proper than __file__
at least for packages
Change-Id: I05d9748390a37bd45c53013fc084d23069ab7c51
Signed-off-by: Ross Brattain <ross.b.brattain@intel.com>
|
|
Change-Id: I15e4ac38b347a08350b71c68469e2793eeed92ab
Signed-off-by: Deepak S <deepak.s@linux.intel.com>
Signed-off-by: Edward MacGillivray <edward.s.macgillivray@intel.com>
Signed-off-by: Ross Brattain <ross.b.brattain@intel.com>
|
|
Change-Id: I33de47ac6ca353d6c69f0d166809b4c95d3fd90f
Signed-off-by: Deepak S <deepak.s@linux.intel.com>
Signed-off-by: Edward MacGillivray <edward.s.macgillivray@intel.com>
Signed-off-by: Ross Brattain <ross.b.brattain@intel.com>
|
|
Change-Id: I09bcb3f2c4b945283070d442589d3bf00468abbc
Signed-off-by: Deepak S <deepak.s@linux.intel.com>
Signed-off-by: Edward MacGillivray <edward.s.macgillivray@intel.com>
Signed-off-by: Ross Brattain <ross.b.brattain@intel.com>
|
|
Refactored main NSB VNF classes accroding to class diagram
https://wiki.opnfv.org/display/yardstick/NSB+class+diagram
All the SampleVNFs have been separated and placed under
the SampleVNF class.
Added AutoConnectSSH to automatically create SSH conneciton on demand.
Added VnfdHelper class to wrap the VNFD dictionary in prepartion for
class-based modeling.
Extracted DpdkVnfSetupEnvHelper for DPDK based VNF setup.
Extracted Stats and other client config to ResourceHelper
Had to replace dict_key_flatten with deepgetitem due to Python 2.7
Jinja2 infinite recursion.
Change-Id: Ia8840e9c44cdbdf39aab6b02e6d2176b31937dc9
Signed-off-by: Deepak S <deepak.s@linux.intel.com>
Signed-off-by: Edward MacGillivray <edward.s.macgillivray@intel.com>
Signed-off-by: Ross Brattain <ross.b.brattain@intel.com>
|
|
|
|
JIRA: YARDSTICK-770
Bonnie++ is a disk and file system benchmarking tool for measuring I/O performance.
With Bonnie++ you can quickly and easily produce a meaningful value to represent
your current file system performance.
This work is add new storage test case using Bonnie++.
Change-Id: I752fee156707cda730962c68d17fda4d4e9cd472
Signed-off-by: JingLu5 <lvjing5@huawei.com>
|
|
|
|
Change-Id: Ib662032e5133b8fead1c6858905bd13ca40f4dd6
Signed-off-by: Ross Brattain <ross.b.brattain@intel.com>
|
|
apexlake is unmaintained, so remove it
From some reason orchestrator/heat.py started failing
so fixup those unittests
Change-Id: Ie06508b5ab7c9dcf9fdfca83e173a188a894d564
Signed-off-by: Ross Brattain <ross.b.brattain@intel.com>
|
|
|
|
JIRA: YARDSTICK-764
This work is about support run SPEC CPU2006 benchmark.
users must get a "cpu2006-1.2.iso" from the SPEC website,
save it under the /home/opnfv/yardstick/yardstick/resources folder
(e.g. /home/opnfv/yardstick/yardstick/resources/cpu2006-1.2.iso),
user may also supply a runspec cfg file
(e.g. /home/opnfv/yardstick/yardstick/resources/files/yardstick_spec_cpu2006.cfg).
Change-Id: If4aecc1c14635a07589555196d2edc8bd37d7bdb
Signed-off-by: JingLu5 <lvjing5@huawei.com>
|
|
JIRA: YARDSTICK-757
Some test scenarios require VM with specific vnic type.
This work is about supporting using different vnic types in heat type context.
context:
name: demo
image: cirros-0.3.5
flavor: yardstick-flavor
user: cirros
placement_groups:
pgrp1:
policy: "availability"
servers:
athena:
floating_ip: true
placement: "pgrp1"
ares:
placement: "pgrp1"
networks:
test:
cidr: '10.0.1.0/24'
vnic_type: "normal"
Change-Id: Ia229fda72f47b04288ea107e2d58fd3e8ac91dd9
Signed-off-by: JingLu5 <lvjing5@huawei.com>
|
|
|
|
JIRA: YARDSTICK-684
This patch adds the support to enable multi-dispatcher of result.
e.g.
[DEFAULT]
debug = False
dispatcher = file, http
Change-Id: Id0e1a1bba14edd899fcf5b275be1f0a091b6db77
Signed-off-by: Deepak S <deepak.s@linux.intel.com>
Signed-off-by: Ross Brattain <ross.b.brattain@intel.com>
|
|
JIRA: YARDSTICK-174
This live migration test case is based on share storage, default share
storage is enabled.
This test case will do some config work. And do live migration and
calculate the migration time and downtime.
Change-Id: I6601601edebdd0ac6434ba632b1eba9e9bd4fda0
Signed-off-by: chenjiankun <chenjiankun1@huawei.com>
|
|
we need to wrap vcpupin modulo number of cores.
also mock time.sleep
Change-Id: I6433418a99505b469c61c81a9a023d84434fa0ee
Signed-off-by: Ross Brattain <ross.b.brattain@intel.com>
|
|
* changes:
Setup OVS-DPDK Standalone Context
Adding new SRIOV Standalone Context
|
|
JIRA: YARDSTICK-397
Change-Id: I3489893caa5b8194b63cb844325ec0b2c554aecc
Signed-off-by: qiujuan <juan_qiu@tongji.edu.cn>
|
|
|
|
This patch performs following tasks
- getting dpdk_nic_bind path
- setup ovs,dpdk ports,vhostuserports,
- creation of vm,
- apache2 licence
- test cases for ovsdpdk
- Changes to standalone context - update unit test cases
Change-Id: I54e4062eb440b8677625e4abe6e0579d9fd54d41
Signed-off-by: Bindya N <bindya.narayan@intel.com>
|
|
This patch adds new SRIOV context to run VNFs with
- random uuid generation,
- mac address generation,
- getting dpdk_nic_bind path,
- ssh key based authentication,
- printing log messages,
- added apache2 licence
JIRA: YARDSTICK-480
Change-Id: Ic8317eb9e7e4ecf270091c18be4782d1299ff087
Signed-off-by: Neha Vadnere <neha.r.vadnere@intel.com>
Signed-off-by: Bindya N <bindya.narayan@intel.com>
|
|
Problem:
Neither OVS nor SRIOV multi-queue is not supported. Guest VM lacks tuning to reach high throughput.
Solution:
(1) Build SRIOV multi-queue capable guest image by recompiling the igxbevf driver (make CFLAGS_EXTRA=-DIXGBE_ENABLE_VF_MQ install).
(2) Change pktgen to send on multiple queues.
(3) Add tuning in guest VM (Disable irqbalance and setup vNIC interrupt affinity to vCPUs)
Update 1: Takes care comments plus adds unit test cases
Update 2: Jenkins reports code coverage 81%, local reports 96%, add more unit test cases
Update 3: Manually rebased to adapt to SSH.from_node()
Update 4: Takes care comments for vnic_type, vnic_name
Change-Id: Ieb15381c653b13697487d095efa4be6c3c49fa42
JIRA: YARDSTICK-619
Signed-off-by: Jing Zhang <jing.c.zhang@nokia.com>
|
|
xe0:
cidr: '10.0.2.0/24'
vld_id: public
allowed_address_pairs:
- ip_address:
'0.0.0.0/0'
xe1:
cidr: '10.0.3.0/24'
vld_id: private
allowed_address_pairs:
- ip_address:
'0.0.0.0/0'
We need to disable gateways on data plane interfaces
With TGs and VFNs we probably don't need gateway on data interfaces
Change-Id: I276a7d591a0a3ff03877c4f525303fc2874de683
Signed-off-by: Ross Brattain <ross.b.brattain@intel.com>
|
|
|
|
|
|
|
|
|
|
|
|
Change-Id: I3f961e26fb045ea7501dc3a5b630b3ef94fec3ee
Signed-off-by: Ross Brattain <ross.b.brattain@intel.com>
|
|
weird error
E AddressValueError: '10.20.0.0/15' does not appear to be an IPv4 or IPv6 network. Did you pass in a bytes (str in Python 2) instead of a unicode object?
I guess we need to convert the stack.outputs mock to unicode
FAILED
tests/unit/benchmark/contexts/test_heat.py:137 (HeatContextTestCase.test_add_server_port)
self = <tests.unit.benchmark.contexts.test_heat.HeatContextTestCase testMethod=test_add_server_port>
def test_add_server_port(self):
network1 = mock.MagicMock()
network1.vld_id = 'vld111'
network2 = mock.MagicMock()
network2.vld_id = 'vld777'
self.test_context.name = 'foo'
self.test_context.stack = mock.MagicMock()
self.test_context.networks = {
'a': network1,
'c': network2,
}
self.test_context.stack.outputs = {
'b': '10.20.30.45',
'b-subnet_id': 1,
'foo-a-subnet-cidr': '10.20.0.0/15',
'foo-a-subnet-gateway_ip': '10.20.30.1',
'b-mac_address': '00:01',
'b-device_id': 'dev21',
'b-network_id': 'net789',
'd': '40.30.20.15',
'd-subnet_id': 2,
'foo-c-subnet-cidr': '40.30.0.0/18',
'foo-c-subnet-gateway_ip': '40.30.20.254',
'd-mac_address': '00:10',
'd-device_id': 'dev43',
'd-network_id': 'net987',
}
server = mock.MagicMock()
server.ports = OrderedDict([
('a', {'stack_name': 'b'}),
('c', {'stack_name': 'd'}),
])
expected = {
"private_ip": '10.20.30.45',
"subnet_id": 1,
"subnet_cidr": '10.20.0.0/15',
"network": '10.20.0.0',
"netmask": '255.254.0.0',
"gateway_ip": '10.20.30.1',
"mac_address": '00:01',
"device_id": 'dev21',
"network_id": 'net789',
"network_name": 'a',
"local_mac": '00:01',
"local_ip": '10.20.30.45',
"vld_id": 'vld111',
}
> self.test_context.add_server_port(server)
tests/unit/benchmark/contexts/test_heat.py:186:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
yardstick/benchmark/contexts/heat.py:307: in add_server_port
network_name, port['stack_name'], self.stack.outputs)
yardstick/benchmark/contexts/heat.py:315: in make_interface_dict
subnet_ip = ipaddress.ip_network(subnet_cidr)
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
address = '10.20.0.0/15', strict = True
def ip_network(address, strict=True):
"""Take an IP string/int and return an object of the correct type.
Args:
address: A string or integer, the IP network. Either IPv4 or
IPv6 networks may be supplied; integers less than 2**32 will
be considered to be IPv4 by default.
Returns:
An IPv4Network or IPv6Network object.
Raises:
ValueError: if the string passed isn't either a v4 or a v6
address. Or if the network has host bits set.
"""
try:
return IPv4Network(address, strict)
except (AddressValueError, NetmaskValueError):
pass
try:
return IPv6Network(address, strict)
except (AddressValueError, NetmaskValueError):
pass
if isinstance(address, bytes):
raise AddressValueError(
'%r does not appear to be an IPv4 or IPv6 network. '
'Did you pass in a bytes (str in Python 2) instead of'
> ' a unicode object?' % address)
E AddressValueError: '10.20.0.0/15' does not appear to be an IPv4 or IPv6 network. Did you pass in a bytes (str in Python 2) instead of a unicode object?
../../yardstick/yardstick_venv/lib/python2.7/site-packages/ipaddress.py:199: AddressValueError
Change-Id: Ie3b087a26a054203573eaa9b13c3e90152bba6a9
Signed-off-by: Ross Brattain <ross.b.brattain@intel.com>
|
|
|