yardstick.git
6 years agoAdd "img_property" when building Yardstick image 47/50547/1
Rodolfo Alonso Hernandez [Sat, 13 Jan 2018 08:26:03 +0000 (08:26 +0000)]
Add "img_property" when building Yardstick image

Since [1], when "build_yardstick_image.yml" is executed, a variable called
"img_property" must be set. This variable could be "normal" or "nsb",
depending on the type of image to generate.

[1] I9fdf30084511ca9a008df3b53887b06273bbd549

JIRA: YARDSTICK-921

Change-Id: Ie3ca6fcf76b94eb9604847aefa77c6a644dddd14
Signed-off-by: Rodolfo Alonso Hernandez <rodolfo.alonso.hernandez@intel.com>
6 years agoMove tests: unit/common 55/48255/8
Emma Foley [Wed, 29 Nov 2017 23:34:15 +0000 (23:34 +0000)]
Move tests: unit/common

* Fix pylint errors
* Add TODOs

Some errors are ignored locally, as they were a symptom of other problems.
These issues have been flagged with a TODO, and should be fixed later.

JIRA: YARDSTICK-837
Change-Id: I2847c380556985fae2c92bb8a7da9c47e91e1338
Signed-off-by: Emma Foley <emma.l.foley@intel.com>
6 years agopylint: try to change formatting for Jenkins again 59/50459/1
Ross Brattain [Thu, 11 Jan 2018 23:03:23 +0000 (15:03 -0800)]
pylint: try to change formatting for Jenkins again

looks like we have to add var to tox passenv

Change-Id: Iba2da2123ae531e026897308769aa832c7eb6d04
Signed-off-by: Ross Brattain <ross.b.brattain@intel.com>
6 years agoMerge "Move tests: functional/"
Ross Brattain [Thu, 11 Jan 2018 22:25:06 +0000 (22:25 +0000)]
Merge "Move tests: functional/"

6 years agoMerge "Move tests: unit/apiserver/"
Ross Brattain [Thu, 11 Jan 2018 22:23:18 +0000 (22:23 +0000)]
Merge "Move tests: unit/apiserver/"

6 years agoMove tests: unit/apiserver/ 71/48271/6
Emma Foley [Wed, 29 Nov 2017 23:01:33 +0000 (23:01 +0000)]
Move tests: unit/apiserver/

* Fix pylint errors
* Add TODOs

Some errors are ignored locally, as they were a symptom of other problems.
These issues have been flagged with a TODO, and should be fixed later.

JIRA: YARDSTICK-837
Signed-off-by: Emma Foley <emma.l.foley@intel.com>
Change-Id: I30d3f61e5ea479758f9a2f39cf415da18e49b9d6

6 years agoMove tests: unit/test_ssh.py 01/48201/7
Emma Foley [Thu, 30 Nov 2017 00:20:09 +0000 (00:20 +0000)]
Move tests: unit/test_ssh.py

Change-Id: I0eabdd5d7e918dcf0df747119a104dedf125606f
Jira: YARDSTICK-837
Signed-off-by: Emma Foley <emma.l.foley@intel.com>
6 years agoMove tests: functional/ 27/48227/6
Emma Foley [Wed, 29 Nov 2017 23:02:43 +0000 (23:02 +0000)]
Move tests: functional/

All tests in tests/functional have been moved to yardstick/tests/functional

JIRA: YARDSTICK-837
Change-Id: I89276b36635de74dd7b8f70e961c71aa0d2c494e
Signed-off-by: Emma Foley <emma.l.foley@intel.com>
6 years agopylint: make Jenkins output parseable 55/50455/1
Ross Brattain [Thu, 11 Jan 2018 19:09:45 +0000 (11:09 -0800)]
pylint: make Jenkins output parseable

Jenkins doesn't handle the color and the output is hard to read in
Jenkins logs

Change-Id: Ie8fc5a78e89f72c829e4bbbcbd1291a723dfde72
Signed-off-by: Ross Brattain <ross.b.brattain@intel.com>
6 years agoMerge "Run tests in yardstick/tests/"
Ross Brattain [Thu, 11 Jan 2018 16:00:31 +0000 (16:00 +0000)]
Merge "Run tests in yardstick/tests/"

6 years agoRun tests in yardstick/tests/ 31/47331/20
Emma Foley [Wed, 29 Nov 2017 22:18:55 +0000 (22:18 +0000)]
Run tests in yardstick/tests/

* Edit .testr.conf and tools/run_tests.sh
  * Run functional and unit tests in tests/ and yardstick/tests/
* Add yardstick/tests/unit/__init__.py and yardstick/tests/__init__.py
* Update pylintrc rules to disable:
  * missing-docstring
  * fixme
  * protected-access

Test will run in both tests/ and yardstick/tests/ initially

Change-Id: Iccd0df0d1b85b5d08f7faa56669bc32687925f7e
JIRA: YARDSTICK-837
Signed-off-by: Emma Foley <emma.l.foley@intel.com>
6 years agoMerge "pyOpenSSL missing: cause 'git review' failed"
Ross Brattain [Thu, 11 Jan 2018 06:40:32 +0000 (06:40 +0000)]
Merge "pyOpenSSL missing: cause 'git review' failed"

6 years agopyOpenSSL missing: cause 'git review' failed 05/49605/3
JingLu5 [Wed, 10 Jan 2018 02:42:56 +0000 (02:42 +0000)]
pyOpenSSL missing: cause 'git review' failed

JIRA: YARDSTICK-905

In the latest Yardstick container, when use git review to upload patches, an Attribute Error will cause failure.

root@a80081a4dccd:/home/opnfv/repos/yardstick# git review
Traceback (most recent call last):
  File "/usr/bin/git-review", line 6, in <module>
    from git_review.cmd import main
  File "/usr/lib/python2.7/dist-packages/git_review/cmd.py", line 32, in <module>
    import requests
  File "/usr/local/lib/python2.7/dist-packages/requests/_init_.py", line 52, in <module>
    from .packages.urllib3.contrib import pyopenssl
  File "/usr/local/lib/python2.7/dist-packages/requests/packages/urllib3/contrib/pyopenssl.py", line 46, in <module>
    import OpenSSL.SSL
  File "/usr/lib/python2.7/dist-packages/OpenSSL/_init_.py", line 8, in <module>
    from OpenSSL import rand, crypto, SSL
  File "/usr/lib/python2.7/dist-packages/OpenSSL/SSL.py", line 118, in <module>
    SSL_ST_INIT = _lib.SSL_ST_INIT
