From ae57efc8dc2cd1d70352497b2cb6d57cddb06fa2 Mon Sep 17 00:00:00 2001 From: Filip Tehlar Date: Wed, 28 Sep 2016 14:31:35 +0200 Subject: Add adjacency test * add 4o4 and 6o6 LISP adjacency tests * rename basic_topo file to 2_node_topo Change-Id: Iea386b10948437f5b6ee3c5539deb22bc923f88e Signed-off-by: Filip Tehlar --- .../basic/4o4_no_odl_adj/vpp1.config | 8 ++ .../basic/4o4_no_odl_adj/vpp2.config | 8 ++ .../basic/6o6_no_odl_adj/vpp1.config | 8 ++ .../basic/6o6_no_odl_adj/vpp2.config | 8 ++ .../vpp_lite_topo/scripts/cmd_mappings.py | 1 + .../data_plane/vpp_lite_topo/test_driver/basic.sh | 10 +- .../test_driver/basic_multi_traffic.sh | 15 +-- .../vpp_lite_topo/test_driver/basic_no_odl.sh | 10 +- .../vpp_lite_topo/test_driver/basic_single_icmp.sh | 29 +++++ .../tests/test_basic_4o4_no_odl_with_adjacency.sh | 10 ++ .../tests/test_basic_6o6_no_odl_with_adjacency.sh | 10 ++ .../vpp_lite_topo/topologies/2_node_topo.sh | 143 +++++++++++++++++++++ .../vpp_lite_topo/topologies/basic_topo.sh | 110 ---------------- 13 files changed, 242 insertions(+), 128 deletions(-) create mode 100644 tests/data_plane/configs/vpp_lite_config/basic/4o4_no_odl_adj/vpp1.config create mode 100644 tests/data_plane/configs/vpp_lite_config/basic/4o4_no_odl_adj/vpp2.config create mode 100644 tests/data_plane/configs/vpp_lite_config/basic/6o6_no_odl_adj/vpp1.config create mode 100644 tests/data_plane/configs/vpp_lite_config/basic/6o6_no_odl_adj/vpp2.config create mode 100644 tests/data_plane/vpp_lite_topo/test_driver/basic_single_icmp.sh create mode 100755 tests/data_plane/vpp_lite_topo/tests/test_basic_4o4_no_odl_with_adjacency.sh create mode 100755 tests/data_plane/vpp_lite_topo/tests/test_basic_6o6_no_odl_with_adjacency.sh create mode 100644 tests/data_plane/vpp_lite_topo/topologies/2_node_topo.sh delete mode 100644 tests/data_plane/vpp_lite_topo/topologies/basic_topo.sh diff --git a/tests/data_plane/configs/vpp_lite_config/basic/4o4_no_odl_adj/vpp1.config b/tests/data_plane/configs/vpp_lite_config/basic/4o4_no_odl_adj/vpp1.config new file mode 100644 index 0000000..b348b11 --- /dev/null +++ b/tests/data_plane/configs/vpp_lite_config/basic/4o4_no_odl_adj/vpp1.config @@ -0,0 +1,8 @@ +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_remote_mapping eid 6.0.2.0/24 rloc 6.0.3.2 +lisp_adjacency seid 6.0.1.0/24 deid 6.0.2.0/24 diff --git a/tests/data_plane/configs/vpp_lite_config/basic/4o4_no_odl_adj/vpp2.config b/tests/data_plane/configs/vpp_lite_config/basic/4o4_no_odl_adj/vpp2.config new file mode 100644 index 0000000..264d9ca --- /dev/null +++ b/tests/data_plane/configs/vpp_lite_config/basic/4o4_no_odl_adj/vpp2.config @@ -0,0 +1,8 @@ +create_host_iface vpp2 6.0.2.1/24 +create_host_iface intervpp2 6.0.3.2/24 + +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_remote_mapping eid 6.0.1.0/24 rloc 6.0.3.1 +lisp_adjacency seid 6.0.2.0/24 deid 6.0.1.0/24 diff --git a/tests/data_plane/configs/vpp_lite_config/basic/6o6_no_odl_adj/vpp1.config b/tests/data_plane/configs/vpp_lite_config/basic/6o6_no_odl_adj/vpp1.config new file mode 100644 index 0000000..22cb8fb --- /dev/null +++ b/tests/data_plane/configs/vpp_lite_config/basic/6o6_no_odl_adj/vpp1.config @@ -0,0 +1,8 @@ +create_host_iface vpp1 6:0:1::1/64 +create_host_iface intervpp1 6:0:3::1/64 + +lisp_state enable +lisp_locator_set_with_locator ls1 host-intervpp1 1 1 +lisp_local_eid eid 6:0:1::0/64 locator-set ls1 +lisp_remote_mapping eid 6:0:2::0/64 rloc 6:0:3::2 +lisp_adjacency seid 6:0:1::0/64 deid 6:0:2::0/64 diff --git a/tests/data_plane/configs/vpp_lite_config/basic/6o6_no_odl_adj/vpp2.config b/tests/data_plane/configs/vpp_lite_config/basic/6o6_no_odl_adj/vpp2.config new file mode 100644 index 0000000..72829af --- /dev/null +++ b/tests/data_plane/configs/vpp_lite_config/basic/6o6_no_odl_adj/vpp2.config @@ -0,0 +1,8 @@ +create_host_iface vpp2 6:0:2::1/64 +create_host_iface intervpp2 6:0:3::2/64 + +lisp_state enable +lisp_locator_set_with_locator ls1 host-intervpp2 1 1 +lisp_local_eid eid 6:0:2::0/64 locator-set ls1 +lisp_remote_mapping eid 6:0:1::0/64 rloc 6:0:3::1 +lisp_adjacency deid 6:0:1::0/64 seid 6:0:2::0/64 diff --git a/tests/data_plane/vpp_lite_topo/scripts/cmd_mappings.py b/tests/data_plane/vpp_lite_topo/scripts/cmd_mappings.py index 87ec8cb..d0d9f0f 100644 --- a/tests/data_plane/vpp_lite_topo/scripts/cmd_mappings.py +++ b/tests/data_plane/vpp_lite_topo/scripts/cmd_mappings.py @@ -58,6 +58,7 @@ SimpleMapping('lisp_map_resolver', 'lisp map-resolver', 'lisp_add_del_map_resolv SimpleMapping('lisp_local_eid', 'lisp eid-table', 'lisp_add_del_local_eid') SimpleMapping('lisp_remote_mapping', 'lisp remote-mapping', 'lisp_add_del_remote_mapping') SimpleMapping('lisp_pitr', 'lisp pitr ls', 'lisp_pitr_set_locator_set locator-set') +SimpleMapping('lisp_adjacency', 'lisp adjacency', 'lisp_add_del_adjacency') SimpleMapping('set_if_ip', 'set int ip address', 'sw_interface_add_del_address') CustomMapping('lisp_eid_map_bd', diff --git a/tests/data_plane/vpp_lite_topo/test_driver/basic.sh b/tests/data_plane/vpp_lite_topo/test_driver/basic.sh index cd10d4c..88753bf 100644 --- a/tests/data_plane/vpp_lite_topo/test_driver/basic.sh +++ b/tests/data_plane/vpp_lite_topo/test_driver/basic.sh @@ -1,13 +1,13 @@ source config.sh source odl_utils.sh -source topologies/basic_topo.sh +source topologies/2_node_topo.sh ODL_CONFIG_FILE1="vpp1.json" ODL_CONFIG_FILE2="vpp2.json" ODL_CONFIG_FILE3="update_vpp2.json" if [ "$1" == "clean" ] ; then - basic_topo_clean + 2_node_topo_clean exit 0 fi @@ -19,14 +19,14 @@ fi function test_basic { if [ "$3" != "no_setup" ] ; then - basic_topo_setup + 2_node_topo_setup fi maybe_pause test_result=1 ip netns exec vppns1 "${1}" -w 15 -c 1 "${2}" - assert_rc_ok $? basic_topo_clean "No ICMP response!" + assert_rc_ok $? 2_node_topo_clean "No ICMP response!" maybe_pause # change IP addresses of destination RLOC @@ -42,7 +42,7 @@ function test_basic # test done maybe_pause - basic_topo_clean + 2_node_topo_clean print_status $rc "No ICMP response!" exit $test_result } diff --git a/tests/data_plane/vpp_lite_topo/test_driver/basic_multi_traffic.sh b/tests/data_plane/vpp_lite_topo/test_driver/basic_multi_traffic.sh index 79456b7..ee24891 100644 --- a/tests/data_plane/vpp_lite_topo/test_driver/basic_multi_traffic.sh +++ b/tests/data_plane/vpp_lite_topo/test_driver/basic_multi_traffic.sh @@ -1,13 +1,13 @@ source config.sh source odl_utils.sh -source topologies/basic_topo.sh +source topologies/2_node_topo.sh ODL_CONFIG_FILE1="vpp1.json" ODL_CONFIG_FILE2="vpp2.json" ODL_CONFIG_FILE3="update_vpp2.json" if [ "$1" == "clean" ] ; then - basic_topo_clean + 2_node_topo_clean exit 0 fi @@ -18,7 +18,7 @@ fi function test_basic_multi_traffic { - basic_topo_setup + 2_node_topo_setup # additional setup ODL_CONFIG_DIR=`pwd`/../configs/odl/basic/4o4 @@ -30,10 +30,10 @@ function test_basic_multi_traffic maybe_pause ip netns exec vppns1 "${1}" -w 15 -c 1 "${2}" - assert_rc_ok $? basic_topo_clean "No response received!" + assert_rc_ok $? 2_node_topo_clean "No response received!" ip netns exec vppns1 "${3}" -w 15 -c 1 "${4}" - assert_rc_ok $? basic_topo_clean "No response received!" + assert_rc_ok $? 2_node_topo_clean "No response received!" # change IP addresses of destination RLOC echo "set int ip address del host-intervpp2 6.0.3.2/24" | nc 0 5003 @@ -49,7 +49,7 @@ function test_basic_multi_traffic maybe_pause ip netns exec vppns1 "${1}" -w 15 -c 1 "${2}" - assert_rc_ok $? basic_topo_clean "No response received!" + assert_rc_ok $? 2_node_topo_clean "No response received!" ip netns exec vppns1 "${3}" -w 15 -c 1 "${4}" rc=$? @@ -57,9 +57,8 @@ function test_basic_multi_traffic maybe_pause # test done - basic_topo_clean + 2_node_topo_clean print_status $rc "No ICMP response!" exit $test_result } - diff --git a/tests/data_plane/vpp_lite_topo/test_driver/basic_no_odl.sh b/tests/data_plane/vpp_lite_topo/test_driver/basic_no_odl.sh index 6d06a16..9996111 100644 --- a/tests/data_plane/vpp_lite_topo/test_driver/basic_no_odl.sh +++ b/tests/data_plane/vpp_lite_topo/test_driver/basic_no_odl.sh @@ -1,9 +1,9 @@ source config.sh source odl_utils.sh -source topologies/basic_topo.sh +source topologies/2_node_topo.sh if [ "$1" == "clean" ] ; then - basic_topo_clean + 2_node_topo_clean exit 0 fi @@ -14,7 +14,7 @@ fi function test_basic_no_odl { - basic_topo_setup no_odl + 2_node_topo_setup no_odl maybe_pause @@ -23,7 +23,7 @@ function test_basic_no_odl ip netns exec vppns1 "${1}" -w 15 -c 1 "${2}" if [ $? -ne 0 ] ; then echo "No response received!" - basic_topo_clean no_odl + 2_node_topo_clean no_odl exit $test_result fi @@ -45,7 +45,7 @@ function test_basic_no_odl # test done - basic_topo_clean no_odl + 2_node_topo_clean no_odl if [ $rc -ne 0 ] ; then echo "Test failed: No ICMP response received within specified timeout limit!" else diff --git a/tests/data_plane/vpp_lite_topo/test_driver/basic_single_icmp.sh b/tests/data_plane/vpp_lite_topo/test_driver/basic_single_icmp.sh new file mode 100644 index 0000000..63c8b5a --- /dev/null +++ b/tests/data_plane/vpp_lite_topo/test_driver/basic_single_icmp.sh @@ -0,0 +1,29 @@ +source config.sh +source topologies/2_node_topo.sh + +if [ "$1" == "clean" ] ; then + 2_node_topo_clean no_odl + exit 0 +fi + +if [[ $(id -u) != 0 ]]; then + echo "Error: run this as a root." + exit 1 +fi + +function test_single_icmp +{ + 2_node_topo_setup no_odl + maybe_pause + test_result=1 + + # send only one ping request + ip netns exec vppns1 "${1}" -c 1 "${2}" + rc=$? + + # test done + maybe_pause + 2_node_topo_clean no_odl + print_status $rc "No ICMP response!" + exit $test_result +} diff --git a/tests/data_plane/vpp_lite_topo/tests/test_basic_4o4_no_odl_with_adjacency.sh b/tests/data_plane/vpp_lite_topo/tests/test_basic_4o4_no_odl_with_adjacency.sh new file mode 100755 index 0000000..7c3f0c3 --- /dev/null +++ b/tests/data_plane/vpp_lite_topo/tests/test_basic_4o4_no_odl_with_adjacency.sh @@ -0,0 +1,10 @@ +#!/usr/bin/env bash + +# Test basic LISP functionality without odl and adjacencies configured +# (ip4 over ip4) + +VPP_LITE_CONF=`pwd`/../configs/vpp_lite_config/basic/4o4_no_odl_adj + +source test_driver/basic_single_icmp.sh + +test_single_icmp ping "6.0.2.2" diff --git a/tests/data_plane/vpp_lite_topo/tests/test_basic_6o6_no_odl_with_adjacency.sh b/tests/data_plane/vpp_lite_topo/tests/test_basic_6o6_no_odl_with_adjacency.sh new file mode 100755 index 0000000..ef40096 --- /dev/null +++ b/tests/data_plane/vpp_lite_topo/tests/test_basic_6o6_no_odl_with_adjacency.sh @@ -0,0 +1,10 @@ +#!/usr/bin/env bash + +# Test basic LISP functionality without odl and adjacencies configured +# (ip6 over ip6) + +VPP_LITE_CONF=`pwd`/../configs/vpp_lite_config/basic/6o6_no_odl_adj + +source test_driver/basic_single_icmp.sh + +test_single_icmp ping6 "6:0:2::2" 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 new file mode 100644 index 0000000..eafa09e --- /dev/null +++ b/tests/data_plane/vpp_lite_topo/topologies/2_node_topo.sh @@ -0,0 +1,143 @@ + +# +# +--------+ +# | | +# | MR | +# | | +# +--------+ +# |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 +# + +function set_arp +{ + mac=`ip netns exec vppns1 ip a show dev veth_vpp1 | grep "link/ether" | awk '{print $2}'` + echo "set ip arp host-vpp1 6.0.1.2 $mac" | nc 0 5002 + echo "set ip6 neighbor host-vpp1 6:0:1::2 $mac" | nc 0 5002 + + mac=`ip netns exec vppns2 ip a show dev veth_vpp2 | grep "link/ether" | awk '{print $2}'` + echo "set ip arp host-vpp2 6.0.2.2 $mac" | nc 0 5003 + echo "set ip6 neighbor host-vpp2 6:0:2::2 $mac" | nc 0 5003 + + mac=`echo "sh hard host-intervpp1" | nc 0 5002 | grep 'Ethernet address' | awk '{print $3}'` + echo "set ip arp host-intervpp2 6.0.3.1 $mac" | nc 0 5003 + + mac=`echo "sh hard host-intervpp2" | nc 0 5003 | grep 'Ethernet address' | awk '{print $3}'` + echo "set ip arp host-intervpp1 6.0.3.2 $mac" | nc 0 5002 +} + +function 2_node_topo_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_odl &> /dev/null + ip netns del vppns1 &> /dev/null + ip netns del vppns2 &> /dev/null + ip netns del intervppns &> /dev/null + + if [ "$1" != "no_odl" ] ; then + odl_clear_all + fi +} + +function 2_node_topo_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_odl type veth peer name odl + ip link set dev intervpp1 up + ip link set dev intervpp2 up + ip link set dev odl 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 + + # 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 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 addr add 6:0:1::2/64 dev veth_vpp1 + ip route add 6:0:2::0/64 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 + ip addr add 6:0:2::2/64 dev veth_vpp2 + ip route add 6:0:1::0/64 via 6:0:2::1 + " + + # set odl iface ip and disable checksum offloading + ip addr add 6.0.3.100/24 dev odl + ip addr add 6:0:3::100/64 dev odl + ethtool --offload odl 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 + + if [ "$1" != "no_odl" ] ; then + post_curl "add-mapping" ${ODL_CONFIG_FILE1} + post_curl "add-mapping" ${ODL_CONFIG_FILE2} + fi + + set_arp +} diff --git a/tests/data_plane/vpp_lite_topo/topologies/basic_topo.sh b/tests/data_plane/vpp_lite_topo/topologies/basic_topo.sh deleted file mode 100644 index 15aaa51..0000000 --- a/tests/data_plane/vpp_lite_topo/topologies/basic_topo.sh +++ /dev/null @@ -1,110 +0,0 @@ -#!/usr/bin/env bash - -function basic_topo_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_odl &> /dev/null - ip netns del vppns1 &> /dev/null - ip netns del vppns2 &> /dev/null - ip netns del intervppns &> /dev/null - - if [ "$1" != "no_odl" ] ; then - odl_clear_all - fi -} - -function basic_topo_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_odl type veth peer name odl - ip link set dev intervpp1 up - ip link set dev intervpp2 up - ip link set dev odl 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 - - # 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 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 addr add 6:0:1::2/64 dev veth_vpp1 - ip route add 6:0:2::0/64 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 - ip addr add 6:0:2::2/64 dev veth_vpp2 - ip route add 6:0:1::0/64 via 6:0:2::1 - " - - # set odl iface ip and disable checksum offloading - ip addr add 6.0.3.100/24 dev odl - ip addr add 6:0:3::100/64 dev odl - ethtool --offload odl 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 - - if [ "$1" != "no_odl" ] ; then - post_curl "add-mapping" ${ODL_CONFIG_FILE1} - post_curl "add-mapping" ${ODL_CONFIG_FILE2} - fi -} -- cgit 1.2.3-korg