aboutsummaryrefslogtreecommitdiffstats
path: root/conf
diff options
context:
space:
mode:
authorMartin Klozik <martinx.klozik@intel.com>2017-08-31 15:01:18 +0200
committerMartin Klozik <martinx.klozik@intel.com>2017-11-03 08:36:29 +0000
commitb1534957e463b5e34957a8d48ce5c6b0552ffbb4 (patch)
tree10985b181d62cffb4ea36355de66dc8ea4edbf8a /conf
parent87f6e48ca1b17361955f0d31551b0c6360028688 (diff)
teststeps: Improvements and bugfixing of teststeps
This patch introduces several improvements and small bugfixes of teststeps. These changes were identified during implementation of OVS/DPDK regression tests. Patch content: * teststeps: step aliases were implemented * teststeps: improved filtering by regex for any step, which returns string or list of stings; filter will process all lines * teststeps: support for log object * teststeps: support for trafficgen get_results call * teststeps: configurable suppression of step validation * trafficgen: remove old results before traffic is executed * trafficgen: support for flow control on/off (IxNet) * trafficgen: support for configurable learning frames (IxNet) * trafficgen: support for runtime changes of TRAFFICGEN_PKT_SIZES, _DURATION and _LOSSRATE * vnf: flush pexpect output of previous commands * vnf: use execute_and_wait() to ensure correct cmds order * vnf: dpdk vHost User interface name set according to its type, e.g. dpdkvhostuserclient * vswitch: support for OVS restart * decap: simplify configuration of tunneling decapsulation tests * settings: values of all configuration options are restored after TC execution * modified formatting of test description used by --list * testcase name and description is logged before its execution * small bugfixes JIRA: VSPERF-539 Change-Id: I550ba0d897ece89abd3f33d6d66f545c4d863e7b Signed-off-by: Martin Klozik <martinx.klozik@intel.com> Reviewed-by: Al Morton <acmorton@att.com> Reviewed-by: Christian Trautman <ctrautma@redhat.com> Reviewed-by: Sridhar Rao <sridhar.rao@spirent.com> Reviewed-by: Trevor Cooper <trevor.cooper@intel.com>
Diffstat (limited to 'conf')
-rw-r--r--conf/03_traffic.conf15
-rw-r--r--conf/04_vnf.conf2
-rw-r--r--conf/__init__.py12
-rw-r--r--conf/integration/02_vswitch.conf6
-rw-r--r--conf/integration/03_traffic.conf6
5 files changed, 31 insertions, 10 deletions
diff --git a/conf/03_traffic.conf b/conf/03_traffic.conf
index b5533833..6cfbbf23 100644
--- a/conf/03_traffic.conf
+++ b/conf/03_traffic.conf
@@ -71,6 +71,18 @@ LOG_FILE_TRAFFIC_GEN = 'traffic-gen.log'
# "IP" - flow is defined by ingress ports
# and src and dst IP addresses
# Default value: "port"
+# 'flow_control' - Controls flow control support by traffic generator.
+# Supported values:
+# False - flow control is disabled
+# True - flow control is enabled
+# Default value: False
+# Note: Currently it is supported by IxNet only
+# 'learning_frames' - Controls learning frames support by traffic generator.
+# Supported values:
+# False - learning freames are disabled
+# True - learning freames are enabled
+# Default value: True
+# Note: Currently it is supported by IxNet only
# 'l2' - A dictionary with l2 network layer details. Supported
# values are:
# 'srcmac' - Specifies source MAC address filled by traffic generator.
@@ -143,7 +155,8 @@ TRAFFIC = {
'stream_type' : 'L4',
'pre_installed_flows' : 'No', # used by vswitch implementation
'flow_type' : 'port', # used by vswitch implementation
-
+ 'flow_control' : False, # supported only by IxNet
+ 'learning_frames' : True, # supported only by IxNet
'l2': {
'framesize': 64,
'srcmac': '00:00:00:00:00:00',
diff --git a/conf/04_vnf.conf b/conf/04_vnf.conf
index eafec74b..37fbe2b1 100644
--- a/conf/04_vnf.conf
+++ b/conf/04_vnf.conf
@@ -96,6 +96,8 @@ GUEST_SHARED_DRIVE_TYPE = ['scsi']
# 'linux_bridge' - linux bridge will be configured
# 'buildin' - nothing will be configured by vsperf; VM image must
# ensure traffic forwarding between its interfaces
+# 'clean' - nothing will be configured, but automatic login will
+# be performed; Useful for stepdriven testcases.
# For 2 VNFs you may use ['testpmd', 'l2fwd']
GUEST_LOOPBACK = ['testpmd']
diff --git a/conf/__init__.py b/conf/__init__.py
index 808cfc97..a7c0ee5d 100644
--- a/conf/__init__.py
+++ b/conf/__init__.py
@@ -189,6 +189,18 @@ class Settings(object):
else:
setattr(self, key.upper(), conf[key])
+ def restore_from_dict(self, conf):
+ """
+ Restore ``settings`` with values found in ``conf``.
+
+ Method will drop all configuration options and restore their
+ values from conf dictionary
+ """
+ self.__dict__.clear()
+ tmp_conf = copy.deepcopy(conf)
+ for key in tmp_conf:
+ self.setValue(key, tmp_conf[key])
+
def load_from_env(self):
"""
Update ``settings`` with values found in the environment.
diff --git a/conf/integration/02_vswitch.conf b/conf/integration/02_vswitch.conf
index 68eaf73e..63ffe1bc 100644
--- a/conf/integration/02_vswitch.conf
+++ b/conf/integration/02_vswitch.conf
@@ -23,12 +23,6 @@ TUNNEL_EXTERNAL_BRIDGE_IP = '192.168.240.1/24'
# vxlan|gre|geneve
TUNNEL_TYPE = 'vxlan'
-# The receiving NIC of VXLAN traffic
-# Used for OVS Vanilla Decap
-DUT_NIC1_MAC = ''
-# Used for OVS DPDK Decap
-DUT_NIC2_MAC = ''
-
#Tunnel bridge configuration for P-TUN-P(VxLAN) deployment scenario
# to test VxLAN performance without any overlay ingress traffic by doing the
# encap decap inside the virtual switch itself.
diff --git a/conf/integration/03_traffic.conf b/conf/integration/03_traffic.conf
index e78e2668..5126f515 100644
--- a/conf/integration/03_traffic.conf
+++ b/conf/integration/03_traffic.conf
@@ -29,7 +29,7 @@ VXLAN_VNI = '99'
# '00:1b:21:b3:48:a9'}
VXLAN_FRAME_L2 = {'srcmac': '01:02:03:04:05:06',
- 'dstmac': DUT_NIC2_MAC,
+ 'dstmac': '06:05:04:03:02:01',
}
# VXLAN is supported both in IxNetwork and IXIA IxExplorer
@@ -71,7 +71,7 @@ VXLAN_FRAME_L4 = {'srcport': 4789,
# TEST frame
# dstmac should be set to the MAC address of the DUT's receiving port
GRE_FRAME_L2 = {'srcmac': '01:02:03:04:05:06',
- 'dstmac': DUT_NIC2_MAC,
+ 'dstmac': '06:05:04:03:02:01',
}
GRE_FRAME_L3 = {'proto': 'gre',
@@ -95,7 +95,7 @@ GRE_FRAME_L4 = {'srcport': 0,
# TEST frame
# dstmac should be set to the MAC address of the DUT's receiving port
GENEVE_FRAME_L2 = {'srcmac': '01:02:03:04:05:06',
- 'dstmac': DUT_NIC2_MAC,
+ 'dstmac': '06:05:04:03:02:01',
}
GENEVE_FRAME_L3 = {'proto': 'udp',