AttributeError: 'module' object has no attribute 'SSL_ST_INIT'

pyOpenSSL is required.

Change-Id: I88a4916c9c2dfcdee45320f6b1a37eaae0803671
Signed-off-by: JingLu5 <lvjing5@huawei.com>
6 years agoMerge "Bump requirements to match OpenStack Pike release"
Ross Brattain [Wed, 10 Jan 2018 21:23:31 +0000 (21:23 +0000)]
Merge "Bump requirements to match OpenStack Pike release"

6 years agoMerge "Remove unnecessary function definition in IxLoadTrafficGen"
Ross Brattain [Wed, 10 Jan 2018 18:53:24 +0000 (18:53 +0000)]
Merge "Remove unnecessary function definition in IxLoadTrafficGen"

6 years agoMerge "Rename test/unit/cmd directory"
Ross Brattain [Mon, 8 Jan 2018 18:21:47 +0000 (18:21 +0000)]
Merge "Rename test/unit/cmd directory"

6 years agoRemove unnecessary function definition in IxLoadTrafficGen 77/47777/7
Rodolfo Alonso Hernandez [Fri, 24 Nov 2017 16:42:42 +0000 (16:42 +0000)]
Remove unnecessary function definition in IxLoadTrafficGen

Removed call to 'instantiate' base class in IxLoadTrafficGen.

JIRA: YARDSTICK-894

Change-Id: I0ebee1f5e0f22cfd3a67eaac8accc67ecd35ad0c
Signed-off-by: Rodolfo Alonso Hernandez <rodolfo.alonso.hernandez@intel.com>
6 years agoMerge "ansible image build improvement"
Rex Lee [Mon, 8 Jan 2018 08:11:32 +0000 (08:11 +0000)]
Merge "ansible image build improvement"

6 years agoMerge "delete obsoleted zte pod info"
Ross Brattain [Thu, 4 Jan 2018 07:02:17 +0000 (07:02 +0000)]
Merge "delete obsoleted zte pod info"

6 years agoMerge "SPEC cpu2006 test case for VM"
Jing Lu [Thu, 4 Jan 2018 04:59:38 +0000 (04:59 +0000)]
Merge "SPEC cpu2006 test case for VM"

6 years agodelete obsoleted zte pod info 93/49993/1
zhihui wu [Thu, 4 Jan 2018 02:01:31 +0000 (10:01 +0800)]
delete obsoleted zte pod info

Delete zte pod info in yardstick/etc/yardstick/nodes.

Change-Id: Ie22fd9fa4b84529f0b2a7d113776d3559106e67a
Signed-off-by: zhihui wu <wu.zhihui1@zte.com.cn>
6 years agoRemove tool provisioning in PROX helper 51/47951/5
Rodolfo Alonso Hernandez [Tue, 28 Nov 2017 16:39:15 +0000 (16:39 +0000)]
Remove tool provisioning in PROX helper

Tool provisioning in PROX setup environment helper is not needed [1]. The
tool (PROX traffic injector) is already provided during the VNF building:
  ./ansible/nsb_setup.yml -->
  ./ansible/build_yardstick_image.yml -->
  ./ansible/ubuntu_server_cloudimg_modify_samplevnfs.yml -->
  ./ansible/roles/install_samplevnf

[1]https://github.com/opnfv/yardstick/blob/master/yardstick/network_services/vnf_generic/vnf/prox_helpers.py#L641

JIRA: YARDSTICK-872

Change-Id: I0f925a7967a35a97901fbe5053793a791a7b1b01
Signed-off-by: Rodolfo Alonso Hernandez <rodolfo.alonso.hernandez@intel.com>
6 years agoMake GenericVNF an abstract class 25/47725/11
Rodolfo Alonso Hernandez [Thu, 23 Nov 2017 09:08:14 +0000 (09:08 +0000)]
Make GenericVNF an abstract class

GenericVNF class is now an abstract class. Only optional methods are
implemented. Mandatory methods:
  - instantiate
  - wait_for_instantiate
  - terminate
  - scale
  - collect_kpi.

JIRA: YARDSTICK-866

Change-Id: Ia8766f9f98816e11894d1e72b0f3bd573d091d99
Signed-off-by: Rodolfo Alonso Hernandez <rodolfo.alonso.hernandez@intel.com>
6 years agoRemove 'inconsistent-return-statements' check from Pylint 47/49947/1
Rodolfo Alonso Hernandez [Wed, 3 Jan 2018 16:08:51 +0000 (16:08 +0000)]
Remove 'inconsistent-return-statements' check from Pylint

There are several bugs in Pylint [1] [2] affecting
'inconsistent-return-statements' check. It will be temporarily
removed.

[1] https://github.com/PyCQA/pylint/issues/1782
[2] https://github.com/PyCQA/pylint/issues/1794

JIRA: YARDSTICK-911

Change-Id: Ib655ef1befdc734c646cdfb9b48f1db0ccdf676d
Signed-off-by: Rodolfo Alonso Hernandez <rodolfo.alonso.hernandez@intel.com>
6 years agoMerge "Fix inventory.ini for build_yardstick_image"
zhihui wu [Wed, 3 Jan 2018 00:56:43 +0000 (00:56 +0000)]
Merge "Fix inventory.ini for build_yardstick_image"

6 years agoMerge "Adding vFW RFC2544 and ixload test cases with various packet sizes"
Ross Brattain [Tue, 2 Jan 2018 08:47:13 +0000 (08:47 +0000)]
Merge "Adding vFW RFC2544 and ixload test cases with various packet sizes"

6 years agoansible image build improvement 09/48309/4
Ace Lee [Mon, 4 Dec 2017 09:07:14 +0000 (09:07 +0000)]
ansible image build improvement

JIRA: YARDSTICK-879

Add some image build vars
Add automatic image build of nsb
yardstick_image: ansible-playbook -e img_property="normal" -vvv -i inventory.ini build_yardstick_image.yml

nsb_image_build: ansible-playbook -e img_property="nsb" -vvv -i inventory.ini build_yardstick_image.yml

prepare for yardstick image uploading

Change-Id: I9fdf30084511ca9a008df3b53887b06273bbd549
Signed-off-by: Ace Lee <liyin11@huawei.com>
6 years agoSPEC cpu2006 test case for VM 15/49615/10
JingLu5 [Mon, 25 Dec 2017 06:50:20 +0000 (06:50 +0000)]
SPEC cpu2006 test case for VM

