From a8fcf79bbe184a7ef8c813239400cd8c9de89254 Mon Sep 17 00:00:00 2001 From: Zdeno Olsovsky Date: Mon, 26 Sep 2016 10:55:01 +0200 Subject: CSIT-247: IPv6 - ip6-ipsec-lispgpe-ip6 - main fib, phy2lisp, virt2lisp Change-Id: I039e14b7c227318c70826068368430978f8f0a51 Signed-off-by: Zdeno Olsovsky --- resources/libraries/python/VPPUtil.py | 52 +++++++++++++++++++++ .../ipv6_lispgpe_ipv6/ipv6_lispgpe_ipsec_ipv6.py | 54 ++++++++++++++++++++++ 2 files changed, 106 insertions(+) create mode 100644 resources/libraries/python/VPPUtil.py create mode 100644 resources/test_data/lisp/ipv6_lispgpe_ipv6/ipv6_lispgpe_ipsec_ipv6.py (limited to 'resources') diff --git a/resources/libraries/python/VPPUtil.py b/resources/libraries/python/VPPUtil.py new file mode 100644 index 0000000000..32e1bb4e7b --- /dev/null +++ b/resources/libraries/python/VPPUtil.py @@ -0,0 +1,52 @@ +# Copyright (c) 2016 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. + +"""VPP util library""" +from resources.libraries.python.ssh import SSH + + +class VPPUtil(object): + """General class for any VPP related methods/functions.""" + + @staticmethod + def show_vpp_settings(node, *additional_cmds): + """Print default VPP settings. In case others are needed, can be + accepted as next parameters (each setting one parameter), preferably + in form of a string. + + :param node: VPP node. + :param additional_cmds: Additional commands that the vpp should print + settings for. + :type node: dict + :type additional_cmds: tuple + """ + def_setting_tb_displayed = { + 'IPv6 FIB': 'ip6 fib', + 'IPv4 FIB': 'ip fib', + 'Interface IP': 'int addr', + 'Interfaces': 'int', + 'ARP': 'ip arp', + 'Errors': 'err' + } + + if additional_cmds: + for cmd in additional_cmds: + def_setting_tb_displayed['Custom Setting: {}'.format(cmd)] = cmd + ssh = SSH() + ssh.connect(node) + print("=" * 40) + for key, value in def_setting_tb_displayed.iteritems(): + (_, stdout, _) = ssh.exec_command_sudo('vppctl sh {}'.format(value)) + print("{} : {} \n".format(key, value)) + print(stdout) + print("=" * 40) diff --git a/resources/test_data/lisp/ipv6_lispgpe_ipv6/ipv6_lispgpe_ipsec_ipv6.py b/resources/test_data/lisp/ipv6_lispgpe_ipv6/ipv6_lispgpe_ipsec_ipv6.py new file mode 100644 index 0000000000..5d79e4b0eb --- /dev/null +++ b/resources/test_data/lisp/ipv6_lispgpe_ipv6/ipv6_lispgpe_ipsec_ipv6.py @@ -0,0 +1,54 @@ +# Copyright (c) 2016 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. + +"""Test variables for ip6-ipsec-lispgpe-ip6 encapsulation test suite.""" + +# Lisp default global value +locator_name = 'tst_locator' + +# Lisp default locator_set value +duts_locator_set = {'locator_name': locator_name, + 'priority': 1, + 'weight': 1} + +# IPv4 Lisp static mapping configuration +dut1_to_dut2_ip6 = '2001:cdba:3::1' +dut2_to_dut1_ip6 = '2001:cdba:3::2' +dut1_to_tg_ip6 = '2001:cdba:1::1' +dut2_to_tg_ip6 = '2001:cdba:2::1' +tg1_ip6 = '2001:cdba:1::2' +tg2_ip6 = '2001:cdba:2::2' +prefix6 = 64 + +dut1_to_dut2_ip6_static_adjacency = {'vni': 0, + 'deid': '2001:cdba:2::0', + 'rloc': dut2_to_dut1_ip6, + 'seid': '2001:cdba:1::0', + 'prefix': 64} +dut2_to_dut1_ip6_static_adjacency = {'vni': 0, + 'deid': '2001:cdba:1::0', + 'seid': '2001:cdba:2::0', + 'rloc': dut1_to_dut2_ip6, + 'prefix': 64} + +dut1_ip6_eid = {'locator_name': locator_name, + 'vni': 0, + 'eid': '2001:cdba:1::0', + 'prefix': 64} +dut2_ip6_eid = {'locator_name': locator_name, + 'vni': 0, + 'eid': '2001:cdba:2::0', + 'prefix': 64} + +dut1_fib_table = '1' +dut2_fib_table = '2' -- cgit 1.2.3-korg