From a850b9832fb5dc3c5d90dc956b1c60cb225b9016 Mon Sep 17 00:00:00 2001 From: Jan Gelety Date: Wed, 28 Nov 2018 13:08:06 +0100 Subject: FIX: VPP_Device - use vpp bionic packages Because there is already used ubuntu bionic on VPP device testbed and used download script from pacakgecloud site donwloads packages based on host OS we need additional file to store vpp bionic stable version for VPP_Device tests. Change-Id: If834dc8af7dffa19b8ddeae013c3da9b37a5a81a Signed-off-by: Jan Gelety --- VPP_STABLE_VER_UBUNTU_BIONIC | 1 + resources/libraries/bash/function/gather.sh | 13 +++- tests/vpp/device/__init__.robot | 3 +- .../vpp/device/eth2p-ethicmp-l2xcbase-device.robot | 75 ---------------------- .../l2xc/eth2p-ethicmp-l2xcbase-device.robot | 75 ++++++++++++++++++++++ 5 files changed, 88 insertions(+), 79 deletions(-) create mode 100644 VPP_STABLE_VER_UBUNTU_BIONIC delete mode 100644 tests/vpp/device/eth2p-ethicmp-l2xcbase-device.robot create mode 100644 tests/vpp/device/l2xc/eth2p-ethicmp-l2xcbase-device.robot diff --git a/VPP_STABLE_VER_UBUNTU_BIONIC b/VPP_STABLE_VER_UBUNTU_BIONIC new file mode 100644 index 0000000000..6ef71b04bf --- /dev/null +++ b/VPP_STABLE_VER_UBUNTU_BIONIC @@ -0,0 +1 @@ +19.01-rc0~256-ga7dcae72~b1491 \ No newline at end of file diff --git a/resources/libraries/bash/function/gather.sh b/resources/libraries/bash/function/gather.sh index 1d00f6b0d0..bdcf1c46a8 100644 --- a/resources/libraries/bash/function/gather.sh +++ b/resources/libraries/bash/function/gather.sh @@ -272,9 +272,16 @@ function gather_vpp () { warn "Downloading latest VPP packages from Packagecloud." else warn "Downloading stable VPP packages from Packagecloud." - VPP_VERSION="$(<"${CSIT_DIR}/VPP_STABLE_VER_UBUNTU")" || { - die "Read VPP stable version failed." - } + if [[ "${TEST_CODE}" == *"device"* ]]; + then + VPP_VERSION="$(<"${CSIT_DIR}/VPP_STABLE_VER_UBUNTU_BIONIC")" || { + die "Read VPP stable version failed." + } + else + VPP_VERSION="$(<"${CSIT_DIR}/VPP_STABLE_VER_UBUNTU")" || { + die "Read VPP stable version failed." + } + fi fi source "${BASH_FUNCTION_DIR}/artifacts.sh" || die "Source failed." download_artifacts || die diff --git a/tests/vpp/device/__init__.robot b/tests/vpp/device/__init__.robot index 93b43f53ae..916a903f83 100644 --- a/tests/vpp/device/__init__.robot +++ b/tests/vpp/device/__init__.robot @@ -45,7 +45,8 @@ | | Set Global Variable | ${vm_image} | /var/lib/vm/csit-nested-1.7.img | | Set Global Variable | ${packages_dir} | /tmp/openvpp-testing/download_dir/ | | @{vpp_rpm_pkgs}= | Create List | vpp | vpp-devel | vpp-lib | vpp-plugins +| | ... | vpp-api-python | | Set Global Variable | ${vpp_rpm_pkgs} | | @{vpp_deb_pkgs}= | Create List | vpp | vpp-dbg | vpp-dev | vpp-lib -| | ... | vpp-plugins +| | ... | vpp-plugins | vpp-api-python | | Set Global Variable | ${vpp_deb_pkgs} \ No newline at end of file diff --git a/tests/vpp/device/eth2p-ethicmp-l2xcbase-device.robot b/tests/vpp/device/eth2p-ethicmp-l2xcbase-device.robot deleted file mode 100644 index b18ce7bb77..0000000000 --- a/tests/vpp/device/eth2p-ethicmp-l2xcbase-device.robot +++ /dev/null @@ -1,75 +0,0 @@ -# Copyright (c) 2018 Cisco and/or its affiliates. -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at: -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -*** Settings *** -| Resource | resources/libraries/robot/shared/default.robot -| Resource | resources/libraries/robot/l2/l2_xconnect.robot -| Resource | resources/libraries/robot/l2/l2_traffic.robot -| Resource | resources/libraries/robot/shared/testing_path.robot -| ... -| Force Tags | 2_NODE_SINGLE_LINK_TOPO | DEVICETEST | HW_ENV | DCR_ENV -| ... | L2XCFWD | ICMP -| ... -| Test Setup | Set up VPP device test -| ... -| Test Teardown | Tear down VPP device test -| ... -| Documentation | *L2 cross-connect test cases* -| ... -| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology\ -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4-ICMPv4 for L2 switching of\ -| ... | IPv4; Eth-IPv6-ICMPv6 for L2 switching of IPv6 use. Both apply to all\ -| ... | links. -| ... | *[Cfg] DUT configuration:* DUT1 is configured with L2 cross-connect\ -| ... | switching. -| ... | *[Ver] TG verification:* Test ICMPv4 (or ICMPv6) Echo Request packets\ -| ... | are sent in both directions by TG on links to DUT1; on receive TG\ -| ... | verifies packets for correctness and their IPv4 (IPv6) src-addr,\ -| ... | dst-addr and MAC addresses. -| ... | *[Ref] Applicable standard specifications: rfc792* - -*** Test Cases *** -| tc01-eth2p-ethicmpv4-l2xcbase-device -| | [Documentation] -| | ... | [Top] TG-DUT1-TG. [Enc] Eth-IPv4-ICMPv4. -| | ... | [Cfg] On DUT1 configure L2 cross-connect (L2XC), with both interfaces\ -| | ... | to TG. -| | ... | [Ver] Make TG send ICMPv4 Echo Req in both directions between two of\ -| | ... | its interfaces to be switched by DUT1; verify all packets are -| | ... | received. -| | ... -| | Given Configure path in 2-node circular topology -| | ... | ${nodes['TG']} | ${nodes['DUT1']} | ${nodes['TG']} -| | And Set Interfaces In 2-node Circular Topology Up -| | And Configure L2XC | ${dut_node} | ${dut_to_tg_if1} | ${dut_to_tg_if2} -| | When All Vpp Interfaces Ready Wait | ${nodes} -| | Then Send ICMPv4 bidirectionally and verify received packets -| | ... | ${tg_node} | ${tg_to_dut_if1} | ${tg_to_dut_if2} - -| tc02-eth2p-ethicmpv6-l2xcbase-device -| | [Documentation] -| | ... | [Top] TG-DUT1-TG. [Enc] Eth-IPv4-ICMPv6. -| | ... | [Cfg] On DUT1 configure L2 cross-connect (L2XC), with both interfaces\ -| | ... | to TG. -| | ... | [Ver] Make TG send ICMPv4 Echo Req in both directions between two of\ -| | ... | its interfaces to be switched by DUT1; verify all packets are -| | ... | received. -| | ... -| | Given Configure path in 2-node circular topology -| | ... | ${nodes['TG']} | ${nodes['DUT1']} | ${nodes['TG']} -| | And Set Interfaces In 2-node Circular Topology Up -| | And Configure L2XC | ${dut_node} | ${dut_to_tg_if1} | ${dut_to_tg_if2} -| | When All Vpp Interfaces Ready Wait | ${nodes} -| | Then Send ICMPv6 bidirectionally and verify received packets -| | ... | ${tg_node} | ${tg_to_dut_if1} | ${tg_to_dut_if2} diff --git a/tests/vpp/device/l2xc/eth2p-ethicmp-l2xcbase-device.robot b/tests/vpp/device/l2xc/eth2p-ethicmp-l2xcbase-device.robot new file mode 100644 index 0000000000..b18ce7bb77 --- /dev/null +++ b/tests/vpp/device/l2xc/eth2p-ethicmp-l2xcbase-device.robot @@ -0,0 +1,75 @@ +# Copyright (c) 2018 Cisco and/or its affiliates. +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at: +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +*** Settings *** +| Resource | resources/libraries/robot/shared/default.robot +| Resource | resources/libraries/robot/l2/l2_xconnect.robot +| Resource | resources/libraries/robot/l2/l2_traffic.robot +| Resource | resources/libraries/robot/shared/testing_path.robot +| ... +| Force Tags | 2_NODE_SINGLE_LINK_TOPO | DEVICETEST | HW_ENV | DCR_ENV +| ... | L2XCFWD | ICMP +| ... +| Test Setup | Set up VPP device test +| ... +| Test Teardown | Tear down VPP device test +| ... +| Documentation | *L2 cross-connect test cases* +| ... +| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology\ +| ... | with single links between nodes. +| ... | *[Enc] Packet Encapsulations:* Eth-IPv4-ICMPv4 for L2 switching of\ +| ... | IPv4; Eth-IPv6-ICMPv6 for L2 switching of IPv6 use. Both apply to all\ +| ... | links. +| ... | *[Cfg] DUT configuration:* DUT1 is configured with L2 cross-connect\ +| ... | switching. +| ... | *[Ver] TG verification:* Test ICMPv4 (or ICMPv6) Echo Request packets\ +| ... | are sent in both directions by TG on links to DUT1; on receive TG\ +| ... | verifies packets for correctness and their IPv4 (IPv6) src-addr,\ +| ... | dst-addr and MAC addresses. +| ... | *[Ref] Applicable standard specifications: rfc792* + +*** Test Cases *** +| tc01-eth2p-ethicmpv4-l2xcbase-device +| | [Documentation] +| | ... | [Top] TG-DUT1-TG. [Enc] Eth-IPv4-ICMPv4. +| | ... | [Cfg] On DUT1 configure L2 cross-connect (L2XC), with both interfaces\ +| | ... | to TG. +| | ... | [Ver] Make TG send ICMPv4 Echo Req in both directions between two of\ +| | ... | its interfaces to be switched by DUT1; verify all packets are +| | ... | received. +| | ... +| | Given Configure path in 2-node circular topology +| | ... | ${nodes['TG']} | ${nodes['DUT1']} | ${nodes['TG']} +| | And Set Interfaces In 2-node Circular Topology Up +| | And Configure L2XC | ${dut_node} | ${dut_to_tg_if1} | ${dut_to_tg_if2} +| | When All Vpp Interfaces Ready Wait | ${nodes} +| | Then Send ICMPv4 bidirectionally and verify received packets +| | ... | ${tg_node} | ${tg_to_dut_if1} | ${tg_to_dut_if2} + +| tc02-eth2p-ethicmpv6-l2xcbase-device +| | [Documentation] +| | ... | [Top] TG-DUT1-TG. [Enc] Eth-IPv4-ICMPv6. +| | ... | [Cfg] On DUT1 configure L2 cross-connect (L2XC), with both interfaces\ +| | ... | to TG. +| | ... | [Ver] Make TG send ICMPv4 Echo Req in both directions between two of\ +| | ... | its interfaces to be switched by DUT1; verify all packets are +| | ... | received. +| | ... +| | Given Configure path in 2-node circular topology +| | ... | ${nodes['TG']} | ${nodes['DUT1']} | ${nodes['TG']} +| | And Set Interfaces In 2-node Circular Topology Up +| | And Configure L2XC | ${dut_node} | ${dut_to_tg_if1} | ${dut_to_tg_if2} +| | When All Vpp Interfaces Ready Wait | ${nodes} +| | Then Send ICMPv6 bidirectionally and verify received packets +| | ... | ${tg_node} | ${tg_to_dut_if1} | ${tg_to_dut_if2} -- cgit 1.2.3-korg