JIRA: YARDSTICK-906

This test case is for benchmarking VM(VNF) compute performance using SPEC CPU2006.

Change-Id: Ida87aa4d394e38b398acb0af3176dd1b4c858c35
Signed-off-by: JingLu5 <lvjing5@huawei.com>
6 years agoFix inventory.ini for build_yardstick_image 13/49613/1
Alex Yang [Mon, 25 Dec 2017 06:25:46 +0000 (14:25 +0800)]
Fix inventory.ini for build_yardstick_image

In [1], 'no hosts matched' occured because 'jumphost' was not defined
in inventory.ini.

[1]: https://build.opnfv.org/ci/job/yardstick-daisy-baremetal-daily-master/72/console

Change-Id: I8cb36bf083ce589e94f5f8b115e99556f0bcb053
Signed-off-by: Alex Yang <yangyang1@zte.com.cn>
6 years agoAdd get function in ssh.py 97/49597/2
JingLu5 [Mon, 25 Dec 2017 01:47:16 +0000 (01:47 +0000)]
Add get function in ssh.py

JIRA: YARDSTICK-904

This task is about to implement a get function in ssh.py to
fetch desired files/folder in a remote VM to a local path.

In some test cases, test tools will produce results in files.
We want retain the original result files and archive them in
Yardstick docker for future usage.

Change-Id: Ifd333eb044ce31cffa6f5b2a8f6a46648a8858d1
Signed-off-by: JingLu5 <lvjing5@huawei.com>
6 years agoMerge "Replace subprocess "check_output" with "Popen""
Ross Brattain [Fri, 22 Dec 2017 19:35:50 +0000 (19:35 +0000)]
Merge "Replace subprocess "check_output" with "Popen""

6 years agoMerge changes from topics 'YARDSTICK-875', 'YARDSTICK-874'
Ross Brattain [Fri, 22 Dec 2017 11:42:27 +0000 (11:42 +0000)]
Merge changes from topics 'YARDSTICK-875', 'YARDSTICK-874'

* changes:
  Check if multiverse repository is available in Ubuntu
  Specify supported architectures for Ubuntu backports repository

6 years agoMerge "Bugfix in role enable_hugepages_on_boot"
Ross Brattain [Fri, 22 Dec 2017 11:42:15 +0000 (11:42 +0000)]
Merge "Bugfix in role enable_hugepages_on_boot"

6 years agoReplace subprocess "check_output" with "Popen" 81/46981/8
Rodolfo Alonso Hernandez [Wed, 8 Nov 2017 12:41:36 +0000 (12:41 +0000)]
Replace subprocess "check_output" with "Popen"

"check_output" is a blocking wrapper for "Popen" which returns the output
of the command execution or raises an exception in case of error.

"Popen" is a non-blocking function that allows to create asynchronous
tasks. It returns any possible execution error but doesn't raise an
exception; this is delegated to the developer.

This code is used in the Yardstick CLI base test class.

Change-Id: Ie3e1228b2d40cb306354447653678bf581bc9697
Signed-off-by: Rodolfo Alonso Hernandez <rodolfo.alonso.hernandez@intel.com>
6 years agoMerge "Bugfix:proxy env, ansible multinode support"
Ross Brattain [Fri, 22 Dec 2017 10:52:13 +0000 (10:52 +0000)]
Merge "Bugfix:proxy env, ansible multinode support"

6 years agoMerge "Remove "flake8" and "pep8" from test-requirements"
Ross Brattain [Fri, 22 Dec 2017 10:48:33 +0000 (10:48 +0000)]
Merge "Remove "flake8" and "pep8" from test-requirements"

6 years agoMerge "Variable local_iface_name is read before it is set"
Ross Brattain [Fri, 22 Dec 2017 10:46:36 +0000 (10:46 +0000)]
Merge "Variable local_iface_name is read before it is set"

6 years agoCheck if multiverse repository is available in Ubuntu 97/48097/2
Rodolfo Alonso Hernandez [Thu, 30 Nov 2017 14:13:34 +0000 (14:13 +0000)]
Check if multiverse repository is available in Ubuntu

In Ubuntu, multiverse repository is needed to install the image
dependencies [1]. If this repository is not enabled, it should be
added as part of the role "add_custom_repos".

[1] https://github.com/opnfv/yardstick/tree/master/ansible/roles/install_image_dependencies

JIRA: YARDSTICK-875

Change-Id: Ie37ebf87bf245185447f2b675568af9bd38219c0
Signed-off-by: Rodolfo Alonso Hernandez <rodolfo.alonso.hernandez@intel.com>
6 years agoSpecify supported architectures for Ubuntu backports repository 83/48083/2
Rodolfo Alonso Hernandez [Thu, 30 Nov 2017 10:46:45 +0000 (10:46 +0000)]
Specify supported architectures for Ubuntu backports repository

Currently Trusty (Ubuntu 14.04 LTS) and Xenial (Ubuntu 16.04 LTS) doesn't
have support for arch=ARM64 in backports repository:
- http://archive.ubuntu.com/ubuntu/dists/xenial-backports/
- http://archive.ubuntu.com/ubuntu/dists/trusty-backports/

During the Yardstick image building process, the repository is added to the
APT repository list. In order to avoid errors during the repository retrival,
the available architectures must be specified [1].

[1]https://github.com/opnfv/yardstick/blob/stable/euphrates/ansible/roles/add_custom_repos/templates/sources.list.j2#L4

JIRA: YARDSTICK-874

Change-Id: I7774189fbdd7d74ff5df29526ba0da2693b3b53a
Signed-off-by: Rodolfo Alonso Hernandez <rodolfo.alonso.hernandez@intel.com>
6 years agoBugfix in role enable_hugepages_on_boot 15/47615/10
Jan Malanik [Tue, 21 Nov 2017 19:05:07 +0000 (11:05 -0800)]
Bugfix in role enable_hugepages_on_boot

Make role idempotent.
Current regex doesn't match for:
linux   /boot/vmlinuz-4.10.0-30-generic root=/dev/nvme0n1p1 ro vga=788 text

