summaryrefslogtreecommitdiffstats
AgeCommit message (Collapse)AuthorFilesLines
2018-06-25Merge "Move tests: unit/network_services/nfvi" into stable/fraserEmma Foley3-1/+0
2018-06-25Merge "Add "duration" parameter to test case definition" into stable/fraserRodolfo Alonso Hernandez27-130/+128
2018-06-25Merge "Remove print out of logger exception in TestUtils" into stable/fraserRodolfo Alonso Hernandez1-7/+10
2018-06-25Merge "Cleanup TestYardstickNSCli class" into stable/fraserRodolfo Alonso Hernandez1-18/+32
2018-06-25Merge "Document for Fraser test case results" into stable/fraserEmma Foley26-17/+1962
2018-06-25Move tests: unit/network_services/nfviEmma Foley3-1/+0
* 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: Id330ee1c89d54ef487edb7fe160e5a31d9a3094f (cherry-picked from commit e12f98c2bbed5191714bdc553e7b269b1437cecd)
2018-06-25Add "duration" parameter to test case definitionRodolfo Alonso Hernandez27-130/+128
Add "duration" parameter to test case definition, in scenario:options section. This parameter will be rendered in the traffic profile. If the parameter is not present in the test case scenario options, the default time written in the traffic profile options will be 30 seconds (TrafficProfile.DEFAULT_DURATION = 30). If the traffic profile injection time is not defined, the default injection time will be 30 seconds. testcase:scenario:options:duration (default = 30) render --> traffic_profile:duration parse --> TrafficProfile.duration (default = 30) Target traffic profiles (RFC2544): - RFC2544Profile - IXIARFC2544Profile JIRA: YARDSTICK-1194 Change-Id: I968922e6bb882d7ee15aa1c4db4037face7a3492 Signed-off-by: Rodolfo Alonso Hernandez <rodolfo.alonso.hernandez@intel.com> (cherry picked from commit 1517319fd210d71db72c5e4bfa00fc49ae4fa877)
2018-06-25Improve IXIA IxNetwork library and traffic profile (4)Rodolfo Alonso Hernandez10-293/+343
This patch implements an active wait for the traffic injection. Once the traffic is started, the traffic generator class will poll periodically the IXIA traffic generator chassis to retrieve the status of the traffic ("started", "stopped"). Now the latency statistics are retrieved and reported for each injection period. JIRA: YARDSTICK-1116 Change-Id: I4422e2c88b4fc97b7cac3de8a82b2d75467c4117 Signed-off-by: Rodolfo Alonso Hernandez <rodolfo.alonso.hernandez@intel.com> Signed-off-by: Emma Foley <emma.l.foley@intel.com> (cherry picked from commit a3399d07b83ce0e50d9c0144d00a7ba83a73390f)
2018-06-25Improve IXIA IxNetwork library and traffic profile (3)Rodolfo Alonso Hernandez3-96/+157
This patch modifies IP packet parameters. "IxNextgen.update_ip_packet" modifies the L3 packet according to the test case and setup the IP addresses. JIRA: YARDSTICK-1116 Change-Id: I46ff75ab1989d0e6f5cc876418a015386717e06f Signed-off-by: Rodolfo Alonso Hernandez <rodolfo.alonso.hernandez@intel.com> Signed-off-by: Emma Foley <emma.l.foley@intel.com> (cherry picked from commit e5c78ae3ec1bcf0cb44646c6031fb9c04dd63e4a)
2018-06-25Improve IXIA IxNetwork library and traffic profile (2)Rodolfo Alonso Hernandez7-1158/+621
This patch modifies the way the packet frame and the flow is configured before the injection. "IxNextgen.update_frame" modifies the L2 frame according to the test case and setup the frame rate, frame size, traffic injection duration and MAC addresses. JIRA: YARDSTICK-1116 Change-Id: Ife08f15a4eda24d7835c92c4172b450854d112ee Signed-off-by: Rodolfo Alonso Hernandez <rodolfo.alonso.hernandez@intel.com> Signed-off-by: Emma Foley <emma.l.foley@intel.com> (cherry picked from commit 8d10a6a8447fc2798491a6f3856e21b85fa309ba)
2018-06-25Improve IXIA IxNetwork library and traffic profile (1)Rodolfo Alonso Hernandez4-243/+432
This patch introduces a new way to configure the TCL IxNetwork server. All the configuration is done using the TCL API, removing the need of using the pre-saved configuration file. "IxNextgen.assign_ports" creates and assigns the virtual ports for each physical port defined in the test case. "IxNextgen.create_traffic_item" creates one traffic item and two flow groups per pair of ports, in both directions. "IxNextgen.gt_statistics" retrieves only the required statistics to generate the samples blob in the traffic generator. JIRA: YARDSTICK-1116 Change-Id: I8f1c0c55e99c274b2ed8276ed9a385c502e16d93 Signed-off-by: Rodolfo Alonso Hernandez <rodolfo.alonso.hernandez@intel.com> Signed-off-by: Emma Foley <emma.l.foley@intel.com> (cherry picked from commit ee721fd3e8b77ccfe4252a107a9af8dc41ccc389)
2018-06-25Merge "Add active wait function" into stable/fraserRodolfo Alonso Hernandez3-1/+83
2018-06-25Merge "Add IxNetwork API Python Binding package" into stable/fraserRodolfo Alonso Hernandez17-116/+65
2018-06-25Merge "Use TRex release v2.41 to support both x86 and aarch64" into ↵Rodolfo Alonso Hernandez2-2/+3
stable/fraser
2018-06-22Add active wait functionRodolfo Alonso Hernandez3-1/+83
Added function "wait_until_true". This function will make an active wait until the predicate passed as an argument returns True. If the timeout expires, the function will raise a generic exception or a user defined one passed as an argument. This function will be used in YARDSTICK-1127. JIRA: YARDSTICK-1128 Change-Id: I9854e465ac6b586bf4be39ab4b266d5625b39e30 Signed-off-by: Rodolfo Alonso Hernandez <rodolfo.alonso.hernandez@intel.com> (cherry picked from 099108aab37d1fae1b27f4e2e20136c234df1a52)
2018-06-22Add IxNetwork API Python Binding packageRodolfo Alonso Hernandez17-116/+65
Add IxNetwork python package to the requirements list. This module is needed for the "NSPerf" scenarios using IXIA as traffic generator, when IxNetwork is the program used to handle the IXIA generator. The latest version of this module is 8.40.1124.9 [1]. The license type is MIT. [1] https://pypi.python.org/pypi/ixnetwork JIRA: YARDSTICK-1106 Change-Id: I279933c95994f5120930256a104c4192a0b9900d Signed-off-by: Rodolfo Alonso Hernandez <rodolfo.alonso.hernandez@intel.com>
2018-06-22Merge "Configure ACL via static file" into stable/fraserEmma Foley18-572/+511
2018-06-22Merge "Move tests: unit/network_services/traffic_profile" into stable/fraserEmma Foley12-94/+95
2018-06-22Merge "Cleanup BaseMonitor unit tests" into stable/fraserEmma Foley1-7/+11
2018-06-22Move tests: unit/network_services/traffic_profileEmma Foley12-94/+95
* 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: Id983a2e415d66633331e7fea96a377e2a7589980 (cherry-picked from commit cfc40ad1bb36889e54bc99cb779cfcfa1f3b04dd)
2018-06-22Merge "MQ startup process refactor" into stable/fraserAbhijit Sinha4-33/+66
2018-06-22Merge "Add "host_name_separator" variable to Context class" into stable/fraserEmma Foley9-39/+78
2018-06-22Merge "Move IncorrectConfig, IncorrectSetup and IncorrectNodeSetup to ↵Emma Foley7-68/+51
exceptions" into stable/fraser
2018-06-22Use TRex release v2.41 to support both x86 and aarch64trevortao2-2/+3
Currently Yardstick uses Cisco's TRex release v2.28 which can only support x86, for the consideration of multi-arch support of Yardstick, the trex release v2.41 is now available and it can support multi-arch(both x86 and aarch64) now. For the external lib of v2.41, for x86_64, it looks like: external_libs/pyzmq-14.5.0/python2/intel/ucs4/64bit/zmq for arm64, it looks like: external_libs/pyzmq-14.5.0/python2/arm/ucs4/64bit/zmq So replace the trex release v2.28 with v2.41. JIRA: YARDSTICK-1191 Change-Id: I22dc3499283d48a89da1145cc480fd7d2a93a1cc Signed-off-by: trevortao <trevor.tao@arm.com> (cherry picked from commit 13f19d35a04ffb46ca673e81385779bc46c48781)
2018-06-22Configure ACL via static fileMytnyk, Volodymyr18-572/+511
This patch allows user to configure ACL/vFW SampleVNF ACL via configuration file provided in TC definition. The Yardstick applies the rules to SampleVNF from specified config file + rules generated by Yardstick (default rules). The example of SampleVNF ACL CLI commands generated/applied by Yardstick can be found at (using default ACL config file): ACL VNF ACL CLI commands: acl/tc_heat_rfc2544_ipv4_1rule_1flow_64B_trex.yaml http://paste.openstack.org/show/723303/ vFW VNF ACL CLI commands: vfw/tc_heat_rfc2544_ipv4_1rule_1flow_64B_trex.yaml http://paste.openstack.org/show/723304/ Change-Id: I76a630261a982083b628e3985fc3bec14ca495db Signed-off-by: Mytnyk, Volodymyr <volodymyrx.mytnyk@intel.com> (cherry picked from commit 3fdca97ff5053770161059a34a95fd39463eaecd)
2018-06-22MQ startup process refactorChornyi, TarasX4-33/+66
JIRA: YARDSTICK-1112 Change-Id: Id30236e190bae9fb0f5b5ebd4c5e04798e4fd443 Signed-off-by: Chornyi, TarasX <tarasx.chornyi@intel.com> (cherry picked from commit d38bd854fb2c3eb6c0c4dd34ace2a52af7cf892d)
2018-06-22Merge "Do not start collectd twice when SampleVNF is running on Baremetal" ↵Rodolfo Alonso Hernandez7-75/+175
into stable/fraser
2018-06-22Add scale out TCs with availability zone supportMytnyk, Volodymyr6-1/+546
Add PROX and vFW scale out TCs with availability zone configuration. To be able to specify the availability zone for specific VNF or TG the following example of command line option shoud be used: yardstick -d task start --task-args='{ "num_vnfs": 2, "availability_zone": { "vnf_0": "az_0", "tg_0": "az_0", "vnf_1": "az_1", "tg_1": "az_1", ... }}' <SCALE-OUT-TC-FILE> The steps to run new scale-out TCs is documented in the userguide. JIRA: YARDSTICK-1203 Change-Id: Ib3878485c5483981fe9b48ab02995712bcc31ae5 Signed-off-by: Mytnyk, Volodymyr <volodymyrx.mytnyk@intel.com> (cherry picked from commit 0156b5c37e08f91a37dda08edb854758bbba7413)
2018-06-22Merge "Add --hwlb options as a command line argument for SampleVNF" into ↵Rodolfo Alonso Hernandez10-8/+96
stable/fraser
2018-06-21Move IncorrectConfig, IncorrectSetup and IncorrectNodeSetup to exceptionsRodolfo Alonso Hernandez7-68/+51
JIRA: YARDSTICK-1218 Change-Id: I804065e9bce3e728f5bf9e756a78df8fd28f74ac Signed-off-by: Rodolfo Alonso Hernandez <rodolfo.alonso.hernandez@intel.com> (cherry picked from commit dc0e675f47f4dbf1b54ce9c22878e2e876bc26e8)
2018-06-21Move ErrorClass definition to exceptions moduleRodolfo Alonso Hernandez6-39/+46
JIRA: YARDSTICK-1216 Change-Id: I82556e1d1b0c723221a58e188067cbce560b8338 Signed-off-by: Rodolfo Alonso Hernandez <rodolfo.alonso.hernandez@intel.com> (cherry picked from commit 2bdda85878ed1507d1a91f69c3489bb9ba9d447d)
2018-06-21Merge "Convert SSH custom exceptions to Yardstick exceptions" into stable/fraserRodolfo Alonso Hernandez6-56/+53
2018-06-21Merge "Remove AnsibleCommon class method mock" into stable/fraserRodolfo Alonso Hernandez1-12/+8
2018-06-21Merge "Error when adding SR-IOV interfaces in SR-IOV context" into stable/fraserRodolfo Alonso Hernandez2-12/+18
2018-06-21Merge "Remove __init__ method overriding in HeatContextTestCase" into ↵Rodolfo Alonso Hernandez1-7/+4
stable/fraser
2018-06-21Merge "Bump oslo.messaging version to 5.36.0" into stable/fraserRodolfo Alonso Hernandez1-0/+1
2018-06-21Merge "Set "cmd2" library to version 0.8.6" into stable/fraserRodolfo Alonso Hernandez1-0/+1
2018-06-21Error when adding SR-IOV interfaces in SR-IOV contextRodolfo Alonso Hernandez2-12/+18
Method "add_sriov_interfaces" in Libvirt class throws an error when trying to add SR-IOV interfaces in the XML file. Function "setup_sriov_context" in SriovContext if passing to "_enable_interfaces" method the XML file name instead of passing the XML string. JIRA: YARDSTICK-1189 Change-Id: If021c102311ecb98cb26934f78067dfc720e4291 Signed-off-by: Rodolfo Alonso Hernandez <rodolfo.alonso.hernandez@intel.com> (cherry picked from commit 72df0eaac4a2a1f23439af7f249c2b5d18d1b819)
2018-06-21Remove __init__ method overriding in HeatContextTestCaseRodolfo Alonso Hernandez1-7/+4
Unit test case clases should implement setUp() method instead of overriding __init__() method. JIRA: YARDSTICK-1210 Change-Id: I0f9a10575f9aeebf76dfa84619e59589b3ea83f6 Signed-off-by: Rodolfo Alonso Hernandez <rodolfo.alonso.hernandez@intel.com> (cherry picked from commit 619bed631f064a94ab20ac296802d467ebe32318)
2018-06-21Correctly set PYTHONPATH in DockerfileJohn O Loughlin1-2/+2
JIRA: YARDSTICK-1144 Change-Id: I8c0fe229ed620417a85356e017b171260373c43f Signed-off-by: John O Loughlin <john.oloughlin@intel.com> (cherry picked from commit a114dc39f003beb1bb1ed12ed17fd3a6d0e7deaa)
2018-06-21Document for Fraser test case resultsJingLu526-17/+1962
JIRA: YARDSTICK-1132 In B and C releases, Yardstick provides an overview of the results of test cases developed by Yardstick, executed on OPNFV community labs. This work has not been done for the D and E releases, although result analysis for Euphrates is available at (https://wiki.opnfv.org/display/yardstick/Euphrates+release+test+results+analysis). We plan to restart to provide a basic test case results analysis for Fraser and compare performance data with Euphrates. This JIRA ticket will be resolved into 3 commits: 1. Document for E release test case data; 2. Document for F release test case data; 3. Document for results analysis. Change-Id: I3c59851c8878ba37145e6ad6958272a62bad3f52 Signed-off-by: JingLu5 <lvjing5@huawei.com> (cherry picked from commit 3f0df920c71529024a69ad65c2bebabbcbde6022)
2018-06-20Convert SSH custom exceptions to Yardstick exceptionsRodolfo Alonso Hernandez6-56/+53
JIRA: YARDSTICK-1215 Change-Id: I5ecfd3dccd91b07cd8de5309dfa1a372eff16ed0 Signed-off-by: Rodolfo Alonso Hernandez <rodolfo.alonso.hernandez@intel.com> (cherry picked from commit dde8fa628483deec352e176cea8decdbf6bed7e8)
2018-06-20Add --hwlb options as a command line argument for SampleVNFChornyi, TarasX10-8/+96
To enable HWLB queues in samplevnf on supported hardware (e.g Intel Fortville) --hwlb option needs to be passed as a VNF command line argument. JIRA: YARDSTICK-1159 Change-Id: I6e5c098dc71a711252b545c7622ee52085fa81f0 Signed-off-by: Chornyi, TarasX <tarasx.chornyi@intel.com> (cherry picked from commit 1c8bfeb11a620c63ffd9fcd7f8735ded4521e077)
2018-06-20Do not start collectd twice when SampleVNF is running on BaremetalChornyi, TarasX7-75/+175
JIRA: YARDSTICK-1167 Change-Id: I7591bbb2a84ee4039a20c5da2914f1e374299015 Signed-off-by: Chornyi, TarasX <tarasx.chornyi@intel.com> (cherry picked from commit ba2ca2819a8b0312627742d126030c3dac15052f)
2018-06-20Cleanup BaseMonitor unit testsRodolfo Alonso Hernandez1-7/+11
Stop multiprocessing queues to avoid BrokenPipe exception. Assert correctly the raise of exceptions. JIRA: YARDSTICK-1229 Change-Id: I1a1c92c49a439283a35c9a69b59d6866f35ec09a Signed-off-by: Rodolfo Alonso Hernandez <rodolfo.alonso.hernandez@intel.com> (cherry picked from commit 94d56c9f7cd99baea08629eaf3e580d020494383)
2018-06-20Add "host_name_separator" variable to Context classRodolfo Alonso Hernandez9-39/+78
This feature will provide Kubernetes context the ability to handle the context name inside the class itself, providing to the developer an abstraction of the possible naming limitations in Kubernetes. E.g.: "dot" character in Pod names is no allowed [1]. [1] https://github.com/fabric8io/fluent-plugin-kubernetes_metadata_filter/issues/58 JIRA: YARDSTICK-1188 Change-Id: I82121f970b550170357a443b6340be7900602a57 Signed-off-by: Rodolfo Alonso Hernandez <rodolfo.alonso.hernandez@intel.com> (cherry picked from commit a2ee61016721386b40caa4e2d72f61be8adec94a)
2018-06-20Remove print out of logger exception in TestUtilsRodolfo Alonso Hernandez1-7/+10
Remove print out of logger exception while executing "TestUtils.test_parse_ini_file_missing_section_header" test case. JIRA: YARDSTICK-1225 Change-Id: I2a4e447c5d119fb9585b477d74f3d0a002c8278e Signed-off-by: Rodolfo Alonso Hernandez <rodolfo.alonso.hernandez@intel.com> (cherry picked from commit 99d51230daac3452f5295b4ea39890d8920e6ca3)
2018-06-20Cleanup TestYardstickNSCli classRodolfo Alonso Hernandez1-18/+32
Remove the console output during the test execution. Refactor the "parse_arguments" test case. JIRA: YARDSTICK-1224 Change-Id: I68954b986dbea70752adb121e0445e162bdfddcb Signed-off-by: Rodolfo Alonso Hernandez <rodolfo.alonso.hernandez@intel.com> (cherry picked from commit a8ddeef62ee1f9795881994380f49ce88a760102)
2018-06-20Bump oslo.messaging version to 5.36.0Rodolfo Alonso Hernandez1-0/+1
A decoding error was introduced in the AMQP libraries installed by oslo.messaging version 5.30.2. Error example: File "/home/jenkins/opnfv/slave_root/workspace/yardstick-verify-master/ .tox/functional/local/lib/python2.7/site-packages/amqp/utils.py", line 89, in str_to_bytes return s.encode('utf-8') UnicodeDecodeError: 'ascii' codec can't decode byte 0xd2 in position 3: ordinal not in range(128) This problem is fixed in the library versions installed in version 5.36.0. JIRA: YARDSTICK-1204 Change-Id: I4719d8e0a0891ebbb3b87c31d593d15f897ef53a Signed-off-by: Rodolfo Alonso Hernandez <rodolfo.alonso.hernandez@intel.com> (cherry-picked from commit bcc841699c8072a74378774593729931e81b4398)
2018-06-20Set "cmd2" library to version 0.8.6Rodolfo Alonso Hernandez1-0/+1
Last "cmd2" version, 0.9.0, removed Python 2+ support [1]. In order to support Python 2.7, version 0.8.6 (or earlier) must be installed. [1] https://github.com/python-cmd2/cmd2/commit/e54e5a5b891548df4df0acb04b6e607ad8f871b1 JIRA: YARDSTICK-1205 Change-Id: Ic2fe57438720de5b21c75f9456e653c6facf3ae9 Signed-off-by: Rodolfo Alonso Hernandez <rodolfo.alonso.hernandez@intel.com> (cherry picked from commit c4d821c58858418ce8dfec95426f06ae11b25c7b)