summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorFilip Tehlar <ftehlar@cisco.com>2016-10-06 13:20:58 +0200
committerFilip Tehlar <ftehlar@cisco.com>2016-10-06 14:03:30 +0200
commitabc6884972bc0792f4817a3822f13128d716c889 (patch)
tree343e9a7170c424dd8774d5f57c9123096a7da91f
parent18b298a6096f95362c4f38270166f335790f4d0b (diff)
Fix some test issues
* add sleep to v6 eid virt test * fix failover test * reuse topology setup at failover test Change-Id: I7f1234696a9cec7931984c4dcee79c2cf90287d1 Signed-off-by: Filip Tehlar <ftehlar@cisco.com>
-rw-r--r--tests/data_plane/configs/vpp_lite_config/basic/4o4_failover/vpp1.config23
-rw-r--r--tests/data_plane/configs/vpp_lite_config/basic/4o4_failover/vpp2.config18
-rw-r--r--tests/data_plane/vpp_lite_topo/config.sh7
-rw-r--r--tests/data_plane/vpp_lite_topo/test_driver/resolver_failover.sh18
-rw-r--r--tests/data_plane/vpp_lite_topo/topologies/2_node_topo.sh16
-rw-r--r--tests/data_plane/vpp_lite_topo/topologies/basic_two_odls.sh102
-rw-r--r--tests/data_plane/vpp_lite_topo/topologies/two_customers_topo.sh1
7 files changed, 39 insertions, 146 deletions
diff --git a/tests/data_plane/configs/vpp_lite_config/basic/4o4_failover/vpp1.config b/tests/data_plane/configs/vpp_lite_config/basic/4o4_failover/vpp1.config
index 72ac2ab..318f302 100644
--- a/tests/data_plane/configs/vpp_lite_config/basic/4o4_failover/vpp1.config
+++ b/tests/data_plane/configs/vpp_lite_config/basic/4o4_failover/vpp1.config
@@ -1,15 +1,8 @@
-create host-interface name vpp1
-set int state host-vpp1 up
-set int ip address host-vpp1 6.0.1.1/24
-
-create host-interface name intervpp1
-set int state host-intervpp1 up
-set int ip address host-intervpp1 6.0.3.1/24
-
-lisp enable
-
-lisp locator-set add ls1 iface host-intervpp1 p 1 w 1
-lisp eid-table add eid 6.0.1.0/24 locator-set ls1
-
-lisp map-resolver add 6.0.3.99
-lisp map-resolver add 6.0.3.100
+create_host_iface vpp1 6.0.1.1/24
+create_host_iface intervpp1 6.0.3.1/24
+
+lisp_state enable
+lisp_locator_set_with_locator ls1 host-intervpp1 1 1
+lisp_local_eid eid 6.0.1.0/24 locator-set ls1
+lisp_map_resolver 6.0.3.199
+lisp_map_resolver 6.0.3.200
diff --git a/tests/data_plane/configs/vpp_lite_config/basic/4o4_failover/vpp2.config b/tests/data_plane/configs/vpp_lite_config/basic/4o4_failover/vpp2.config
index 1bac043..de7a679 100644
--- a/tests/data_plane/configs/vpp_lite_config/basic/4o4_failover/vpp2.config
+++ b/tests/data_plane/configs/vpp_lite_config/basic/4o4_failover/vpp2.config
@@ -1,13 +1,7 @@
-create host-interface name vpp2
-set int state host-vpp2 up
-set int ip address host-vpp2 6.0.2.1/24
+create_host_iface vpp2 6.0.2.1/24
+create_host_iface intervpp2 6.0.3.2/24
-create host-interface name intervpp2
-set int state host-intervpp2 up
-set int ip address host-intervpp2 6.0.3.2/24
-
-lisp enable
-
-lisp locator-set add ls1 iface host-intervpp2 p 1 w 1
-lisp eid-table add eid 6.0.2.0/24 locator-set ls1
-lisp map-resolver add 6.0.3.100
+lisp_state enable
+lisp_locator_set_with_locator ls1 host-intervpp2 1 1
+lisp_local_eid eid 6.0.2.0/24 locator-set ls1
+lisp_map_resolver 6.0.3.200
diff --git a/tests/data_plane/vpp_lite_topo/config.sh b/tests/data_plane/vpp_lite_topo/config.sh
index a546c52..57b616a 100644
--- a/tests/data_plane/vpp_lite_topo/config.sh
+++ b/tests/data_plane/vpp_lite_topo/config.sh
@@ -138,3 +138,10 @@ function assert_rc_ok
exit $test_result
fi
}
+
+function start_map_resolver
+{
+ echo "starting dummy map resolver on interface $1"
+ python scripts/dummy_mr.py "$1" 4342 &
+ mr_id=$!
+}
diff --git a/tests/data_plane/vpp_lite_topo/test_driver/resolver_failover.sh b/tests/data_plane/vpp_lite_topo/test_driver/resolver_failover.sh
index ea3a212..a278f56 100644
--- a/tests/data_plane/vpp_lite_topo/test_driver/resolver_failover.sh
+++ b/tests/data_plane/vpp_lite_topo/test_driver/resolver_failover.sh
@@ -1,9 +1,6 @@
source config.sh
source odl_utils.sh
-source topologies/basic_two_odls.sh
-
-ODL_CONFIG_FILE1="vpp1.json"
-ODL_CONFIG_FILE2="vpp2.json"
+source topologies/2_node_topo.sh
if [ "$1" == "clean" ] ; then
basic_two_odls_clean
@@ -15,18 +12,11 @@ if [[ $(id -u) != 0 ]]; then
exit 1
fi
-function start_map_resolver
-{
- echo "starting dummy map resolver on interface $1"
- python scripts/dummy_mr.py "$1" 4342 &
- mr_id=$!
-}
-
function test_resolver_failover
{
- basic_two_odls_setup
+ 2_node_topo_setup no_odl
- start_map_resolver "6.0.3.100"
+ start_map_resolver "6.0.3.200"
test_result=1
@@ -38,7 +28,7 @@ function test_resolver_failover
# test done
maybe_pause
- basic_two_odls_clean
+ 2_node_topo_clean no_odl
kill $mr_id
print_status $rc "No ICMP response!"
diff --git a/tests/data_plane/vpp_lite_topo/topologies/2_node_topo.sh b/tests/data_plane/vpp_lite_topo/topologies/2_node_topo.sh
index 9e8cf6d..c882c0e 100644
--- a/tests/data_plane/vpp_lite_topo/topologies/2_node_topo.sh
+++ b/tests/data_plane/vpp_lite_topo/topologies/2_node_topo.sh
@@ -5,13 +5,15 @@
# | MR |
# | |
# +--------+
-# |6.0.3.100
+# odl |6.0.3.100
#6:0:1::2 |6:0:3::100
#6.0.1.2 vpp1 +--------+ | +--------+
# +---------+ |intervpp1 |intervpp2| |vpp2
# | VPP1 +----------+---------+ VPP2 +---------+
-# | | | | 6.0.2.2
-# +--------+ +--------+ 6:0:2::2
+# | | | | | 6.0.2.2
+# +--------+ | +--------+ 6:0:2::2
+# +mr
+# 6.0.3.200
#
function set_arp
@@ -47,6 +49,7 @@ function 2_node_topo_clean
ip link del dev veth_intervpp1 &> /dev/null
ip link del dev veth_intervpp2 &> /dev/null
ip link del dev veth_odl &> /dev/null
+ ip link del dev veth_mr &> /dev/null
ip netns del vppns1 &> /dev/null
ip netns del vppns2 &> /dev/null
ip netns del intervppns &> /dev/null
@@ -68,18 +71,22 @@ function 2_node_topo_setup
ip link add veth_intervpp1 type veth peer name intervpp1
ip link add veth_intervpp2 type veth peer name intervpp2
ip link add veth_odl type veth peer name odl
+ ip link add veth_mr type veth peer name mr
ip link set dev intervpp1 up
ip link set dev intervpp2 up
ip link set dev odl up
+ ip link set dev mr up
ip link set dev veth_intervpp1 up netns intervppns
ip link set dev veth_intervpp2 up netns intervppns
ip link set dev veth_odl up netns intervppns
+ ip link set dev veth_mr up netns intervppns
# create bridge in intervppns and add vpp and odl interfaces
ip netns exec intervppns brctl addbr vppbr
ip netns exec intervppns brctl addif vppbr veth_intervpp1
ip netns exec intervppns brctl addif vppbr veth_intervpp2
ip netns exec intervppns brctl addif vppbr veth_odl
+ ip netns exec intervppns brctl addif vppbr veth_mr
ip netns exec intervppns ifconfig vppbr up
# create and configure 1st veth client to vpp pair
@@ -115,6 +122,9 @@ function 2_node_topo_setup
ip addr add 6:0:3::100/64 dev odl
ethtool --offload odl rx off tx off
+ ip addr add 6.0.3.200/24 dev mr
+ ethtool --offload mr rx off tx off
+
# generate config files
./scripts/generate_config.py ${VPP_LITE_CONF} ${CFG_METHOD}
diff --git a/tests/data_plane/vpp_lite_topo/topologies/basic_two_odls.sh b/tests/data_plane/vpp_lite_topo/topologies/basic_two_odls.sh
deleted file mode 100644
index 7e6eda6..0000000
--- a/tests/data_plane/vpp_lite_topo/topologies/basic_two_odls.sh
+++ /dev/null
@@ -1,102 +0,0 @@
-
-#!/usr/bin/env bash
-
-function basic_two_odls_clean
-{
- echo "Clearing all VPP instances.."
- pkill vpp --signal 9
- rm /dev/shm/*
-
- echo "Cleaning topology.."
- ip netns exec intervppns ifconfig vppbr down
- ip netns exec intervppns brctl delbr vppbr
- ip link del dev veth_vpp1 &> /dev/null
- ip link del dev veth_vpp2 &> /dev/null
- ip link del dev veth_intervpp1 &> /dev/null
- ip link del dev veth_intervpp2 &> /dev/null
- ip link del dev veth_odl1 &> /dev/null
- ip link del dev veth_odl2 &> /dev/null
- ip netns del vppns1 &> /dev/null
- ip netns del vppns2 &> /dev/null
- ip netns del intervppns &> /dev/null
-}
-
-function basic_two_odls_setup
-{
-
- # create vpp to clients and inter-vpp namespaces
- ip netns add vppns1
- ip netns add vppns2
- ip netns add intervppns
-
- # create vpp and odl interfaces and set them in intervppns
- ip link add veth_intervpp1 type veth peer name intervpp1
- ip link add veth_intervpp2 type veth peer name intervpp2
- ip link add veth_odl1 type veth peer name odl1
- ip link add veth_odl2 type veth peer name odl2
- ip link set dev intervpp1 up
- ip link set dev intervpp2 up
- ip link set dev odl1 up
- ip link set dev odl2 up
- ip link set dev veth_intervpp1 up netns intervppns
- ip link set dev veth_intervpp2 up netns intervppns
- ip link set dev veth_odl1 up netns intervppns
- ip link set dev veth_odl2 up netns intervppns
-
- # create bridge in intervppns and add vpp and odl interfaces
- ip netns exec intervppns brctl addbr vppbr
- ip netns exec intervppns brctl addif vppbr veth_intervpp1
- ip netns exec intervppns brctl addif vppbr veth_intervpp2
- ip netns exec intervppns brctl addif vppbr veth_odl1
- ip netns exec intervppns brctl addif vppbr veth_odl2
- ip netns exec intervppns ifconfig vppbr up
-
- # create and configure 1st veth client to vpp pair
- ip link add veth_vpp1 type veth peer name vpp1
- ip link set dev vpp1 up
- ip link set dev veth_vpp1 up netns vppns1
-
- # create and configure 2nd veth client to vpp pair
- ip link add veth_vpp2 type veth peer name vpp2
- ip link set dev vpp2 up
- ip link set dev veth_vpp2 up netns vppns2
-
- ip netns exec vppns1 \
- bash -c "
- ip link set dev lo up
- ip addr add 6.0.1.2/24 dev veth_vpp1
- ip route add 6.0.2.0/24 via 6.0.1.1
- "
-
- ip netns exec vppns2 \
- bash -c "
- ip link set dev lo up
- ip addr add 6.0.2.2/24 dev veth_vpp2
- ip route add 6.0.1.0/24 via 6.0.2.1
- "
-
- # set odl iface ip and disable checksum offloading
- ip addr add 6.0.3.100/24 dev odl1
- ethtool --offload odl1 rx off tx off
-
- # generate config files
- ./scripts/generate_config.py ${VPP_LITE_CONF} ${CFG_METHOD}
-
- start_vpp 5002 vpp1
- start_vpp 5003 vpp2
-
- echo "* Selected configuration method: $CFG_METHOD"
- if [ "$CFG_METHOD" == "cli" ] ; then
- echo "exec ${VPP_LITE_CONF}/vpp1.cli" | nc 0 5002
- echo "exec ${VPP_LITE_CONF}/vpp2.cli" | nc 0 5003
- elif [ "$CFG_METHOD" == "vat" ] ; then
- sleep 2
- ${VPP_API_TEST} chroot prefix vpp1 script in ${VPP_LITE_CONF}/vpp1.vat
- ${VPP_API_TEST} chroot prefix vpp2 script in ${VPP_LITE_CONF}/vpp2.vat
- else
- echo "=== WARNING:"
- echo "=== Invalid configuration method selected!"
- echo "=== To resolve this set env variable CFG_METHOD to vat or cli."
- echo "==="
- fi
-}
diff --git a/tests/data_plane/vpp_lite_topo/topologies/two_customers_topo.sh b/tests/data_plane/vpp_lite_topo/topologies/two_customers_topo.sh
index 645077d..f594d45 100644
--- a/tests/data_plane/vpp_lite_topo/topologies/two_customers_topo.sh
+++ b/tests/data_plane/vpp_lite_topo/topologies/two_customers_topo.sh
@@ -112,6 +112,7 @@ function two_customers_topo_setup {
# generate config files
./scripts/generate_config.py ${VPP_LITE_CONF} ${CFG_METHOD}
+ sleep 3
start_vpp 5002 vpp1
start_vpp 5003 vpp2