Change-Id: If5eb20fce4ddc35bb109c00eb7565853b3763950
Signed-off-by: Jan Malanik <janx.malanik@intel.com>
Signed-off-by: Malanik Jan <janx.malanik@intel.com>
6 years agoMerge "Fix the pylint version for pep8 tox target"
Ross Brattain [Fri, 22 Dec 2017 10:40:49 +0000 (10:40 +0000)]
Merge "Fix the pylint version for pep8 tox target"

6 years agoAdd doc about installing YardStick on OpenSUSE 61/46961/5
rossella [Wed, 8 Nov 2017 17:33:38 +0000 (18:33 +0100)]
Add doc about installing YardStick on OpenSUSE

Add guide to install YardStick on OpenSUSE and modify the README
to state that OpenSUSE is supported.

Change-Id: Id107b24e0ec1ab441426bb150d9e863986d20fc1
Signed-off-by: Rossella Sblendido <rsblendido@suse.com>
6 years agoBump requirements to match OpenStack Pike release 99/39299/8
Ross Brattain [Mon, 14 Aug 2017 16:54:51 +0000 (09:54 -0700)]
Bump requirements to match OpenStack Pike release

Bumped requirements to match OpenStack Pike release
requirements [1].

[1] https://github.com/openstack/requirements/tree/stable/pike

JIRA: YARDSTICK-889

Change-Id: I18ccdc01c14693cb63bd74d29c14554f610629e3
Signed-off-by: Ross Brattain <ross.b.brattain@intel.com>
6 years agoRename test/unit/cmd directory 49/48749/2
Ross Brattain [Mon, 14 Aug 2017 16:54:51 +0000 (09:54 -0700)]
Rename test/unit/cmd directory

Renamed test/unit/cmd directory to test/unit/test_cmd, in order to
avoid importing errors during the execution of unit tests. This directory
name collides with Python "cmd" library.

Change-Id: Ie06d58d4faace33df684c8e511a398aa0667b098
Signed-off-by: Rodolfo Alonso Hernandez <rodolfo.alonso.hernandez@intel.com>
6 years agoFix the pylint version for pep8 tox target 73/49273/2
Martin Banszel [Tue, 19 Dec 2017 09:48:11 +0000 (10:48 +0100)]
Fix the pylint version for pep8 tox target

Change-Id: I5e1c169a6ca13b3f46129b2c4a15ccbab2677a63
Signed-off-by: Martin Banszel <martinx.banszel@intel.com>
6 years agoVariable local_iface_name is read before it is set 83/47583/6
Jiri Prokes [Mon, 20 Nov 2017 12:09:11 +0000 (04:09 -0800)]
Variable local_iface_name is read before it is set

Moving variable setting before reading
Verified via TC:
yardstick/samples/vnf_samples/nsut/ping/tc_ping_heat_context.yaml

JIRA: YARDSTICK-899

Change-Id: Ia2feac1ed4e67dccd02446ba27afc9d40e87be35
Signed-off-by: Jiri Prokes <jirix.x.prokes@intel.com>
6 years agoMerge "pretty cli format: runner/scenario/testcase list"
Rex Lee [Mon, 18 Dec 2017 01:33:02 +0000 (01:33 +0000)]
Merge "pretty cli format: runner/scenario/testcase list"

6 years agoupdate release notes for Euphrates 5.1.0 31/49131/1
Ross Brattain [Sat, 16 Dec 2017 10:18:31 +0000 (02:18 -0800)]
update release notes for Euphrates 5.1.0

Change-Id: I11b248882dd314baebd3ab4e7e676a1f3e0b50cd
Signed-off-by: Ross Brattain <ross.b.brattain@intel.com>
6 years agoMerge "Addition of NSB Prox test documentation of vPE and LW-AFTR test cases"
Ross Brattain [Sat, 16 Dec 2017 09:39:25 +0000 (09:39 +0000)]
Merge "Addition of NSB Prox test documentation of vPE and LW-AFTR test cases"

6 years agobugfix: tc078 have no data stored or dashboard to show results 49/47749/4
rexlee8776 [Fri, 24 Nov 2017 07:37:20 +0000 (07:37 +0000)]
bugfix: tc078 have no data stored or dashboard to show results

JIRA: YARDSTICK-867

1.print result in the log, showing the txt format result

Change-Id: I6deeb4cf44895ef7a6c6d231c77b3843eec285d7
Signed-off-by: rexlee8776 <limingjiang@huawei.com>
6 years agoMerge "bugfix: tc078 fails in some situations"
Ross Brattain [Sat, 16 Dec 2017 09:21:57 +0000 (09:21 +0000)]
Merge "bugfix: tc078 fails in some situations"

6 years agoMerge "bugfix: kill process do not accurately kill "nova-api""
Ross Brattain [Sat, 16 Dec 2017 08:44:07 +0000 (08:44 +0000)]
Merge "bugfix: kill process do not accurately kill "nova-api""

6 years agosamples: Add generic L3 forwarder tests 95/44295/16
Dino Madarang [Tue, 3 Oct 2017 01:02:17 +0000 (01:02 +0000)]
samples: Add generic L3 forwarder tests

A generic throughput test case that can be used as a
stub code for a Linux-based VNF configured as an L3 forwarder.

Supported context:
* Standalone OVSDPDK and SRIOV
* Baremetal

Code changes:
* Allow pmd-cpu-mask and lcore mask for OVS DPDK
* router_vnf.py - configures interface IP addresses and static arp entries
  using ip command
* NFVi KPIs
* Allow cputune tag for standalone context to be able to PIN on NUMA 1 cpus

SRIOV Test cases:
* RFC2544 Ethernet framesizes, 128K Flows
* 2,4 and 6 ports
* 2 and 3 vcpus per port
*
OVSDPDK Test cases:
* RFC2544 Ethernet framesizes, 128K Flows
* 2 and 4 ports
* 2 vcpus per port
* 2 PMD threads per port

TODO:
* Documentation
* Add 6 ports tests

References:
* router_vnf.py is based on sample_vnf.py
* tc_*.yaml files are based on acl/vfw test case files

Added unitests
Added get_stats to parse ip -s link

Change-Id: Id1b969d5420dfcab7c1e695acbd2cd1655747efe
Signed-off-by: Dino Simeon Madarang <dinox.madarang@intel.com>
Signed-off-by: Kavindya Deegala <kavindya.s.deegala@intel.com>
Reviewed-by: Alain Jebara <alain.jebara@intel.com>
Reviewed-by: Deepak S <deepak.s@linux.intel.com>
Reviewed-by: Emma Foley <emma.l.foley@intel.com>
Reviewed-by: Rodolfo Alonso Hernandez <rodolfo.alonso.hernandez@intel.com>
Reviewed-by: Ross Brattain <ross.b.brattain@intel.com>
Reviewed-by: Edward MacGillivray <edward.s.macgillivray@intel.com>
Signed-off-by: Dhaval Patel <dhaval.r.patel@intel.com>
Signed-off-by: Ross Brattain <ross.b.brattain@intel.com>
6 years agopretty cli format: runner/scenario/testcase list 73/47473/13
rexlee8776 [Mon, 20 Nov 2017 03:28:31 +0000 (03:28 +0000)]
pretty cli format: runner/scenario/testcase list

JIRA: YARDSTICK-855

1. using prettytable to reformat cli below:
yardstick runner list
yardstick scenario list
yardstick testcase list
2. remove redundant function print_hbar
3. fix pep8 problems, the framework using do_list dynamicly,
so disable unused-argument check for now.

Change-Id: I79e1226e21fca4624bf4436414917bd07ecabca0
Signed-off-by: rexlee8776 <limingjiang@huawei.com>
6 years agoNSB: Fix standalone.model.Libvirt SR-IOV modeling 31/46531/10
Dino Madarang [Wed, 1 Nov 2017 16:10:16 +0000 (09:10 -0700)]
NSB: Fix standalone.model.Libvirt SR-IOV modeling

Fixed standalone.model.Libvirt SR-IOV XML interface modeling, acording
to [1]:
- All PCI attributes now are printed in hexadecimal format.
- The PCI address is now added in the correct section, 'interface'.

network_services.utils.PciAddress was refactored to accept both 'domain:
bus:slot:function' and 'bus:slot:function' format inputs. This class is
used as input in the previous class, Libvirt, to print in XML the PCI
address of a SR-IOV interface.

network_services.utils.PciAddress.parse_address is now deprecated. Instead
the class standard instantiation must be used:

    libvirt_obj = utils.PciAddress(text_with_address)

A deprecation decorator is implemented along with this patch. This
decorator is used for the first time in the previously mentioned function.
This decorator stores every decorated function name and deprecation message
and raises a logging warning message the first time this function is used.

[1] https://goo.gl/so2Mrp

Change-Id: I22e95c488e27d6e2a8fdf6c1a07faab275fa6bba
Signed-off-by: Dino Simeon Madarang <dinox.madarang@intel.com>
Reviewed-by: Alain Jebara <alain.jebara@intel.com>
Reviewed-by: Deepak S <deepak.s@linux.intel.com>
Reviewed-by: Ross Brattain <ross.b.brattain@intel.com>
Reviewed-by: Rodolfo Alonso Hernandez <rodolfo.alonso.hernandez@intel.com>
6 years agobugfix: kill process do not accurately kill "nova-api" 93/47793/6
rexlee8776 [Sat, 25 Nov 2017 06:44:33 +0000 (06:44 +0000)]
bugfix: kill process do not accurately kill "nova-api"

JIRA: YARDSTICK-849

1. update the kill process RegEx pattern to be more accurate
2. make attack_process to be parameter so it can be customized if
the SUT is using a different name of attack_process

Change-Id: I569730ced6c24aafbffcf2fc5752d3560d0adac5
Signed-off-by: rexlee8776 <limingjiang@huawei.com>
6 years agoBugfix:proxy env, ansible multinode support 57/47957/14
Malanik Jan [Tue, 28 Nov 2017 16:22:17 +0000 (08:22 -0800)]
Bugfix:proxy env, ansible multinode support

JIRA: YARDSTICK-893

- hosts and plays in ansible/nsb_setup.yml refactored
Fixed proxy configuration from env or /etc/environment in nsb_setup.sh
Fixed ansible parameter 'environment: "{{ proxy_env }}"' in:
 - roles for components download.
 - roles for components dependencies install.

Now, you can use ansible to modify all yardstick-standalone hosts at once.
1) Configure http[s]_proxy in
- /etc/environment
or
- env variables
2) Modify ansible/yardstick-install-inventory.ini:
  [jumphost]
  localhost  ansible_connection=local

  [yardstick-standalone]
  yardstick-standalone-node ansible_host=192.168.1.2
  yardstick-standalone-node-2 ansible_host=192.168.1.3

  [all:vars]
  ansible_user=root
  ansible_pass=root

3) start:
./nsb_setup.sh # for baremetal/sriov
./nsb_setup.sh <path to admin-openrc.sh> #for openstack heat

Change-Id: I167db8bae8303210f21e8ae6f3870ef054bbedce
Signed-off-by: Malanik Jan <janx.malanik@intel.com>
6 years agoMerge "bugfix: tc006, tc079, tc082 miss grafana dashboard in local deployment"
Ross Brattain [Thu, 14 Dec 2017 08:39:26 +0000 (08:39 +0000)]
Merge "bugfix: tc006, tc079, tc082 miss grafana dashboard in local deployment"

6 years agoMerge "Refactor userguide "Yardstick Installation""
Ross Brattain [Thu, 14 Dec 2017 08:35:56 +0000 (08:35 +0000)]
Merge "Refactor userguide "Yardstick Installation""

6 years agoChange testcases 'cirros' image to 'yardstick-image' 25/48025/2
Rodolfo Alonso Hernandez [Wed, 29 Nov 2017 16:21:12 +0000 (16:21 +0000)]
Change testcases 'cirros' image to 'yardstick-image'

The default OpenStack 'cirros-0.3.5' image doesn't exist anymore. The
image included by default in any testing OpenStack deployment is now
called 'cirros-0.3.5-x86_64-disk', but this name can change.

Because Yardstick, during the installation, deploys a customized image,
'yardstick-image', it makes sense to use it as the default image.

JIRA: YARDSTICK-873

Change-Id: I8fd7cbc01d4fa52e9107f2fac7d2d9ff5d1091c7
Signed-off-by: Rodolfo Alonso Hernandez <rodolfo.alonso.hernandez@intel.com>
6 years agoMerge "Ansible: fix lowercasing issue with ConfigParser"
Ross Brattain [Thu, 14 Dec 2017 07:54:55 +0000 (07:54 +0000)]
Merge "Ansible: fix lowercasing issue with ConfigParser"

6 years agoRemove "flake8" and "pep8" from test-requirements 31/48731/3
Rodolfo Alonso Hernandez [Tue, 12 Dec 2017 13:35:58 +0000 (13:35 +0000)]
Remove "flake8" and "pep8" from test-requirements

Removed "flake8" and "pep8" from test-requirements. Since
44070670c798d2cde2824f3150b2b11bf35c6319, "pylint" is the
code style checker, instead of "flake8" or "pep8".

JIRA: YARDSTICK-832

Change-Id: Iee598b0b1793d71dc74be36fa1875387b17d1e25
Signed-off-by: Rodolfo Alonso Hernandez <rodolfo.alonso.hernandez@intel.com>
6 years agobugfix: tc078 fails in some situations 17/47317/7
rexlee8776 [Thu, 16 Nov 2017 08:49:16 +0000 (08:49 +0000)]
bugfix: tc078 fails in some situations

1. make  "SPECint_benchmark, runspec_iterations, runspec_tune, runspec_size,
runspec_rate" parameterized and change the default value "int^429" to "int"
2. remove "become: true" in some roles since it does not need root privilege

JIRA: YARDSTICK-852

Change-Id: Icb384bddc12911e2681a981d0504e0e142d1a8ec
Signed-off-by: rexlee8776 <limingjiang@huawei.com>
6 years agoMerge "NSB: Fix IndexError in pin_vcpu_for_perf"
Ross Brattain [Tue, 12 Dec 2017 16:01:12 +0000 (16:01 +0000)]
Merge "NSB: Fix IndexError in pin_vcpu_for_perf"

6 years agoAvoid pylint warning for "protected-access" 75/48475/5
Rodolfo Alonso Hernandez [Wed, 6 Dec 2017 16:52:36 +0000 (16:52 +0000)]
Avoid pylint warning for "protected-access"

This warning should be disabled in order to access protected
methods during testing. Any access to protected methods done
outside the testing classes, must be catched during the reviewing
process.

Change-Id: I2127b41edf704d0cb4f68b33d98705039e058d1a
Signed-off-by: Rodolfo Alonso Hernandez <rodolfo.alonso.hernandez@intel.com>
6 years agoAvoid pylint warning for "missing-docstring" 63/48463/5
Rodolfo Alonso Hernandez [Wed, 6 Dec 2017 16:23:35 +0000 (16:23 +0000)]
Avoid pylint warning for "missing-docstring"

Disabled pylint message for missing doctring in methods, classes and
modules. Modules must be auto-explanatory, and some methods are trivial
an doesn't need an explanation.

Change-Id: I01d80737d92a7345bc6a2a6f607eb35cbf28da67
Signed-off-by: Rodolfo Alonso Hernandez <rodolfo.alonso.hernandez@intel.com>
6 years agoMerge "Adding vFirewall HTTP Traffic Profiles for tests including Concurrency, CPS...
Ross Brattain [Tue, 12 Dec 2017 07:19:11 +0000 (07:19 +0000)]
Merge "Adding vFirewall HTTP Traffic Profiles for tests including Concurrency, CPS, TPUT, TPS for 2Ports and 4Ports"

6 years agoAdding vFirewall HTTP Traffic Profiles. 59/45259/5
Phani Kiran Thaticharla [Mon, 16 Oct 2017 17:39:22 +0000 (10:39 -0700)]
Adding vFirewall HTTP Traffic Profiles.

Modified http_locator location for 64K, 256K, 512K and 1024K
concurrency files.

The traffic profiles include various http locator image sizes i.e
4K,64K,256K,512K and 1024K

The traffic schema is changed to "nsb" from "isb" for all the
traffic profiles

Change-Id: I012da8daaa880ca80db2d3b08cebd9a73c19cd47
Signed-off-by: Phani Kiran Thaticharla <phani.kiran.thaticharla@intel.com>
Reviewed-by: Oscar Medina-Duran <oscar.medina-duran@intel.com>
Reviewed-by: Deepak S <deepak.s@linux.intel.com>
Reviewed-by: Ross Brattain <ross.b.brattain@intel.com> 
6 years agoheat: allow overriding Heat/Neutron private IP for DPDK tests 93/45393/12
Ross Brattain [Tue, 17 Oct 2017 21:30:37 +0000 (14:30 -0700)]
heat: allow overriding Heat/Neutron private IP for DPDK tests

For some L2/L3 DPDK testcases we need to use a custom
IP address space different from what Heat provides.

These testcases require port_security_enabled = False so
Neutron should allow for unrestricted L2 traffic.

This will work because we bind the ports to DPDK and thus
don't need DHCP.

  vnf_0:
    floating_ip: true
    placement: "pgrp1"
    network_ports:
      mgmt:
        - mgmt
      uplink_0:
        - xe0:
            local_ip: 10.44.0.20
            netmask: 255.255.255.0
      downlink_0:
        - xe1:
            local_ip: 10.44.0.30
            netmask: 255.255.255.0

Also fixup flake8 errors in unittests

Change-Id: Id29dfffa692f16fb1f526d208db43e476e2f7830
Signed-off-by: Ross Brattain <ross.b.brattain@intel.com>
6 years agoAdding vFW RFC2544 and ixload test cases with various packet sizes 73/45273/2
Phani Kiran Thaticharla [Mon, 16 Oct 2017 22:15:15 +0000 (15:15 -0700)]
Adding vFW RFC2544 and ixload test cases with various packet sizes

Changed private to uplink and public to downlink

Change-Id: Id9273d9489f58bd45b60a00fc9e5bcbe9e136c84
Signed-off-by: Phani Kiran Thaticharla <phani.kiran.thaticharla@intel.com>
Reviewed-by: Oscar Medina-Duran <oscar.medina-duran@intel.com>
Reviewed-by: Deepak S <deepak.s@linux.intel.com>
Reviewed-by: Ross Brattain <ross.b.brattain@intel.com> 
6 years agoAdding vFirewall HTTP Traffic Profiles for tests including Concurrency, CPS, TPUT... 45/48345/1
Phani Kiran Thaticharla [Mon, 4 Dec 2017 22:02:10 +0000 (14:02 -0800)]
Adding vFirewall HTTP Traffic Profiles for tests including Concurrency, CPS, TPUT, TPS for 2Ports and 4Ports

Change-Id: I3c7f047dc6d1545093aed6f64ccaed9f90d85af3
Signed-off-by: Phani Kiran Thaticharla <phani.kiran.thaticharla@intel.com>
Reviewed-by: Oscar Medina-Duran <oscar.medina-duran@intel.com>
Reviewed-by: Deepak S <deepak.s@linux.intel.com>
Reviewed-by: Ross Brattain <ross.b.brattain@intel.com> 
6 years agoMerge "bugfix: tc023 miss description and tc050-58 wrong description"
Ross Brattain [Fri, 1 Dec 2017 19:18:02 +0000 (19:18 +0000)]
Merge "bugfix: tc023 miss description and tc050-58 wrong description"

6 years agoMerge "KVMFORNFV: Reverting LiveMigration changes"
Jing Lu [Fri, 1 Dec 2017 05:40:23 +0000 (05:40 +0000)]
Merge "KVMFORNFV: Reverting LiveMigration changes"

6 years agoKVMFORNFV: Reverting LiveMigration changes 29/48129/2
Navya Bathula [Thu, 30 Nov 2017 21:46:15 +0000 (21:46 +0000)]
KVMFORNFV: Reverting LiveMigration changes

This patch consists of reverting the changes of patch 45227 and
incudes redirecting the console output of the LiveMigration
execution to /dev/null as the stdout contains only the statistics,
i.e., totaltime, downtime and setuptime.

This reverts commit 5a1f65d3e7d67488ee6f558dccfa5ca5581ddb65.

Change-Id: I252b5a4045657cfa8362e9aae755249480cd3b77
Signed-off-by: Navya <navyax.bathula@intel.com>
6 years agoMerge "Remove img_modify_playbook assignation in build_yardstick_image.yml"
Ross Brattain [Wed, 29 Nov 2017 11:51:15 +0000 (11:51 +0000)]
Merge "Remove img_modify_playbook assignation in build_yardstick_image.yml"

6 years agoMerge "Move test requirements into test-requirements.txt"
Ross Brattain [Wed, 29 Nov 2017 11:50:53 +0000 (11:50 +0000)]
Merge "Move test requirements into test-requirements.txt"

6 years agoMerge "Move test scripts to tools/"
Ross Brattain [Wed, 29 Nov 2017 11:50:30 +0000 (11:50 +0000)]
Merge "Move test scripts to tools/"

6 years agoMerge "tox: Split tests into separate tox environments"
Ross Brattain [Wed, 29 Nov 2017 11:50:07 +0000 (11:50 +0000)]
Merge "tox: Split tests into separate tox environments"

6 years agoMerge "Tox: add a pep8 target"
Ross Brattain [Wed, 29 Nov 2017 11:50:04 +0000 (11:50 +0000)]
Merge "Tox: add a pep8 target"

6 years agoRemove img_modify_playbook assignation in build_yardstick_image.yml 35/47935/1
Rodolfo Alonso Hernandez [Tue, 28 Nov 2017 14:02:34 +0000 (14:02 +0000)]
Remove img_modify_playbook assignation in build_yardstick_image.yml

Variable "img_modify_playbook" is being assigned in first context of
./ansible/build_yardstick_image.yml [1]. However this variable is never used.
In second context [2], the variable used is a CLI input variable.

[1]https://github.com/opnfv/yardstick/blob/stable/euphrates/ansible/build_yardstick_image.yml#L187
[2]https://github.com/opnfv/yardstick/blob/stable/euphrates/ansible/build_yardstick_image.yml#L205

JIRA: YARDSTICK-871

Change-Id: I7bd5063c5e86520abcafdc782222ee53faf58f45
Signed-off-by: Rodolfo Alonso Hernandez <rodolfo.alonso.hernandez@intel.com>
6 years agoAddition of NSB Prox test documentation of vPE and LW-AFTR test cases 89/47589/2
DanielMartinBuckley [Tue, 21 Nov 2017 15:35:31 +0000 (15:35 +0000)]
Addition of NSB Prox test documentation of vPE and LW-AFTR test cases

YARDSTICK-840

NSB Prox test documentation of vPE and LW-AFTR test cases documenation.

Change-Id: Ic6da6546faf0494fdee71962a515083e6e10a410
Signed-off-by: Daniel Martin Buckley <daniel.m.buckley@intel.com>
7 years agofix docker client don't have trex_client 03/47503/1
Ace Lee [Mon, 20 Nov 2017 10:47:19 +0000 (10:47 +0000)]
fix docker client don't have trex_client

JIRA: YARDSTICK-854

Add trex_client in docker,
so we could run NSB testcase in docker container.

Change-Id: Iac1393d6e3a175137973190936ab69a1f2ce8272
Signed-off-by: Ace Lee <liyin11@huawei.com>
7 years agoMerge "update docker version to 16.04"
Ross Brattain [Mon, 20 Nov 2017 08:57:01 +0000 (08:57 +0000)]
Merge "update docker version to 16.04"

7 years agoNSB: Fix IndexError in pin_vcpu_for_perf 85/45885/3
Dino Madarang [Thu, 19 Oct 2017 20:41:05 +0000 (20:41 +0000)]
NSB: Fix IndexError in pin_vcpu_for_perf

This addresses the IndexError in Standalone SRIOV/OVSDPDK context.
The correct sys_cpu number should be sys_cpu-1

Error:
    threads = "%s-%s" % (soc_cpu[socket][sys_cpu], soc_cpu[socket][-1])
IndexError: list index out of range

Tested platform: (Hyper-Threading disabled)
NUMA node0 CPU(s):     0-21
NUMA node1 CPU(s):     22-43

With socket equal to 0, sys_cpu value was 22 which resulted to IndexError.

Change-Id: I36b045cacce4caff4b5ddafaa9b6737f1c6df0a1
Signed-off-by: Dino Simeon Madarang <dinox.madarang@intel.com>
Reviewed-by: Alain Jebara <alain.jebara@intel.com>
Reviewed-by: Deepak S <deepak.s@linux.intel.com>
Reviewed-by: Ross Brattain <ross.b.brattain@intel.com>
Reviewed-by: Edward MacGillivray <edward.s.macgillivray@intel.com>
7 years agobugfix: tc023 miss description and tc050-58 wrong description 39/47239/4
rexlee8776 [Wed, 15 Nov 2017 09:40:21 +0000 (09:40 +0000)]
bugfix: tc023 miss description and tc050-58 wrong description

also modify tc019,025,045-49 descrition to be unified

JIRA: YARDSTICK-850

Change-Id: I3f775f1ebff4063edc53b9bc26d7ba10b8af8a9d
Signed-off-by: rexlee8776 <limingjiang@huawei.com>
7 years agoMove test requirements into test-requirements.txt 33/47133/6
Emma Foley [Tue, 7 Nov 2017 22:52:42 +0000 (22:52 +0000)]
Move test requirements into test-requirements.txt

Move the packages required for testing into test-requirements.txt
This follows conventions used in OpenStack projects.

JIRA: YARDSTICK-837
Change-Id: If08fc416aa21b11250066bc19a54daa35e863407
Signed-off-by: Emma Foley <emma.l.foley@intel.com>
7 years agoMove test scripts to tools/ 75/46875/6
Emma Foley [Tue, 7 Nov 2017 21:04:08 +0000 (21:04 +0000)]
Move test scripts to tools/

Move the scripts that tox uses for running tests
to the tools/ directory:
* run_tests.sh -> tools/run_tests.sh
* tests/ci/cover.{sh,awk} -> tools/

JIRA: YARDSTICK-837
Change-Id: I817c9e5f58c06b45f1de3f369318f4bb24168677
Signed-off-by: Emma Foley <emma.l.foley@intel.com>
7 years agotox: Split tests into separate tox environments 73/46873/6
Emma Foley [Tue, 7 Nov 2017 20:29:03 +0000 (20:29 +0000)]
tox: Split tests into separate tox environments

* Add argument parsing to run_tests.sh so tests can be selected
* Define tox environments for:
  * Coverage
  * Unit tests
  * Functional tests
    * for py27 and py3
* Add environments to default env
  * Behaviour is the same when the tests are run
* Updates the py27 environment config, and adds a py3 config.
  * Commands from testenv are moved to py27
  * py3 env uses the same commands, but runs with python3

Change-Id: I22f17c0103101f01ec268b1de9d146780ae67a6d
JIRA: YARDSTICK-837
Signed-off-by: Emma Foley <emma.l.foley@intel.com>
7 years agoTox: add a pep8 target 75/46575/14
Emma Foley [Thu, 2 Nov 2017 16:50:14 +0000 (16:50 +0000)]
Tox: add a pep8 target

Adds a pep8, pep8-full targets to tox:
* pep8 target: runs pylint on the changed files
* pep8-full target: runs pylint on whole repo

Adds scripts to run pylint:
* stored in tools/

Documentation: changeed the command for running tests
(run_tests.sh -> tox). This runs the same set of tests as before.

JIRA: YARDSTICK-832

Change-Id: I652da87723682d958f3fcbc2eb4cd88422636a3b
Signed-off-by: Emma Foley <emma.l.foley@intel.com>
7 years agoMerge "Dockerfile: apt-get clean to save layer space"
Ross Brattain [Fri, 17 Nov 2017 17:16:51 +0000 (17:16 +0000)]
Merge "Dockerfile: apt-get clean to save layer space"

7 years agoMake GenericTrafficGen class abstract 39/47339/2
Rodolfo Alonso Hernandez [Thu, 16 Nov 2017 08:56:56 +0000 (08:56 +0000)]
Make GenericTrafficGen class abstract

GenericTrafficGen class is now an abstract class. Only optional methods
are implemented.
  - 'run_traffic' and 'terminate' are mandatory.
  - 'listen_traffic', 'verify_traffic' and 'wait_for_instance' are
    optional. By default these methods doesn't execute any action.

JIRA: YARDSTICK-853

Change-Id: I2befdaa337af79cc2364bdd7c66183c31c5ab69a
Signed-off-by: Rodolfo Alonso Hernandez <rodolfo.alonso.hernandez@intel.com>
7 years agoMerge "Add vfw ixload testcase for heat"
Ross Brattain [Fri, 17 Nov 2017 10:36:43 +0000 (10:36 +0000)]
Merge "Add vfw ixload testcase for heat"

7 years agoMerge "NSB: update vfw tc_heat_external tests"
Ross Brattain [Fri, 17 Nov 2017 10:34:28 +0000 (10:34 +0000)]
Merge "NSB: update vfw tc_heat_external tests"

7 years agoMerge "Check requirements against OpenStack requirements"
Ross Brattain [Fri, 17 Nov 2017 09:55:41 +0000 (09:55 +0000)]
Merge "Check requirements against OpenStack requirements"

7 years agoMerge "NSB Prox BM test case fixes for scale up"
Ross Brattain [Fri, 17 Nov 2017 09:48:39 +0000 (09:48 +0000)]
Merge "NSB Prox BM test case fixes for scale up"

7 years agoMerge "Fix controller IP parsing in "nsb_setup.sh" script"
Ross Brattain [Fri, 17 Nov 2017 09:46:46 +0000 (09:46 +0000)]
Merge "Fix controller IP parsing in "nsb_setup.sh" script"

7 years agoMerge "Clean functional tests in "test_cli_scenario""
Ross Brattain [Fri, 17 Nov 2017 09:46:00 +0000 (09:46 +0000)]
Merge "Clean functional tests in "test_cli_scenario""

7 years agoMerge "Create get_description and get_scenario_type for Scenario"
Ross Brattain [Fri, 17 Nov 2017 09:45:55 +0000 (09:45 +0000)]
Merge "Create get_description and get_scenario_type for Scenario"

7 years agoFix controller IP parsing in "nsb_setup.sh" script 11/46311/6
Rodolfo Alonso Hernandez [Fri, 27 Oct 2017 10:43:29 +0000 (11:43 +0100)]
Fix controller IP parsing in "nsb_setup.sh" script

Fixed the controller IP parsing in "nsb_setup.sh" script. The new
regex expression now accepts "OS_AUTH_URL" as:
  * http://10.237.223.168/identity
  * http://10.237.223.168:5000/identity
  * http://hostname/identity
  * http://hostname:5000/identity

JIRA: YARDSTICK-829

Change-Id: Ifaeab991bcbb6aa7b22c3533ab7554527184878b
Signed-off-by: Rodolfo Alonso Hernandez <rodolfo.alonso.hernandez@intel.com>
7 years agobugfix: tc006, tc079, tc082 miss grafana dashboard in local deployment 01/47401/1
rexlee8776 [Fri, 17 Nov 2017 08:41:06 +0000 (08:41 +0000)]
bugfix: tc006, tc079, tc082 miss grafana dashboard in local deployment

JIRA: YARDSTICK-847

Change-Id: I0750f2d17bac9e0214caf640e4ea1141ea3b4a03
Signed-off-by: rexlee8776 <limingjiang@huawei.com>