From 5530b63e749ae11703dd596e566e54274245d3d6 Mon Sep 17 00:00:00 2001
From: Dinesh Dutt
Date: Sun, 26 May 2024 22:15:09 -0700
Subject: [PATCH 01/10] Devconfig schema: Fix order of columns to match other
tables
Signed-off-by: Dinesh Dutt
---
suzieq/config/schema/devconfig.avsc | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/suzieq/config/schema/devconfig.avsc b/suzieq/config/schema/devconfig.avsc
index 17209e1e00..3a44bebc81 100644
--- a/suzieq/config/schema/devconfig.avsc
+++ b/suzieq/config/schema/devconfig.avsc
@@ -14,7 +14,7 @@
{
"name": "config",
"type": "string",
- "display": 1,
+ "display": 2,
"description": "The running config"
},
{
@@ -42,7 +42,7 @@
{
"name": "timestamp",
"type": "timestamp",
- "display": 2,
+ "display": 3,
"description": "Unix epach When this record was created, in ms"
},
{
From 0cb47d64d8bfbd80d53be2f9f40e5f1e1c245435 Mon Sep 17 00:00:00 2001
From: Dinesh Dutt
Date: Sun, 26 May 2024 22:15:35 -0700
Subject: [PATCH 02/10] sqobjects/devconfig: add support for searching a
line/section
Signed-off-by: Dinesh Dutt
---
suzieq/sqobjects/devconfig.py | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/suzieq/sqobjects/devconfig.py b/suzieq/sqobjects/devconfig.py
index ab8257d1f4..1ddb0ee9ed 100644
--- a/suzieq/sqobjects/devconfig.py
+++ b/suzieq/sqobjects/devconfig.py
@@ -8,7 +8,7 @@ class DevconfigObj(SqObject):
def __init__(self, **kwargs):
super().__init__(table='devconfig', **kwargs)
self._valid_get_args = ['namespace', 'hostname', 'columns',
- 'query_str']
+ 'query_str', 'section']
def unique(self, **kwargs) -> pd.DataFrame:
return pd.DataFrame(
From 51e477939fbe48442b3c563f7c79d6e8d13fe5c0 Mon Sep 17 00:00:00 2001
From: Dinesh Dutt
Date: Sun, 26 May 2024 22:16:02 -0700
Subject: [PATCH 03/10] engines/devconfig: add support for searching a
line/section
Signed-off-by: Dinesh Dutt
---
suzieq/engines/pandas/devconfig.py | 48 ++++++++++++++++++++++++++++++
1 file changed, 48 insertions(+)
diff --git a/suzieq/engines/pandas/devconfig.py b/suzieq/engines/pandas/devconfig.py
index a1f9300142..aca45370d5 100644
--- a/suzieq/engines/pandas/devconfig.py
+++ b/suzieq/engines/pandas/devconfig.py
@@ -1,3 +1,7 @@
+from typing import List
+
+from ciscoconfparse import CiscoConfParse
+
from suzieq.engines.pandas.engineobj import SqPandasEngine
@@ -8,3 +12,47 @@ class DevconfigObj(SqPandasEngine):
def table_name():
'''Table name'''
return 'devconfig'
+
+ def get(self, **kwargs):
+ '''Retrieve the devconfig table info'''
+
+ section = kwargs.pop('section', None)
+ columns = kwargs.pop('columns', ['default'])
+ query_str = kwargs.pop('query_str', '')
+
+ df = super().get(columns=columns, **kwargs)
+ if df.empty or 'error' in df.columns or not section:
+ return df
+
+ devdf = self._get_table_sqobj('device') \
+ .get(columns=['namespace', 'hostname', 'os'], **kwargs)
+
+ if devdf.empty or 'errror' in devdf.columns:
+ return df
+
+ drop_indices: List[int] = []
+ for index, row in enumerate(df.itertuples()):
+ os = devdf.loc[(devdf['hostname'] == row.hostname) &
+ (devdf['namespace'] == row.namespace),
+ 'os'].values[0]
+ if os.startswith('junos') or os == 'panos':
+ os = 'junos'
+ elif os == 'nxos':
+ os = 'nxos'
+ else:
+ os = 'ios'
+
+ parsed_conf = CiscoConfParse(row.config.split('\n'), syntax=os)
+ conf = '\n'.join(parsed_conf.find_all_children(section))
+ if not conf:
+ drop_indices.append(index)
+ else:
+ df.loc[index, 'config'] = conf
+
+ if drop_indices:
+ df = df.drop(index=drop_indices)
+
+ if query_str:
+ df = df.query(query_str).reset_index(drop=True)
+
+ return df
From 570ffb4d2d430c4bc2294fa41c0ff84568dc4d9d Mon Sep 17 00:00:00 2001
From: Dinesh Dutt
Date: Sun, 26 May 2024 22:16:20 -0700
Subject: [PATCH 04/10] DevconfigCmd: add support for matching line/section
Signed-off-by: Dinesh Dutt
---
suzieq/cli/sqcmds/DevconfigCmd.py | 9 +++++++--
1 file changed, 7 insertions(+), 2 deletions(-)
diff --git a/suzieq/cli/sqcmds/DevconfigCmd.py b/suzieq/cli/sqcmds/DevconfigCmd.py
index 1d726a6855..f1f959614a 100644
--- a/suzieq/cli/sqcmds/DevconfigCmd.py
+++ b/suzieq/cli/sqcmds/DevconfigCmd.py
@@ -1,10 +1,12 @@
-from nubia import command
+from nubia import command, argument
from suzieq.cli.sqcmds.command import SqTableCommand
from suzieq.sqobjects.devconfig import DevconfigObj
@command("devconfig", help="Act on device data")
+@argument("section",
+ description="show device config only for this regex match")
class DevconfigCmd(SqTableCommand):
"""Device configurations"""
@@ -19,6 +21,7 @@ def __init__(
format: str = "", # pylint: disable=redefined-builtin
query_str: str = " ",
columns: str = "default",
+ section: str = '',
) -> None:
super().__init__(
engine=engine,
@@ -33,10 +36,12 @@ def __init__(
sqobj=DevconfigObj,
)
+ self.lvars['section'] = section
+
@command("show", help="Show device information")
def show(self):
"""Show device config info
"""
if not self.format or (self.format == 'text'):
- self.format = 'devconfig'
+ self.format = 'markdown'
return super().show()
From 818768ad31ea2ce99ebf4998226d097723c95da5 Mon Sep 17 00:00:00 2001
From: Dinesh Dutt
Date: Sun, 26 May 2024 22:34:30 -0700
Subject: [PATCH 05/10] REST: Add support for section kwarg with devconfig
Signed-off-by: Dinesh Dutt
---
suzieq/restServer/query.py | 1 +
1 file changed, 1 insertion(+)
diff --git a/suzieq/restServer/query.py b/suzieq/restServer/query.py
index 5c805f04f1..b004ba3030 100755
--- a/suzieq/restServer/query.py
+++ b/suzieq/restServer/query.py
@@ -381,6 +381,7 @@ def query_devconfig(verb: CommonVerbs, request: Request,
view: ViewValues = "latest",
namespace: List[str] = Query(None),
columns: List[str] = Query(default=["default"]),
+ section: str = Query(None),
query_str: str = None,
what: str = None,
count: str = None, reverse: str = None,
From 6ae4848626553bd658d3e4b5c856c07d8087cd7a Mon Sep 17 00:00:00 2001
From: Dinesh Dutt
Date: Sun, 26 May 2024 22:34:54 -0700
Subject: [PATCH 06/10] Test updates for devconfig
Signed-off-by: Dinesh Dutt
---
.../sqcmds/cumulus-samples/devconfig.yml | 568 +++++++++++++-----
.../sqcmds/eos-samples/devconfig.yml | 315 ++++++++--
.../sqcmds/nxos-samples/devconfig.yml | 347 ++++++++---
3 files changed, 942 insertions(+), 288 deletions(-)
diff --git a/tests/integration/sqcmds/cumulus-samples/devconfig.yml b/tests/integration/sqcmds/cumulus-samples/devconfig.yml
index cd14b4b2e1..3f3242530b 100644
--- a/tests/integration/sqcmds/cumulus-samples/devconfig.yml
+++ b/tests/integration/sqcmds/cumulus-samples/devconfig.yml
@@ -3,13 +3,13 @@ tests:
- command: devconfig show --format=json --namespace='ospf-single dual-evpn ospf-ibgp'
data-directory: tests/data/parquet/
marks: devconfig show cumulus
- output: '[{"namespace": "ospf-ibgp", "config": "# hostname\nspine02\n# interfaces\nauto
- all\n\niface lo inet loopback\n\n# Management interface\n\niface eth0 inet dhcp\n vrf
- mgmt\n\niface mgmt\n address 127.0.0.1/8\n vrf-table auto\n\n# downlinks\niface
- swp1\n mtu 9216\niface swp2\n mtu 9216\niface swp3\n mtu 9216\niface
- swp4\n mtu 9216\niface swp5\n mtu 9216\niface swp6\n mtu 9216\n\nBuilding
- configuration...\n\nCurrent configuration:\n!\nfrr version 7.4+cl4.2.1u1\nfrr
- defaults datacenter\nhostname spine02\nservice integrated-vtysh-config\n!\ninterface
+ output: '[{"namespace": "ospf-ibgp", "hostname": "spine02", "config": "# hostname\nspine02\n#
+ interfaces\nauto all\n\niface lo inet loopback\n\n# Management interface\n\niface
+ eth0 inet dhcp\n vrf mgmt\n\niface mgmt\n address 127.0.0.1/8\n vrf-table
+ auto\n\n# downlinks\niface swp1\n mtu 9216\niface swp2\n mtu 9216\niface
+ swp3\n mtu 9216\niface swp4\n mtu 9216\niface swp5\n mtu 9216\niface
+ swp6\n mtu 9216\n\nBuilding configuration...\n\nCurrent configuration:\n!\nfrr
+ version 7.4+cl4.2.1u1\nfrr defaults datacenter\nhostname spine02\nservice integrated-vtysh-config\n!\ninterface
lo\n ip address 10.0.0.21/32\n ip ospf area 0\n!\ninterface swp1\n ip address
10.0.0.21/32\n ip ospf area 0\n ip ospf network point-to-point\n!\ninterface swp2\n
ip address 10.0.0.21/32\n ip ospf area 0\n ip ospf network point-to-point\n!\ninterface
@@ -27,10 +27,10 @@ tests:
ibgp 16\n exit-address-family\n !\n address-family l2vpn evpn\n neighbor RR activate\n neighbor
RR route-reflector-client\n exit-address-family\n!\nrouter ospf\n ospf router-id
10.0.0.21\n passive-interface lo\n!\nline vty\n!\nend\n# ports.conf\n# resolv.conf\nnameserver
- 192.168.123.1 # vrf mgmt", "hostname": "spine02", "timestamp": 1622008051074},
- {"namespace": "ospf-ibgp", "config": "# hostname\ninternet\n# interfaces\nauto
- lo\niface lo inet loopback\n\nauto eth0\niface eth0 inet dhcp\n\nauto swp1\niface
- swp1\n\nauto swp2\niface swp2\nBuilding configuration...\n\nCurrent configuration:\n!\nfrr
+ 192.168.123.1 # vrf mgmt", "timestamp": 1622008051074}, {"namespace": "ospf-ibgp",
+ "hostname": "internet", "config": "# hostname\ninternet\n# interfaces\nauto lo\niface
+ lo inet loopback\n\nauto eth0\niface eth0 inet dhcp\n\nauto swp1\niface swp1\n\nauto
+ swp2\niface swp2\nBuilding configuration...\n\nCurrent configuration:\n!\nfrr
version 7.4+cl4.2.1u1\nfrr defaults datacenter\nhostname internet\nlog syslog
informational\nservice integrated-vtysh-config\n!\ninterface lo\n ip address 10.0.0.253/32\n
ip address 172.16.253.1/32\n!\ninterface swp1\n ip address 169.254.127.0/31\n!\ninterface
@@ -41,9 +41,9 @@ tests:
ipv4 unicast\n redistribute connected route-map LOOPBACKS\n neighbor ISL activate\n neighbor
ISL default-originate\n exit-address-family\n!\nroute-map LOOPBACKS permit 10\n
match interface lo\n!\nline vty\n!\nend\n# ports.conf\n# resolv.conf\nnameserver
- 192.168.123.1", "hostname": "internet", "timestamp": 1622008051293}, {"namespace":
- "ospf-ibgp", "config": "# hostname\nleaf01\n# interfaces\nauto all\n\niface lo
- inet loopback\n address 10.0.0.11/32\n vxlan-local-tunnelip 10.0.0.11\n clagd-vxlan-anycast-ip
+ 192.168.123.1", "timestamp": 1622008051293}, {"namespace": "ospf-ibgp", "hostname":
+ "leaf01", "config": "# hostname\nleaf01\n# interfaces\nauto all\n\niface lo inet
+ loopback\n address 10.0.0.11/32\n vxlan-local-tunnelip 10.0.0.11\n clagd-vxlan-anycast-ip
10.0.0.112\n\niface mgmt\n address 127.0.0.1/8\n vrf-table auto\n\niface eth0
inet dhcp\n vrf mgmt\n\n# uplinks\niface swp1\n mtu 9216\n\niface swp2\n mtu
9216\n\n# uplinks\niface swp3\n mtu 9000\n post-up ip link set promisc on dev
@@ -82,19 +82,19 @@ tests:
RR\n !\n address-family ipv4 unicast\n maximum-paths ibgp 16\n exit-address-family\n
!\n address-family l2vpn evpn\n neighbor RR activate\n advertise-all-vni\n exit-address-family\n!\nrouter
ospf\n ospf router-id 10.0.0.11\n passive-interface lo\n!\nline vty\n!\nend\n#
- ports.conf\n# resolv.conf\nnameserver 192.168.123.1 # vrf mgmt", "hostname": "leaf01",
- "timestamp": 1622008051293}, {"namespace": "ospf-ibgp", "config": "# hostname\nexit01\n#
- interfaces\nauto all\n\niface lo inet loopback\n\taddress 10.0.0.101/32\n\tvxlan-local-tunnelip
- 10.0.0.101\n\niface eth0 inet dhcp\n\tvrf mgmt\n\niface evpn-vrf\n\taddress 10.0.0.101/32\n\tvrf-table
- auto\n\niface mgmt\n\taddress 127.0.0.1/8\n\tvrf-table auto\n\niface internet-vrf\n\taddress
- 10.0.0.101/32\n\tvrf-table auto\n\niface bridge\n\tbridge-vlan-aware yes\n\tbridge-vids
- 4001\n\tbridge-ports vxlan4001\n\niface vlan4001\n mtu 9216\n\tvlan-id
- 4001\n\tvlan-raw-device bridge\n\tvrf evpn-vrf\n\niface swp1\n mtu 9216\n\niface
- swp2\n mtu 9216\n\niface swp5\n\niface swp5.2\n\niface swp5.3\n\tvrf evpn-vrf\n\niface
- swp5.4\n\tvrf internet-vrf\n\niface swp6\n\tvrf internet-vrf\n\niface vxlan4001\n mtu
- 9216\n\tvxlan-id 104001\n\tbridge-learning off\n\tbridge-access 4001\n\nBuilding
- configuration...\n\nCurrent configuration:\n!\nfrr version 7.4+cl4.2.1u1\nfrr
- defaults datacenter\nhostname exit01\nservice integrated-vtysh-config\n!\nvrf
+ ports.conf\n# resolv.conf\nnameserver 192.168.123.1 # vrf mgmt", "timestamp":
+ 1622008051293}, {"namespace": "ospf-ibgp", "hostname": "exit01", "config": "#
+ hostname\nexit01\n# interfaces\nauto all\n\niface lo inet loopback\n\taddress
+ 10.0.0.101/32\n\tvxlan-local-tunnelip 10.0.0.101\n\niface eth0 inet dhcp\n\tvrf
+ mgmt\n\niface evpn-vrf\n\taddress 10.0.0.101/32\n\tvrf-table auto\n\niface mgmt\n\taddress
+ 127.0.0.1/8\n\tvrf-table auto\n\niface internet-vrf\n\taddress 10.0.0.101/32\n\tvrf-table
+ auto\n\niface bridge\n\tbridge-vlan-aware yes\n\tbridge-vids 4001\n\tbridge-ports
+ vxlan4001\n\niface vlan4001\n mtu 9216\n\tvlan-id 4001\n\tvlan-raw-device
+ bridge\n\tvrf evpn-vrf\n\niface swp1\n mtu 9216\n\niface swp2\n mtu 9216\n\niface
+ swp5\n\niface swp5.2\n\niface swp5.3\n\tvrf evpn-vrf\n\niface swp5.4\n\tvrf internet-vrf\n\niface
+ swp6\n\tvrf internet-vrf\n\niface vxlan4001\n mtu 9216\n\tvxlan-id 104001\n\tbridge-learning
+ off\n\tbridge-access 4001\n\nBuilding configuration...\n\nCurrent configuration:\n!\nfrr
+ version 7.4+cl4.2.1u1\nfrr defaults datacenter\nhostname exit01\nservice integrated-vtysh-config\n!\nvrf
evpn-vrf\n vni 104001\n exit-vrf\n!\ninterface swp1\n ip address 10.0.0.101/32\n
ip ospf area 0\n ip ospf network point-to-point\n!\ninterface swp2\n ip address
10.0.0.101/32\n ip ospf area 0\n ip ospf network point-to-point\n!\ninterface
@@ -117,19 +117,19 @@ tests:
neighbor swp5.4 interface peer-group EDGE\n neighbor swp6 interface peer-group
EDGE\n !\n address-family ipv4 unicast\n neighbor EDGE activate\n exit-address-family\n!\nrouter
ospf\n ospf router-id 10.0.0.101\n passive-interface lo\n!\nline vty\n!\nend\n#
- ports.conf\n# resolv.conf\nnameserver 192.168.123.1 # vrf mgmt", "hostname": "exit01",
- "timestamp": 1622008051294}, {"namespace": "ospf-ibgp", "config": "# hostname\nexit02\n#
- interfaces\nauto all\n\niface lo inet loopback\n\taddress 10.0.0.102/32\n\tvxlan-local-tunnelip
- 10.0.0.102\n\niface eth0 inet dhcp\n\tvrf mgmt\n\niface evpn-vrf\n\taddress 10.0.0.102/32\n\tvrf-table
- auto\n\niface mgmt\n\taddress 127.0.0.1/8\n\tvrf-table auto\n\niface internet-vrf\n\taddress
- 10.0.0.102/32\n\tvrf-table auto\n\niface bridge\n\tbridge-vlan-aware yes\n\tbridge-vids
- 4001\n\tbridge-ports vxlan4001\n\niface vlan4001\n mtu 9216\n\tvlan-id
- 4001\n\tvlan-raw-device bridge\n\tvrf evpn-vrf\n\niface swp1\n mtu 9216\n\niface
- swp2\n mtu 9216\n\niface swp5\n\niface swp5.2\n\niface swp5.3\n\tvrf evpn-vrf\n\niface
- swp5.4\n\tvrf internet-vrf\n\niface swp6\n\tvrf internet-vrf\n\niface vxlan4001\n mtu
- 9216\n\tvxlan-id 104001\n\tbridge-learning off\n\tbridge-access 4001\n\nBuilding
- configuration...\n\nCurrent configuration:\n!\nfrr version 7.4+cl4.2.1u1\nfrr
- defaults datacenter\nhostname exit02\nservice integrated-vtysh-config\n!\nvrf
+ ports.conf\n# resolv.conf\nnameserver 192.168.123.1 # vrf mgmt", "timestamp":
+ 1622008051294}, {"namespace": "ospf-ibgp", "hostname": "exit02", "config": "#
+ hostname\nexit02\n# interfaces\nauto all\n\niface lo inet loopback\n\taddress
+ 10.0.0.102/32\n\tvxlan-local-tunnelip 10.0.0.102\n\niface eth0 inet dhcp\n\tvrf
+ mgmt\n\niface evpn-vrf\n\taddress 10.0.0.102/32\n\tvrf-table auto\n\niface mgmt\n\taddress
+ 127.0.0.1/8\n\tvrf-table auto\n\niface internet-vrf\n\taddress 10.0.0.102/32\n\tvrf-table
+ auto\n\niface bridge\n\tbridge-vlan-aware yes\n\tbridge-vids 4001\n\tbridge-ports
+ vxlan4001\n\niface vlan4001\n mtu 9216\n\tvlan-id 4001\n\tvlan-raw-device
+ bridge\n\tvrf evpn-vrf\n\niface swp1\n mtu 9216\n\niface swp2\n mtu 9216\n\niface
+ swp5\n\niface swp5.2\n\niface swp5.3\n\tvrf evpn-vrf\n\niface swp5.4\n\tvrf internet-vrf\n\niface
+ swp6\n\tvrf internet-vrf\n\niface vxlan4001\n mtu 9216\n\tvxlan-id 104001\n\tbridge-learning
+ off\n\tbridge-access 4001\n\nBuilding configuration...\n\nCurrent configuration:\n!\nfrr
+ version 7.4+cl4.2.1u1\nfrr defaults datacenter\nhostname exit02\nservice integrated-vtysh-config\n!\nvrf
evpn-vrf\n vni 104001\n exit-vrf\n!\ninterface swp1\n ip address 10.0.0.102/32\n
ip ospf area 0\n ip ospf network point-to-point\n!\ninterface swp2\n ip address
10.0.0.102/32\n ip ospf area 0\n ip ospf network point-to-point\n!\ninterface
@@ -153,36 +153,36 @@ tests:
neighbor swp5.4 interface peer-group EDGE\n neighbor swp6 interface peer-group
EDGE\n !\n address-family ipv4 unicast\n neighbor EDGE activate\n exit-address-family\n!\nrouter
ospf\n ospf router-id 10.0.0.102\n passive-interface lo\n!\nline vty\n!\nend\n#
- ports.conf\n# resolv.conf\nnameserver 192.168.123.1 # vrf mgmt", "hostname": "exit02",
- "timestamp": 1622008051294}, {"namespace": "ospf-ibgp", "config": "# hostname\nleaf02\n#
- interfaces\nauto all\n\niface lo inet loopback\n address 10.0.0.12/32\n vxlan-local-tunnelip
- 10.0.0.12\n clagd-vxlan-anycast-ip 10.0.0.112\n\n\niface mgmt\n address 127.0.0.1/8\n vrf-table
- auto\n\niface eth0 inet dhcp\n vrf mgmt\n\n\n# uplinks\niface swp1\n mtu 9216\n \niface
- swp2\n mtu 9216\n\n# uplinks\niface swp3\n mtu 9000\n post-up ip link set promisc
- on dev swp3\n \n\niface swp4\n mtu 9000\n post-up ip link set promisc on dev
- swp4\n\niface peerlink\n mtu 9000\n bond-slaves swp3 swp4\n\niface peerlink.4094\n address
- 169.254.1.2/30\n clagd-peer-ip 169.254.1.1\n clagd-backup-ip 10.0.0.11\n clagd-sys-mac
- 44:39:39:ff:40:94\n clagd-priority 200\n\n# bridge to hosts\niface swp5\n mtu
- 9000\n post-up ip link set promisc on dev swp5\n\niface swp6\n mtu 9000\n post-up
- ip link set promisc on dev swp6\n\niface bond01\n mtu 9000\n bond-slaves swp5\n bridge-access
- 13\n clag-id 1\n\niface bond02\n mtu 9000\n bond-slaves swp6\n bridge-access
- 24\n clag-id 2\n\n# Define the bridge for STP\niface bridge\n bridge-vlan-aware
- yes\n # bridge-ports includes all ports related to VxLAN and CLAG.\n # does
- not include the Peerlink.4094 subinterface\n bridge-ports bond01 bond02 peerlink
- vni13 vni24 vxlan4001\n bridge-vids 13 24\n\n# VxLAN Tunnel for Server1-Server3
- (Vlan 13)\niface vni13\n mtu 9000\n vxlan-id 13\n bridge-access 13\n bridge-learning
- off\n\n#VxLAN Tunnel for Server2-Server4 (Vlan 24)\niface vni24\n mtu 9000\n vxlan-id
- 24\n bridge-access 24\n bridge-learning off\n bridge-arp-nd-suppress on\n\niface
- vxlan4001\n mtu 9216\n vxlan-id 104001\n bridge-learning off\n bridge-access
- 4001\n\niface evpn-vrf\n vrf-table auto\n\n#Tenant SVIs - anycast GW\n\niface
- vlan13\n mtu 9000\n address 172.16.1.12/24\n address-virtual 44:39:39:ff:00:13
- 172.16.1.1/24\n vlan-id 13\n vlan-raw-device bridge\n vrf evpn-vrf\n\niface
- vlan24\n mtu 9000\n address 172.16.2.12/24\n address-virtual 44:39:39:ff:00:24
- 172.16.2.1/24\n vlan-id 24\n vlan-raw-device bridge\n vrf evpn-vrf\n\n#L3
- VLAN interface per tenant (for L3 VNI)\n\niface vlan4001\n mtu 9216\n hwaddress
- 44:39:39:ff:40:94\n vlan-id 4001\n vlan-raw-device bridge\n vrf evpn-vrf\n\nBuilding
- configuration...\n\nCurrent configuration:\n!\nfrr version 7.4+cl4.2.1u1\nfrr
- defaults datacenter\nhostname leaf02\nservice integrated-vtysh-config\n!\nvrf
+ ports.conf\n# resolv.conf\nnameserver 192.168.123.1 # vrf mgmt", "timestamp":
+ 1622008051294}, {"namespace": "ospf-ibgp", "hostname": "leaf02", "config": "#
+ hostname\nleaf02\n# interfaces\nauto all\n\niface lo inet loopback\n address
+ 10.0.0.12/32\n vxlan-local-tunnelip 10.0.0.12\n clagd-vxlan-anycast-ip 10.0.0.112\n\n\niface
+ mgmt\n address 127.0.0.1/8\n vrf-table auto\n\niface eth0 inet dhcp\n vrf mgmt\n\n\n#
+ uplinks\niface swp1\n mtu 9216\n \niface swp2\n mtu 9216\n\n# uplinks\niface
+ swp3\n mtu 9000\n post-up ip link set promisc on dev swp3\n \n\niface swp4\n mtu
+ 9000\n post-up ip link set promisc on dev swp4\n\niface peerlink\n mtu 9000\n bond-slaves
+ swp3 swp4\n\niface peerlink.4094\n address 169.254.1.2/30\n clagd-peer-ip 169.254.1.1\n clagd-backup-ip
+ 10.0.0.11\n clagd-sys-mac 44:39:39:ff:40:94\n clagd-priority 200\n\n# bridge
+ to hosts\niface swp5\n mtu 9000\n post-up ip link set promisc on dev swp5\n\niface
+ swp6\n mtu 9000\n post-up ip link set promisc on dev swp6\n\niface bond01\n mtu
+ 9000\n bond-slaves swp5\n bridge-access 13\n clag-id 1\n\niface bond02\n mtu
+ 9000\n bond-slaves swp6\n bridge-access 24\n clag-id 2\n\n# Define the bridge
+ for STP\niface bridge\n bridge-vlan-aware yes\n # bridge-ports includes all
+ ports related to VxLAN and CLAG.\n # does not include the Peerlink.4094 subinterface\n bridge-ports
+ bond01 bond02 peerlink vni13 vni24 vxlan4001\n bridge-vids 13 24\n\n# VxLAN Tunnel
+ for Server1-Server3 (Vlan 13)\niface vni13\n mtu 9000\n vxlan-id 13\n bridge-access
+ 13\n bridge-learning off\n\n#VxLAN Tunnel for Server2-Server4 (Vlan 24)\niface
+ vni24\n mtu 9000\n vxlan-id 24\n bridge-access 24\n bridge-learning off\n bridge-arp-nd-suppress
+ on\n\niface vxlan4001\n mtu 9216\n vxlan-id 104001\n bridge-learning
+ off\n bridge-access 4001\n\niface evpn-vrf\n vrf-table auto\n\n#Tenant SVIs
+ - anycast GW\n\niface vlan13\n mtu 9000\n address 172.16.1.12/24\n address-virtual
+ 44:39:39:ff:00:13 172.16.1.1/24\n vlan-id 13\n vlan-raw-device bridge\n vrf
+ evpn-vrf\n\niface vlan24\n mtu 9000\n address 172.16.2.12/24\n address-virtual
+ 44:39:39:ff:00:24 172.16.2.1/24\n vlan-id 24\n vlan-raw-device bridge\n vrf
+ evpn-vrf\n\n#L3 VLAN interface per tenant (for L3 VNI)\n\niface vlan4001\n mtu
+ 9216\n hwaddress 44:39:39:ff:40:94\n vlan-id 4001\n vlan-raw-device bridge\n vrf
+ evpn-vrf\n\nBuilding configuration...\n\nCurrent configuration:\n!\nfrr version
+ 7.4+cl4.2.1u1\nfrr defaults datacenter\nhostname leaf02\nservice integrated-vtysh-config\n!\nvrf
evpn-vrf\n vni 104001\n exit-vrf\n!\ninterface lo\n ip address 10.0.0.12/32\n
ip ospf area 0\n!\ninterface swp1\n ip address 10.0.0.12/32\n ip ospf area 0\n
ip ospf network point-to-point\n!\ninterface swp2\n ip address 10.0.0.12/32\n
@@ -194,36 +194,36 @@ tests:
RR\n !\n address-family ipv4 unicast\n maximum-paths ibgp 16\n exit-address-family\n
!\n address-family l2vpn evpn\n neighbor RR activate\n advertise-all-vni\n exit-address-family\n!\nrouter
ospf\n ospf router-id 10.0.0.12\n passive-interface lo\n!\nline vty\n!\nend\n#
- ports.conf\n# resolv.conf\nnameserver 192.168.123.1 # vrf mgmt", "hostname": "leaf02",
- "timestamp": 1622008051294}, {"namespace": "ospf-ibgp", "config": "# hostname\nleaf03\n#
- interfaces\nauto all\n\niface lo inet loopback\n address 10.0.0.13/32\n vxlan-local-tunnelip
- 10.0.0.13\n clagd-vxlan-anycast-ip 10.0.0.134\n\niface mgmt\n address 127.0.0.1/8\n vrf-table
- auto\n\niface eth0 inet dhcp\n vrf mgmt\n\n# uplinks\niface swp1\n mtu 9216\n\niface
- swp2\n mtu 9216\n\n# uplinks\niface swp3\n mtu 9000\n post-up ip link set promisc
- on dev swp3\n\niface swp4\n mtu 9000\n post-up ip link set promisc on dev swp4\n\niface
- peerlink\n mtu 9000\n bond-slaves swp3 swp4\n\niface peerlink.4094\n address
- 169.254.1.1/30\n clagd-peer-ip 169.254.1.2\n clagd-backup-ip 10.0.0.14\n clagd-sys-mac
- 44:39:39:ff:40:95\n clagd-priority 100\n\n# bridge to hosts\niface swp5\n post-up
- ip link set promisc on dev swp5\n mtu 9000\n\niface swp6\n post-up ip link set
- promisc on dev swp6\n mtu 9000\n\niface bond01\n mtu 9000\n bond-slaves swp5\n bridge-access
- 13\n clag-id 1\n\niface bond02\n mtu 9000\n bond-slaves swp6\n bridge-access
- 24\n clag-id 2\n\n# Define the bridge for STP\niface bridge\n bridge-vlan-aware
- yes\n # bridge-ports includes all ports related to VxLAN and CLAG.\n # does
- not include the Peerlink.4094 subinterface\n bridge-ports bond01 bond02 peerlink
- vni13 vni24 vxlan4001\n bridge-vids 13 24\n\n# VxLAN Tunnel for Server1-Server3
- (Vlan 13)\niface vni13\n mtu 9000\n vxlan-id 13\n bridge-access 13\n bridge-learning
- off\n\n#VxLAN Tunnel for Server2-Server4 (Vlan 24)\niface vni24\n mtu 9000\n vxlan-id
- 24\n bridge-access 24\n bridge-learning off\n bridge-arp-nd-suppress on\n\niface
- vxlan4001\n mtu 9216\n vxlan-id 104001\n bridge-learning off\n bridge-access
- 4001\n\niface evpn-vrf\n vrf-table auto\n\n#Tenant SVIs - anycast GW\n\niface
- vlan13\n mtu 9000\n address 172.16.1.13/24\n address-virtual 44:39:39:ff:00:13
- 172.16.1.1/24\n vlan-id 13\n vlan-raw-device bridge\n vrf evpn-vrf\n\niface
- vlan24\n mtu 9000\n address 172.16.2.13/24\n address-virtual 44:39:39:ff:00:24
- 172.16.2.1/24\n vlan-id 24\n vlan-raw-device bridge\n vrf evpn-vrf\n\n#L3
- VLAN interface per tenant (for L3 VNI)\n\niface vlan4001\n mtu 9216\n hwaddress
- 44:39:39:ff:40:95\n vlan-id 4001\n vlan-raw-device bridge\n vrf evpn-vrf\n\nBuilding
- configuration...\n\nCurrent configuration:\n!\nfrr version 7.4+cl4.2.1u1\nfrr
- defaults datacenter\nhostname leaf03\nservice integrated-vtysh-config\n!\nvrf
+ ports.conf\n# resolv.conf\nnameserver 192.168.123.1 # vrf mgmt", "timestamp":
+ 1622008051294}, {"namespace": "ospf-ibgp", "hostname": "leaf03", "config": "#
+ hostname\nleaf03\n# interfaces\nauto all\n\niface lo inet loopback\n address
+ 10.0.0.13/32\n vxlan-local-tunnelip 10.0.0.13\n clagd-vxlan-anycast-ip 10.0.0.134\n\niface
+ mgmt\n address 127.0.0.1/8\n vrf-table auto\n\niface eth0 inet dhcp\n vrf mgmt\n\n#
+ uplinks\niface swp1\n mtu 9216\n\niface swp2\n mtu 9216\n\n# uplinks\niface
+ swp3\n mtu 9000\n post-up ip link set promisc on dev swp3\n\niface swp4\n mtu
+ 9000\n post-up ip link set promisc on dev swp4\n\niface peerlink\n mtu 9000\n bond-slaves
+ swp3 swp4\n\niface peerlink.4094\n address 169.254.1.1/30\n clagd-peer-ip 169.254.1.2\n clagd-backup-ip
+ 10.0.0.14\n clagd-sys-mac 44:39:39:ff:40:95\n clagd-priority 100\n\n# bridge
+ to hosts\niface swp5\n post-up ip link set promisc on dev swp5\n mtu 9000\n\niface
+ swp6\n post-up ip link set promisc on dev swp6\n mtu 9000\n\niface bond01\n mtu
+ 9000\n bond-slaves swp5\n bridge-access 13\n clag-id 1\n\niface bond02\n mtu
+ 9000\n bond-slaves swp6\n bridge-access 24\n clag-id 2\n\n# Define the bridge
+ for STP\niface bridge\n bridge-vlan-aware yes\n # bridge-ports includes all
+ ports related to VxLAN and CLAG.\n # does not include the Peerlink.4094 subinterface\n bridge-ports
+ bond01 bond02 peerlink vni13 vni24 vxlan4001\n bridge-vids 13 24\n\n# VxLAN Tunnel
+ for Server1-Server3 (Vlan 13)\niface vni13\n mtu 9000\n vxlan-id 13\n bridge-access
+ 13\n bridge-learning off\n\n#VxLAN Tunnel for Server2-Server4 (Vlan 24)\niface
+ vni24\n mtu 9000\n vxlan-id 24\n bridge-access 24\n bridge-learning off\n bridge-arp-nd-suppress
+ on\n\niface vxlan4001\n mtu 9216\n vxlan-id 104001\n bridge-learning
+ off\n bridge-access 4001\n\niface evpn-vrf\n vrf-table auto\n\n#Tenant SVIs
+ - anycast GW\n\niface vlan13\n mtu 9000\n address 172.16.1.13/24\n address-virtual
+ 44:39:39:ff:00:13 172.16.1.1/24\n vlan-id 13\n vlan-raw-device bridge\n vrf
+ evpn-vrf\n\niface vlan24\n mtu 9000\n address 172.16.2.13/24\n address-virtual
+ 44:39:39:ff:00:24 172.16.2.1/24\n vlan-id 24\n vlan-raw-device bridge\n vrf
+ evpn-vrf\n\n#L3 VLAN interface per tenant (for L3 VNI)\n\niface vlan4001\n mtu
+ 9216\n hwaddress 44:39:39:ff:40:95\n vlan-id 4001\n vlan-raw-device bridge\n vrf
+ evpn-vrf\n\nBuilding configuration...\n\nCurrent configuration:\n!\nfrr version
+ 7.4+cl4.2.1u1\nfrr defaults datacenter\nhostname leaf03\nservice integrated-vtysh-config\n!\nvrf
evpn-vrf\n vni 104001\n exit-vrf\n!\ninterface lo\n ip address 10.0.0.13/32\n
ip ospf area 0\n!\ninterface swp1\n ip address 10.0.0.13/32\n ip ospf area 0\n
ip ospf network point-to-point\n!\ninterface swp2\n ip address 10.0.0.13/32\n
@@ -235,36 +235,36 @@ tests:
RR\n !\n address-family ipv4 unicast\n maximum-paths ibgp 16\n exit-address-family\n
!\n address-family l2vpn evpn\n neighbor RR activate\n advertise-all-vni\n exit-address-family\n!\nrouter
ospf\n ospf router-id 10.0.0.13\n passive-interface lo\n!\nline vty\n!\nend\n#
- ports.conf\n# resolv.conf\nnameserver 192.168.123.1 # vrf mgmt", "hostname": "leaf03",
- "timestamp": 1622008051479}, {"namespace": "ospf-ibgp", "config": "# hostname\nleaf04\n#
- interfaces\nauto all\n\niface lo inet loopback\n address 10.0.0.14/32\n vxlan-local-tunnelip
- 10.0.0.14\n clagd-vxlan-anycast-ip 10.0.0.134\n\n\niface mgmt\n address 127.0.0.1/8\n vrf-table
- auto\n\niface eth0 inet dhcp\n vrf mgmt\n\n\n# uplinks\niface swp1\n mtu 9216\n \niface
- swp2\n mtu 9216\n\n# uplinks\niface swp3\n mtu 9000\n post-up ip link set promisc
- on dev swp3\n \n\niface swp4\n mtu 9000\n post-up ip link set promisc on dev
- swp4\n\niface peerlink\n mtu 9000\n bond-slaves swp3 swp4\n\niface peerlink.4094\n address
- 169.254.1.2/30\n clagd-peer-ip 169.254.1.1\n clagd-backup-ip 10.0.0.13\n clagd-sys-mac
- 44:39:39:ff:40:95\n clagd-priority 200\n\n# bridge to hosts\niface swp5\n mtu
- 9000\n post-up ip link set promisc on dev swp5\n\niface swp6\n mtu 9000\n post-up
- ip link set promisc on dev swp6\n\niface bond01\n mtu 9000\n bond-slaves swp5\n bridge-access
- 13\n clag-id 1\n\niface bond02\n mtu 9000\n bond-slaves swp6\n bridge-access
- 24\n clag-id 2\n\n# Define the bridge for STP\niface bridge\n bridge-vlan-aware
- yes\n # bridge-ports includes all ports related to VxLAN and CLAG.\n # does
- not include the Peerlink.4094 subinterface\n bridge-ports bond01 bond02 peerlink
- vni13 vni24 vxlan4001\n bridge-vids 13 24\n\n# VxLAN Tunnel for Server1-Server3
- (Vlan 13)\niface vni13\n mtu 9000\n vxlan-id 13\n bridge-access 13\n bridge-learning
- off\n\n#VxLAN Tunnel for Server2-Server4 (Vlan 24)\niface vni24\n mtu 9000\n vxlan-id
- 24\n bridge-access 24\n bridge-learning off\n bridge-arp-nd-suppress on\n\niface
- vxlan4001\n mtu 9216\n vxlan-id 104001\n bridge-learning off\n bridge-access
- 4001\n\niface evpn-vrf\n vrf-table auto\n\n#Tenant SVIs - anycast GW\n\niface
- vlan13\n mtu 9000\n address 172.16.1.14/24\n address-virtual 44:39:39:ff:00:13
- 172.16.1.1/24\n vlan-id 13\n vlan-raw-device bridge\n vrf evpn-vrf\n\niface
- vlan24\n mtu 9000\n address 172.16.2.14/24\n address-virtual 44:39:39:ff:00:24
- 172.16.2.1/24\n vlan-id 24\n vlan-raw-device bridge\n vrf evpn-vrf\n\n#L3
- VLAN interface per tenant (for L3 VNI)\n\niface vlan4001\n mtu 9216\n hwaddress
- 44:39:39:ff:40:95\n vlan-id 4001\n vlan-raw-device bridge\n vrf evpn-vrf\n\nBuilding
- configuration...\n\nCurrent configuration:\n!\nfrr version 7.4+cl4.2.1u1\nfrr
- defaults datacenter\nhostname leaf04\nservice integrated-vtysh-config\n!\nvrf
+ ports.conf\n# resolv.conf\nnameserver 192.168.123.1 # vrf mgmt", "timestamp":
+ 1622008051479}, {"namespace": "ospf-ibgp", "hostname": "leaf04", "config": "#
+ hostname\nleaf04\n# interfaces\nauto all\n\niface lo inet loopback\n address
+ 10.0.0.14/32\n vxlan-local-tunnelip 10.0.0.14\n clagd-vxlan-anycast-ip 10.0.0.134\n\n\niface
+ mgmt\n address 127.0.0.1/8\n vrf-table auto\n\niface eth0 inet dhcp\n vrf mgmt\n\n\n#
+ uplinks\niface swp1\n mtu 9216\n \niface swp2\n mtu 9216\n\n# uplinks\niface
+ swp3\n mtu 9000\n post-up ip link set promisc on dev swp3\n \n\niface swp4\n mtu
+ 9000\n post-up ip link set promisc on dev swp4\n\niface peerlink\n mtu 9000\n bond-slaves
+ swp3 swp4\n\niface peerlink.4094\n address 169.254.1.2/30\n clagd-peer-ip 169.254.1.1\n clagd-backup-ip
+ 10.0.0.13\n clagd-sys-mac 44:39:39:ff:40:95\n clagd-priority 200\n\n# bridge
+ to hosts\niface swp5\n mtu 9000\n post-up ip link set promisc on dev swp5\n\niface
+ swp6\n mtu 9000\n post-up ip link set promisc on dev swp6\n\niface bond01\n mtu
+ 9000\n bond-slaves swp5\n bridge-access 13\n clag-id 1\n\niface bond02\n mtu
+ 9000\n bond-slaves swp6\n bridge-access 24\n clag-id 2\n\n# Define the bridge
+ for STP\niface bridge\n bridge-vlan-aware yes\n # bridge-ports includes all
+ ports related to VxLAN and CLAG.\n # does not include the Peerlink.4094 subinterface\n bridge-ports
+ bond01 bond02 peerlink vni13 vni24 vxlan4001\n bridge-vids 13 24\n\n# VxLAN Tunnel
+ for Server1-Server3 (Vlan 13)\niface vni13\n mtu 9000\n vxlan-id 13\n bridge-access
+ 13\n bridge-learning off\n\n#VxLAN Tunnel for Server2-Server4 (Vlan 24)\niface
+ vni24\n mtu 9000\n vxlan-id 24\n bridge-access 24\n bridge-learning off\n bridge-arp-nd-suppress
+ on\n\niface vxlan4001\n mtu 9216\n vxlan-id 104001\n bridge-learning
+ off\n bridge-access 4001\n\niface evpn-vrf\n vrf-table auto\n\n#Tenant SVIs
+ - anycast GW\n\niface vlan13\n mtu 9000\n address 172.16.1.14/24\n address-virtual
+ 44:39:39:ff:00:13 172.16.1.1/24\n vlan-id 13\n vlan-raw-device bridge\n vrf
+ evpn-vrf\n\niface vlan24\n mtu 9000\n address 172.16.2.14/24\n address-virtual
+ 44:39:39:ff:00:24 172.16.2.1/24\n vlan-id 24\n vlan-raw-device bridge\n vrf
+ evpn-vrf\n\n#L3 VLAN interface per tenant (for L3 VNI)\n\niface vlan4001\n mtu
+ 9216\n hwaddress 44:39:39:ff:40:95\n vlan-id 4001\n vlan-raw-device bridge\n vrf
+ evpn-vrf\n\nBuilding configuration...\n\nCurrent configuration:\n!\nfrr version
+ 7.4+cl4.2.1u1\nfrr defaults datacenter\nhostname leaf04\nservice integrated-vtysh-config\n!\nvrf
evpn-vrf\n vni 104001\n exit-vrf\n!\ninterface lo\n ip address 10.0.0.14/32\n
ip ospf area 0\n!\ninterface swp1\n ip address 10.0.0.14/32\n ip ospf area 0\n
ip ospf network point-to-point\n!\ninterface swp2\n ip address 10.0.0.14/32\n
@@ -276,10 +276,10 @@ tests:
RR\n !\n address-family ipv4 unicast\n maximum-paths ibgp 16\n exit-address-family\n
!\n address-family l2vpn evpn\n neighbor RR activate\n advertise-all-vni\n exit-address-family\n!\nrouter
ospf\n ospf router-id 10.0.0.14\n passive-interface lo\n!\nline vty\n!\nend\n#
- ports.conf\n# resolv.conf\nnameserver 192.168.123.1 # vrf mgmt", "hostname": "leaf04",
- "timestamp": 1622008051479}, {"namespace": "ospf-ibgp", "config": "# hostname\nspine01\n#
- interfaces\nauto all\n\niface lo inet loopback\n\n# Management interface\n\niface
- eth0 inet dhcp\n vrf mgmt\n\niface mgmt\n address 127.0.0.1/8\n vrf-table
+ ports.conf\n# resolv.conf\nnameserver 192.168.123.1 # vrf mgmt", "timestamp":
+ 1622008051479}, {"namespace": "ospf-ibgp", "hostname": "spine01", "config": "#
+ hostname\nspine01\n# interfaces\nauto all\n\niface lo inet loopback\n\n# Management
+ interface\n\niface eth0 inet dhcp\n vrf mgmt\n\niface mgmt\n address 127.0.0.1/8\n vrf-table
auto\n\n# downlinks\niface swp1\n mtu 9216\niface swp2\n mtu 9216\niface
swp3\n mtu 9216\niface swp4\n mtu 9216\niface swp5\n mtu 9216\niface
swp6\n mtu 9216\n\nBuilding configuration...\n\nCurrent configuration:\n!\nfrr
@@ -302,12 +302,13 @@ tests:
!\n address-family l2vpn evpn\n neighbor RR activate\n neighbor RR route-reflector-client\n
exit-address-family\n!\nrouter ospf\n ospf router-id 10.0.0.22\n passive-interface
lo\n!\nline vty\n!\nend\n# ports.conf\n# resolv.conf\nnameserver 192.168.123.1
- # vrf mgmt", "hostname": "spine01", "timestamp": 1622008051479}]'
-- command: devconfig show --hostname=leaf01 --format=json --namespace='ospf-single dual-evpn ospf-ibgp'
+ # vrf mgmt", "timestamp": 1622008051479}]'
+- command: devconfig show --hostname=leaf01 --format=json --namespace='ospf-single
+ dual-evpn ospf-ibgp'
data-directory: tests/data/parquet/
marks: devconfig show cumulus
- output: '[{"namespace": "ospf-ibgp", "config": "# hostname\nleaf01\n# interfaces\nauto
- all\n\niface lo inet loopback\n address 10.0.0.11/32\n vxlan-local-tunnelip
+ output: '[{"namespace": "ospf-ibgp", "hostname": "leaf01", "config": "# hostname\nleaf01\n#
+ interfaces\nauto all\n\niface lo inet loopback\n address 10.0.0.11/32\n vxlan-local-tunnelip
10.0.0.11\n clagd-vxlan-anycast-ip 10.0.0.112\n\niface mgmt\n address 127.0.0.1/8\n vrf-table
auto\n\niface eth0 inet dhcp\n vrf mgmt\n\n# uplinks\niface swp1\n mtu 9216\n\niface
swp2\n mtu 9216\n\n# uplinks\niface swp3\n mtu 9000\n post-up ip link set promisc
@@ -346,13 +347,14 @@ tests:
RR\n !\n address-family ipv4 unicast\n maximum-paths ibgp 16\n exit-address-family\n
!\n address-family l2vpn evpn\n neighbor RR activate\n advertise-all-vni\n exit-address-family\n!\nrouter
ospf\n ospf router-id 10.0.0.11\n passive-interface lo\n!\nline vty\n!\nend\n#
- ports.conf\n# resolv.conf\nnameserver 192.168.123.1 # vrf mgmt", "hostname": "leaf01",
- "timestamp": 1622008051293}]'
-- command: devconfig show --hostname='leaf01 spine01' --format=json --namespace='ospf-single dual-evpn ospf-ibgp'
+ ports.conf\n# resolv.conf\nnameserver 192.168.123.1 # vrf mgmt", "timestamp":
+ 1622008051293}]'
+- command: devconfig show --hostname='leaf01 spine01' --format=json --namespace='ospf-single
+ dual-evpn ospf-ibgp'
data-directory: tests/data/parquet/
marks: devconfig show cumulus
- output: '[{"namespace": "ospf-ibgp", "config": "# hostname\nleaf01\n# interfaces\nauto
- all\n\niface lo inet loopback\n address 10.0.0.11/32\n vxlan-local-tunnelip
+ output: '[{"namespace": "ospf-ibgp", "hostname": "leaf01", "config": "# hostname\nleaf01\n#
+ interfaces\nauto all\n\niface lo inet loopback\n address 10.0.0.11/32\n vxlan-local-tunnelip
10.0.0.11\n clagd-vxlan-anycast-ip 10.0.0.112\n\niface mgmt\n address 127.0.0.1/8\n vrf-table
auto\n\niface eth0 inet dhcp\n vrf mgmt\n\n# uplinks\niface swp1\n mtu 9216\n\niface
swp2\n mtu 9216\n\n# uplinks\niface swp3\n mtu 9000\n post-up ip link set promisc
@@ -391,10 +393,10 @@ tests:
RR\n !\n address-family ipv4 unicast\n maximum-paths ibgp 16\n exit-address-family\n
!\n address-family l2vpn evpn\n neighbor RR activate\n advertise-all-vni\n exit-address-family\n!\nrouter
ospf\n ospf router-id 10.0.0.11\n passive-interface lo\n!\nline vty\n!\nend\n#
- ports.conf\n# resolv.conf\nnameserver 192.168.123.1 # vrf mgmt", "hostname": "leaf01",
- "timestamp": 1622008051293}, {"namespace": "ospf-ibgp", "config": "# hostname\nspine01\n#
- interfaces\nauto all\n\niface lo inet loopback\n\n# Management interface\n\niface
- eth0 inet dhcp\n vrf mgmt\n\niface mgmt\n address 127.0.0.1/8\n vrf-table
+ ports.conf\n# resolv.conf\nnameserver 192.168.123.1 # vrf mgmt", "timestamp":
+ 1622008051293}, {"namespace": "ospf-ibgp", "hostname": "spine01", "config": "#
+ hostname\nspine01\n# interfaces\nauto all\n\niface lo inet loopback\n\n# Management
+ interface\n\niface eth0 inet dhcp\n vrf mgmt\n\niface mgmt\n address 127.0.0.1/8\n vrf-table
auto\n\n# downlinks\niface swp1\n mtu 9216\niface swp2\n mtu 9216\niface
swp3\n mtu 9216\niface swp4\n mtu 9216\niface swp5\n mtu 9216\niface
swp6\n mtu 9216\n\nBuilding configuration...\n\nCurrent configuration:\n!\nfrr
@@ -417,9 +419,9 @@ tests:
!\n address-family l2vpn evpn\n neighbor RR activate\n neighbor RR route-reflector-client\n
exit-address-family\n!\nrouter ospf\n ospf router-id 10.0.0.22\n passive-interface
lo\n!\nline vty\n!\nend\n# ports.conf\n# resolv.conf\nnameserver 192.168.123.1
- # vrf mgmt", "hostname": "spine01", "timestamp": 1622008051479}]'
-- command: devconfig show --hostname='leaf01 spine01' --query-str='config.str.contains("10.0.0.21")' --namespace='ospf-single dual-evpn ospf-ibgp'
- --format=json
+ # vrf mgmt", "timestamp": 1622008051479}]'
+- command: devconfig show --hostname='leaf01 spine01' --query-str='config.str.contains("10.0.0.21")'
+ --namespace='ospf-single dual-evpn ospf-ibgp' --format=json
data-directory: tests/data/parquet/
marks: devconfig show cumulus
output: '[]'
@@ -427,12 +429,274 @@ tests:
data-directory: tests/data/parquet/
marks: devconfig summarize cumulus
output: '{"ospf-ibgp": {"deviceCnt": 9}}'
-- command: devconfig summarize --hostname='leaf01 spine01' --format=json --namespace='ospf-single dual-evpn ospf-ibgp'
+- command: devconfig summarize --hostname='leaf01 spine01' --format=json --namespace='ospf-single
+ dual-evpn ospf-ibgp'
data-directory: tests/data/parquet/
marks: devconfig summarize cumulus
output: '{"ospf-ibgp": {"deviceCnt": 2}}'
-- command: devconfig unique --columns=config --format=json --namespace='ospf-single dual-evpn ospf-ibgp'
+- command: devconfig unique --columns=config --format=json --namespace='ospf-single
+ dual-evpn ospf-ibgp'
data-directory: tests/data/parquet/
error:
error: '[{"error": "Unique not supported for Device Config"}]'
marks: devconfig unique cumulus
+- command: devconfig show --format=json --namespace=ospf-ibgp --section='^iface swp1$'
+ data-directory: tests/data/parquet/
+ marks: devconfig show cumulus
+ output: '[{"namespace": "ospf-ibgp", "hostname": "spine02", "config": "iface swp1\n mtu
+ 9216", "timestamp": 1622008051074}, {"namespace": "ospf-ibgp", "hostname": "internet",
+ "config": "iface swp1", "timestamp": 1622008051293}, {"namespace": "ospf-ibgp",
+ "hostname": "leaf01", "config": "iface swp1\n mtu 9216", "timestamp": 1622008051293},
+ {"namespace": "ospf-ibgp", "hostname": "exit01", "config": "iface swp1\n mtu
+ 9216", "timestamp": 1622008051294}, {"namespace": "ospf-ibgp", "hostname": "exit02",
+ "config": "iface swp1\n mtu 9216", "timestamp": 1622008051294}, {"namespace":
+ "ospf-ibgp", "hostname": "leaf02", "config": "iface swp1\n mtu 9216\n ", "timestamp":
+ 1622008051294}, {"namespace": "ospf-ibgp", "hostname": "leaf03", "config": "iface
+ swp1\n mtu 9216", "timestamp": 1622008051479}, {"namespace": "ospf-ibgp", "hostname":
+ "leaf04", "config": "iface swp1\n mtu 9216\n ", "timestamp": 1622008051479},
+ {"namespace": "ospf-ibgp", "hostname": "spine01", "config": "iface swp1\n mtu
+ 9216", "timestamp": 1622008051479}]'
+- command: devconfig show --format=json --namespace=ospf-ibgp --section='iface'
+ data-directory: tests/data/parquet/
+ marks: devconfig show cumulus
+ output: '[{"namespace": "ospf-ibgp", "hostname": "spine02", "config": "iface lo
+ inet loopback\niface eth0 inet dhcp\n vrf mgmt\niface mgmt\n address 127.0.0.1/8\n vrf-table
+ auto\niface swp1\n mtu 9216\niface swp2\n mtu 9216\niface swp3\n mtu
+ 9216\niface swp4\n mtu 9216\niface swp5\n mtu 9216\niface swp6\n mtu
+ 9216", "timestamp": 1622008051074}, {"namespace": "ospf-ibgp", "hostname": "internet",
+ "config": "iface lo inet loopback\niface eth0 inet dhcp\niface swp1\niface swp2",
+ "timestamp": 1622008051293}, {"namespace": "ospf-ibgp", "hostname": "leaf01",
+ "config": "iface lo inet loopback\n address 10.0.0.11/32\n vxlan-local-tunnelip
+ 10.0.0.11\n clagd-vxlan-anycast-ip 10.0.0.112\niface mgmt\n address 127.0.0.1/8\n vrf-table
+ auto\niface eth0 inet dhcp\n vrf mgmt\niface swp1\n mtu 9216\niface swp2\n mtu
+ 9216\niface swp3\n mtu 9000\n post-up ip link set promisc on dev swp3\niface
+ swp4\n mtu 9000\n post-up ip link set promisc on dev swp4\niface peerlink\n mtu
+ 9000\n bond-slaves swp3 swp4\niface peerlink.4094\n address 169.254.1.1/30\n clagd-peer-ip
+ 169.254.1.2\n clagd-backup-ip 10.0.0.12\n clagd-sys-mac 44:39:39:ff:40:94\n clagd-priority
+ 100\niface swp5\n post-up ip link set promisc on dev swp5\n mtu 9000\niface
+ swp6\n post-up ip link set promisc on dev swp6\n mtu 9000\niface bond01\n mtu
+ 9000\n bond-slaves swp5\n bridge-access 13\n clag-id 1\niface bond02\n mtu
+ 9000\n bond-slaves swp6\n bridge-access 24\n clag-id 2\niface bridge\n bridge-vlan-aware
+ yes\n # bridge-ports includes all ports related to VxLAN and CLAG.\n # does
+ not include the Peerlink.4094 subinterface\n bridge-ports bond01 bond02 peerlink
+ vni13 vni24 vxlan4001\n bridge-vids 13 24\niface vni13\n mtu 9000\n vxlan-id
+ 13\n bridge-access 13\n bridge-learning off\niface vni24\n mtu 9000\n vxlan-id
+ 24\n bridge-access 24\n bridge-learning off\n bridge-arp-nd-suppress on\niface
+ vxlan4001\n mtu 9216\n vxlan-id 104001\n bridge-learning off\n bridge-access
+ 4001\niface evpn-vrf\n vrf-table auto\niface vlan13\n mtu 9000\n address
+ 172.16.1.11/24\n address-virtual 44:39:39:ff:00:13 172.16.1.1/24\n vlan-id
+ 13\n vlan-raw-device bridge\n vrf evpn-vrf\niface vlan24\n mtu 9000\n address
+ 172.16.2.11/24\n address-virtual 44:39:39:ff:00:24 172.16.2.1/24\n vlan-id
+ 24\n vlan-raw-device bridge\n vrf evpn-vrf\niface vlan4001\n mtu 9216\n hwaddress
+ 44:39:39:ff:40:94\n vlan-id 4001\n vlan-raw-device bridge\n vrf evpn-vrf",
+ "timestamp": 1622008051293}, {"namespace": "ospf-ibgp", "hostname": "exit01",
+ "config": "iface lo inet loopback\n\taddress 10.0.0.101/32\n\tvxlan-local-tunnelip
+ 10.0.0.101\niface eth0 inet dhcp\n\tvrf mgmt\niface evpn-vrf\n\taddress 10.0.0.101/32\n\tvrf-table
+ auto\niface mgmt\n\taddress 127.0.0.1/8\n\tvrf-table auto\niface internet-vrf\n\taddress
+ 10.0.0.101/32\n\tvrf-table auto\niface bridge\n\tbridge-vlan-aware yes\n\tbridge-vids
+ 4001\n\tbridge-ports vxlan4001\niface vlan4001\n mtu 9216\n\tvlan-id 4001\n\tvlan-raw-device
+ bridge\n\tvrf evpn-vrf\niface swp1\n mtu 9216\niface swp2\n mtu 9216\niface
+ swp5\niface swp5.2\niface swp5.3\n\tvrf evpn-vrf\niface swp5.4\n\tvrf internet-vrf\niface
+ swp6\n\tvrf internet-vrf\niface vxlan4001\n mtu 9216\n\tvxlan-id 104001\n\tbridge-learning
+ off\n\tbridge-access 4001", "timestamp": 1622008051294}, {"namespace": "ospf-ibgp",
+ "hostname": "exit02", "config": "iface lo inet loopback\n\taddress 10.0.0.102/32\n\tvxlan-local-tunnelip
+ 10.0.0.102\niface eth0 inet dhcp\n\tvrf mgmt\niface evpn-vrf\n\taddress 10.0.0.102/32\n\tvrf-table
+ auto\niface mgmt\n\taddress 127.0.0.1/8\n\tvrf-table auto\niface internet-vrf\n\taddress
+ 10.0.0.102/32\n\tvrf-table auto\niface bridge\n\tbridge-vlan-aware yes\n\tbridge-vids
+ 4001\n\tbridge-ports vxlan4001\niface vlan4001\n mtu 9216\n\tvlan-id 4001\n\tvlan-raw-device
+ bridge\n\tvrf evpn-vrf\niface swp1\n mtu 9216\niface swp2\n mtu 9216\niface
+ swp5\niface swp5.2\niface swp5.3\n\tvrf evpn-vrf\niface swp5.4\n\tvrf internet-vrf\niface
+ swp6\n\tvrf internet-vrf\niface vxlan4001\n mtu 9216\n\tvxlan-id 104001\n\tbridge-learning
+ off\n\tbridge-access 4001", "timestamp": 1622008051294}, {"namespace": "ospf-ibgp",
+ "hostname": "leaf02", "config": "iface lo inet loopback\n address 10.0.0.12/32\n vxlan-local-tunnelip
+ 10.0.0.12\n clagd-vxlan-anycast-ip 10.0.0.112\niface mgmt\n address 127.0.0.1/8\n vrf-table
+ auto\niface eth0 inet dhcp\n vrf mgmt\niface swp1\n mtu 9216\n \niface swp2\n mtu
+ 9216\niface swp3\n mtu 9000\n post-up ip link set promisc on dev swp3\n \niface
+ swp4\n mtu 9000\n post-up ip link set promisc on dev swp4\niface peerlink\n mtu
+ 9000\n bond-slaves swp3 swp4\niface peerlink.4094\n address 169.254.1.2/30\n clagd-peer-ip
+ 169.254.1.1\n clagd-backup-ip 10.0.0.11\n clagd-sys-mac 44:39:39:ff:40:94\n clagd-priority
+ 200\niface swp5\n mtu 9000\n post-up ip link set promisc on dev swp5\niface
+ swp6\n mtu 9000\n post-up ip link set promisc on dev swp6\niface bond01\n mtu
+ 9000\n bond-slaves swp5\n bridge-access 13\n clag-id 1\niface bond02\n mtu
+ 9000\n bond-slaves swp6\n bridge-access 24\n clag-id 2\niface bridge\n bridge-vlan-aware
+ yes\n # bridge-ports includes all ports related to VxLAN and CLAG.\n # does
+ not include the Peerlink.4094 subinterface\n bridge-ports bond01 bond02 peerlink
+ vni13 vni24 vxlan4001\n bridge-vids 13 24\niface vni13\n mtu 9000\n vxlan-id
+ 13\n bridge-access 13\n bridge-learning off\niface vni24\n mtu 9000\n vxlan-id
+ 24\n bridge-access 24\n bridge-learning off\n bridge-arp-nd-suppress on\niface
+ vxlan4001\n mtu 9216\n vxlan-id 104001\n bridge-learning off\n bridge-access
+ 4001\niface evpn-vrf\n vrf-table auto\niface vlan13\n mtu 9000\n address
+ 172.16.1.12/24\n address-virtual 44:39:39:ff:00:13 172.16.1.1/24\n vlan-id
+ 13\n vlan-raw-device bridge\n vrf evpn-vrf\niface vlan24\n mtu 9000\n address
+ 172.16.2.12/24\n address-virtual 44:39:39:ff:00:24 172.16.2.1/24\n vlan-id
+ 24\n vlan-raw-device bridge\n vrf evpn-vrf\niface vlan4001\n mtu 9216\n hwaddress
+ 44:39:39:ff:40:94\n vlan-id 4001\n vlan-raw-device bridge\n vrf evpn-vrf",
+ "timestamp": 1622008051294}, {"namespace": "ospf-ibgp", "hostname": "leaf03",
+ "config": "iface lo inet loopback\n address 10.0.0.13/32\n vxlan-local-tunnelip
+ 10.0.0.13\n clagd-vxlan-anycast-ip 10.0.0.134\niface mgmt\n address 127.0.0.1/8\n vrf-table
+ auto\niface eth0 inet dhcp\n vrf mgmt\niface swp1\n mtu 9216\niface swp2\n mtu
+ 9216\niface swp3\n mtu 9000\n post-up ip link set promisc on dev swp3\niface
+ swp4\n mtu 9000\n post-up ip link set promisc on dev swp4\niface peerlink\n mtu
+ 9000\n bond-slaves swp3 swp4\niface peerlink.4094\n address 169.254.1.1/30\n clagd-peer-ip
+ 169.254.1.2\n clagd-backup-ip 10.0.0.14\n clagd-sys-mac 44:39:39:ff:40:95\n clagd-priority
+ 100\niface swp5\n post-up ip link set promisc on dev swp5\n mtu 9000\niface
+ swp6\n post-up ip link set promisc on dev swp6\n mtu 9000\niface bond01\n mtu
+ 9000\n bond-slaves swp5\n bridge-access 13\n clag-id 1\niface bond02\n mtu
+ 9000\n bond-slaves swp6\n bridge-access 24\n clag-id 2\niface bridge\n bridge-vlan-aware
+ yes\n # bridge-ports includes all ports related to VxLAN and CLAG.\n # does
+ not include the Peerlink.4094 subinterface\n bridge-ports bond01 bond02 peerlink
+ vni13 vni24 vxlan4001\n bridge-vids 13 24\niface vni13\n mtu 9000\n vxlan-id
+ 13\n bridge-access 13\n bridge-learning off\niface vni24\n mtu 9000\n vxlan-id
+ 24\n bridge-access 24\n bridge-learning off\n bridge-arp-nd-suppress on\niface
+ vxlan4001\n mtu 9216\n vxlan-id 104001\n bridge-learning off\n bridge-access
+ 4001\niface evpn-vrf\n vrf-table auto\niface vlan13\n mtu 9000\n address
+ 172.16.1.13/24\n address-virtual 44:39:39:ff:00:13 172.16.1.1/24\n vlan-id
+ 13\n vlan-raw-device bridge\n vrf evpn-vrf\niface vlan24\n mtu 9000\n address
+ 172.16.2.13/24\n address-virtual 44:39:39:ff:00:24 172.16.2.1/24\n vlan-id
+ 24\n vlan-raw-device bridge\n vrf evpn-vrf\niface vlan4001\n mtu 9216\n hwaddress
+ 44:39:39:ff:40:95\n vlan-id 4001\n vlan-raw-device bridge\n vrf evpn-vrf",
+ "timestamp": 1622008051479}, {"namespace": "ospf-ibgp", "hostname": "leaf04",
+ "config": "iface lo inet loopback\n address 10.0.0.14/32\n vxlan-local-tunnelip
+ 10.0.0.14\n clagd-vxlan-anycast-ip 10.0.0.134\niface mgmt\n address 127.0.0.1/8\n vrf-table
+ auto\niface eth0 inet dhcp\n vrf mgmt\niface swp1\n mtu 9216\n \niface swp2\n mtu
+ 9216\niface swp3\n mtu 9000\n post-up ip link set promisc on dev swp3\n \niface
+ swp4\n mtu 9000\n post-up ip link set promisc on dev swp4\niface peerlink\n mtu
+ 9000\n bond-slaves swp3 swp4\niface peerlink.4094\n address 169.254.1.2/30\n clagd-peer-ip
+ 169.254.1.1\n clagd-backup-ip 10.0.0.13\n clagd-sys-mac 44:39:39:ff:40:95\n clagd-priority
+ 200\niface swp5\n mtu 9000\n post-up ip link set promisc on dev swp5\niface
+ swp6\n mtu 9000\n post-up ip link set promisc on dev swp6\niface bond01\n mtu
+ 9000\n bond-slaves swp5\n bridge-access 13\n clag-id 1\niface bond02\n mtu
+ 9000\n bond-slaves swp6\n bridge-access 24\n clag-id 2\niface bridge\n bridge-vlan-aware
+ yes\n # bridge-ports includes all ports related to VxLAN and CLAG.\n # does
+ not include the Peerlink.4094 subinterface\n bridge-ports bond01 bond02 peerlink
+ vni13 vni24 vxlan4001\n bridge-vids 13 24\niface vni13\n mtu 9000\n vxlan-id
+ 13\n bridge-access 13\n bridge-learning off\niface vni24\n mtu 9000\n vxlan-id
+ 24\n bridge-access 24\n bridge-learning off\n bridge-arp-nd-suppress on\niface
+ vxlan4001\n mtu 9216\n vxlan-id 104001\n bridge-learning off\n bridge-access
+ 4001\niface evpn-vrf\n vrf-table auto\niface vlan13\n mtu 9000\n address
+ 172.16.1.14/24\n address-virtual 44:39:39:ff:00:13 172.16.1.1/24\n vlan-id
+ 13\n vlan-raw-device bridge\n vrf evpn-vrf\niface vlan24\n mtu 9000\n address
+ 172.16.2.14/24\n address-virtual 44:39:39:ff:00:24 172.16.2.1/24\n vlan-id
+ 24\n vlan-raw-device bridge\n vrf evpn-vrf\niface vlan4001\n mtu 9216\n hwaddress
+ 44:39:39:ff:40:95\n vlan-id 4001\n vlan-raw-device bridge\n vrf evpn-vrf",
+ "timestamp": 1622008051479}, {"namespace": "ospf-ibgp", "hostname": "spine01",
+ "config": "iface lo inet loopback\niface eth0 inet dhcp\n vrf mgmt\niface mgmt\n address
+ 127.0.0.1/8\n vrf-table auto\niface swp1\n mtu 9216\niface swp2\n mtu
+ 9216\niface swp3\n mtu 9216\niface swp4\n mtu 9216\niface swp5\n mtu
+ 9216\niface swp6\n mtu 9216", "timestamp": 1622008051479}]'
+- command: devconfig show --format=json --namespace=ospf-ibgp --section='ip ospf network
+ point-to-point'
+ data-directory: tests/data/parquet/
+ marks: devconfig show cumulus
+ output: '[{"namespace": "ospf-ibgp", "hostname": "spine02", "config": " ip ospf
+ network point-to-point\n ip ospf network point-to-point\n ip ospf network point-to-point\n
+ ip ospf network point-to-point\n ip ospf network point-to-point\n ip ospf network
+ point-to-point", "timestamp": 1622008051074}, {"namespace": "ospf-ibgp", "hostname":
+ "leaf01", "config": " ip ospf network point-to-point\n ip ospf network point-to-point",
+ "timestamp": 1622008051293}, {"namespace": "ospf-ibgp", "hostname": "exit01",
+ "config": " ip ospf network point-to-point\n ip ospf network point-to-point",
+ "timestamp": 1622008051294}, {"namespace": "ospf-ibgp", "hostname": "exit02",
+ "config": " ip ospf network point-to-point\n ip ospf network point-to-point",
+ "timestamp": 1622008051294}, {"namespace": "ospf-ibgp", "hostname": "leaf02",
+ "config": " ip ospf network point-to-point\n ip ospf network point-to-point",
+ "timestamp": 1622008051294}, {"namespace": "ospf-ibgp", "hostname": "leaf03",
+ "config": " ip ospf network point-to-point\n ip ospf network point-to-point",
+ "timestamp": 1622008051479}, {"namespace": "ospf-ibgp", "hostname": "leaf04",
+ "config": " ip ospf network point-to-point\n ip ospf network point-to-point",
+ "timestamp": 1622008051479}, {"namespace": "ospf-ibgp", "hostname": "spine01",
+ "config": " ip ospf network point-to-point\n ip ospf network point-to-point\n
+ ip ospf network point-to-point\n ip ospf network point-to-point\n ip ospf network
+ point-to-point\n ip ospf network point-to-point", "timestamp": 1622008051479}]'
+- command: devconfig show --format=json --namespace=ospf-ibgp --section='router bgp'
+ data-directory: tests/data/parquet/
+ marks: devconfig show cumulus
+ output: '[{"namespace": "ospf-ibgp", "hostname": "spine02", "config": "router bgp
+ 65000\n bgp router-id 10.0.0.21\n no bgp default ipv4-unicast\n bgp bestpath as-path
+ multipath-relax\n neighbor RR peer-group\n neighbor RR remote-as internal\n neighbor
+ RR bfd\n neighbor RR advertisement-interval 0\n neighbor RR timers 3 10\n neighbor
+ RR timers connect 5\n neighbor swp1 interface peer-group RR\n neighbor swp2 interface
+ peer-group RR\n neighbor swp3 interface peer-group RR\n neighbor swp4 interface
+ peer-group RR\n neighbor swp6 interface peer-group RR\n !\n address-family ipv4
+ unicast\n neighbor RR activate\n neighbor RR route-reflector-client\n maximum-paths
+ ibgp 16\n exit-address-family\n !\n address-family l2vpn evpn\n neighbor RR activate\n neighbor
+ RR route-reflector-client\n exit-address-family", "timestamp": 1622008051074},
+ {"namespace": "ospf-ibgp", "hostname": "internet", "config": "router bgp 25253\n
+ bgp router-id 10.0.0.253\n no bgp default ipv4-unicast\n bgp bestpath as-path
+ multipath-relax\n neighbor ISL peer-group\n neighbor ISL remote-as external\n
+ neighbor ISL bfd\n neighbor swp1 interface peer-group ISL\n neighbor swp2 interface
+ peer-group ISL\n !\n address-family ipv4 unicast\n redistribute connected route-map
+ LOOPBACKS\n neighbor ISL activate\n neighbor ISL default-originate\n exit-address-family",
+ "timestamp": 1622008051293}, {"namespace": "ospf-ibgp", "hostname": "leaf01",
+ "config": "router bgp 65000\n bgp router-id 10.0.0.11\n no bgp default ipv4-unicast\n
+ bgp bestpath as-path multipath-relax\n neighbor RR peer-group\n neighbor RR remote-as
+ internal\n neighbor RR bfd\n neighbor RR advertisement-interval 0\n neighbor RR
+ timers 3 10\n neighbor RR timers connect 5\n neighbor swp1 interface peer-group
+ RR\n neighbor swp2 interface peer-group RR\n !\n address-family ipv4 unicast\n maximum-paths
+ ibgp 16\n exit-address-family\n !\n address-family l2vpn evpn\n neighbor RR activate\n advertise-all-vni\n
+ exit-address-family", "timestamp": 1622008051293}, {"namespace": "ospf-ibgp",
+ "hostname": "exit01", "config": "router bgp 65000\n bgp router-id 10.0.0.101\n
+ no bgp default ipv4-unicast\n neighbor RR peer-group\n neighbor RR remote-as internal\n
+ neighbor RR bfd\n neighbor RR timers connect 5\n neighbor swp1 interface peer-group
+ RR\n neighbor swp2 interface peer-group RR\n neighbor swp5.2 interface remote-as
+ external\n !\n address-family ipv4 unicast\n redistribute ospf\n neighbor RR
+ activate\n neighbor swp5.2 activate\n maximum-paths ibgp 16\n exit-address-family\n
+ !\n address-family l2vpn evpn\n neighbor RR activate\n advertise-all-vni\n exit-address-family\nrouter
+ bgp 65000 vrf evpn-vrf\n bgp router-id 10.0.0.101\n no bgp default ipv4-unicast\n
+ neighbor swp5.3 interface remote-as external\n !\n address-family ipv4 unicast\n aggregate-address
+ 172.16.1.0/24 summary-only\n aggregate-address 172.16.2.0/24 summary-only\n neighbor
+ swp5.3 activate\n exit-address-family\n !\n address-family l2vpn evpn\n advertise
+ ipv4 unicast\n exit-address-family\nrouter bgp 65001 vrf internet-vrf\n bgp router-id
+ 10.0.0.101\n no bgp default ipv4-unicast\n neighbor EDGE peer-group\n neighbor
+ EDGE remote-as external\n neighbor EDGE bfd\n neighbor swp5.4 interface peer-group
+ EDGE\n neighbor swp6 interface peer-group EDGE\n !\n address-family ipv4 unicast\n neighbor
+ EDGE activate\n exit-address-family", "timestamp": 1622008051294}, {"namespace":
+ "ospf-ibgp", "hostname": "exit02", "config": "router bgp 65000\n bgp router-id
+ 10.0.0.102\n no bgp default ipv4-unicast\n neighbor RR peer-group\n neighbor RR
+ remote-as internal\n neighbor RR bfd\n neighbor RR advertisement-interval 0\n
+ neighbor RR timers 3 10\n neighbor RR timers connect 5\n neighbor swp1 interface
+ peer-group RR\n neighbor swp2 interface peer-group RR\n neighbor swp5.2 interface
+ remote-as external\n !\n address-family ipv4 unicast\n redistribute ospf\n neighbor
+ RR activate\n neighbor swp5.2 activate\n maximum-paths ibgp 16\n exit-address-family\n
+ !\n address-family l2vpn evpn\n neighbor RR activate\n advertise-all-vni\n exit-address-family\nrouter
+ bgp 65000 vrf evpn-vrf\n bgp router-id 10.0.0.102\n no bgp default ipv4-unicast\n
+ neighbor swp5.3 interface remote-as external\n !\n address-family ipv4 unicast\n aggregate-address
+ 172.16.1.0/24 summary-only\n aggregate-address 172.16.2.0/24 summary-only\n neighbor
+ swp5.3 activate\n exit-address-family\n !\n address-family l2vpn evpn\n advertise
+ ipv4 unicast\n exit-address-family\nrouter bgp 65001 vrf internet-vrf\n bgp router-id
+ 10.0.0.102\n no bgp default ipv4-unicast\n neighbor EDGE peer-group\n neighbor
+ EDGE remote-as external\n neighbor EDGE bfd\n neighbor swp5.4 interface peer-group
+ EDGE\n neighbor swp6 interface peer-group EDGE\n !\n address-family ipv4 unicast\n neighbor
+ EDGE activate\n exit-address-family", "timestamp": 1622008051294}, {"namespace":
+ "ospf-ibgp", "hostname": "leaf02", "config": "router bgp 65000\n bgp router-id
+ 10.0.0.12\n no bgp default ipv4-unicast\n bgp bestpath as-path multipath-relax\n
+ neighbor RR peer-group\n neighbor RR remote-as internal\n neighbor RR bfd\n neighbor
+ RR advertisement-interval 0\n neighbor RR timers 3 10\n neighbor RR timers connect
+ 5\n neighbor swp1 interface peer-group RR\n neighbor swp2 interface peer-group
+ RR\n !\n address-family ipv4 unicast\n maximum-paths ibgp 16\n exit-address-family\n
+ !\n address-family l2vpn evpn\n neighbor RR activate\n advertise-all-vni\n exit-address-family",
+ "timestamp": 1622008051294}, {"namespace": "ospf-ibgp", "hostname": "leaf03",
+ "config": "router bgp 65000\n bgp router-id 10.0.0.13\n no bgp default ipv4-unicast\n
+ bgp bestpath as-path multipath-relax\n neighbor RR peer-group\n neighbor RR remote-as
+ internal\n neighbor RR bfd\n neighbor RR advertisement-interval 0\n neighbor RR
+ timers 3 10\n neighbor RR timers connect 5\n neighbor swp1 interface peer-group
+ RR\n neighbor swp2 interface peer-group RR\n !\n address-family ipv4 unicast\n maximum-paths
+ ibgp 16\n exit-address-family\n !\n address-family l2vpn evpn\n neighbor RR activate\n advertise-all-vni\n
+ exit-address-family", "timestamp": 1622008051479}, {"namespace": "ospf-ibgp",
+ "hostname": "leaf04", "config": "router bgp 65000\n bgp router-id 10.0.0.14\n
+ no bgp default ipv4-unicast\n bgp bestpath as-path multipath-relax\n neighbor
+ RR peer-group\n neighbor RR remote-as internal\n neighbor RR bfd\n neighbor RR
+ advertisement-interval 0\n neighbor RR timers 3 10\n neighbor RR timers connect
+ 5\n neighbor swp1 interface peer-group RR\n neighbor swp2 interface peer-group
+ RR\n !\n address-family ipv4 unicast\n maximum-paths ibgp 16\n exit-address-family\n
+ !\n address-family l2vpn evpn\n neighbor RR activate\n advertise-all-vni\n exit-address-family",
+ "timestamp": 1622008051479}, {"namespace": "ospf-ibgp", "hostname": "spine01",
+ "config": "router bgp 65000\n bgp router-id 10.0.0.22\n no bgp default ipv4-unicast\n
+ bgp bestpath as-path multipath-relax\n neighbor RR peer-group\n neighbor RR remote-as
+ internal\n neighbor RR bfd\n neighbor RR advertisement-interval 0\n neighbor RR
+ timers 3 10\n neighbor RR timers connect 5\n neighbor swp1 interface peer-group
+ RR\n neighbor swp2 interface peer-group RR\n neighbor swp3 interface peer-group
+ RR\n neighbor swp4 interface peer-group RR\n neighbor swp5 interface peer-group
+ RR\n neighbor swp6 interface peer-group RR\n !\n address-family ipv4 unicast\n neighbor
+ RR activate\n neighbor RR route-reflector-client\n maximum-paths ibgp 16\n exit-address-family\n
+ !\n address-family l2vpn evpn\n neighbor RR activate\n neighbor RR route-reflector-client\n
+ exit-address-family", "timestamp": 1622008051479}]'
diff --git a/tests/integration/sqcmds/eos-samples/devconfig.yml b/tests/integration/sqcmds/eos-samples/devconfig.yml
index b5d5181114..2ea69fb396 100644
--- a/tests/integration/sqcmds/eos-samples/devconfig.yml
+++ b/tests/integration/sqcmds/eos-samples/devconfig.yml
@@ -3,8 +3,8 @@ tests:
- command: devconfig show --format=json --namespace=eos
data-directory: tests/data/parquet/
marks: devconfig show eos
- output: '[{"namespace": "eos", "config": "! Command: show running-config\n! device:
- leaf02 (vEOS, EOS-4.23.5M)\n!\n! boot system flash:/vEOS-lab.swi\n!\ntransceiver
+ output: '[{"namespace": "eos", "hostname": "leaf02", "config": "! Command: show
+ running-config\n! device: leaf02 (vEOS, EOS-4.23.5M)\n!\n! boot system flash:/vEOS-lab.swi\n!\ntransceiver
qsfp default-mode 4x10G\n!\nservice routing protocols model multi-agent\n!\nhostname
leaf02\n!\nspanning-tree mode mstp\nno spanning-tree vlan-id 4094\n!\naaa authorization
exec default local\n!\nno aaa root\n!\n!\nvlan 10,30\n!\nvlan 4094\n trunk group
@@ -46,10 +46,10 @@ tests:
evpn 64520:999\n maximum-paths 4\n redistribute connected route-map
ADV_SVIS\n!\nrouter ospf 1\n router-id 10.0.0.12\n passive-interface Loopback0\n passive-interface
Loopback1\n max-lsa 12000\n log-adjacency-changes detail\n!\nmanagement api
- http-commands\n no shutdown\n!\nend", "hostname": "leaf02", "timestamp": 1623025174534},
- {"namespace": "eos", "config": "! Command: show running-config\n! device: exit02
- (vEOS, EOS-4.23.5M)\n!\n! boot system flash:/vEOS-lab.swi\n!\ntransceiver qsfp
- default-mode 4x10G\n!\nservice routing protocols model multi-agent\n!\nhostname
+ http-commands\n no shutdown\n!\nend", "timestamp": 1623025174534}, {"namespace":
+ "eos", "hostname": "exit02", "config": "! Command: show running-config\n! device:
+ exit02 (vEOS, EOS-4.23.5M)\n!\n! boot system flash:/vEOS-lab.swi\n!\ntransceiver
+ qsfp default-mode 4x10G\n!\nservice routing protocols model multi-agent\n!\nhostname
exit02\n!\nspanning-tree mode mstp\n!\naaa authorization exec default local\n!\nno
aaa root\n!\n!\nvrf instance evpn-vrf\n!\nvrf instance internet-vrf\n!\ninterface
Ethernet1\n no switchport\n ip address unnumbered Loopback0\n ip ospf network
@@ -89,8 +89,8 @@ tests:
bfd\n neighbor 169.254.253.10 peer group FW\n neighbor 169.254.253.10
remote-as 65533\n neighbor 169.254.253.10 local-as 65522 no-prepend replace-as\n!\nrouter
ospf 1\n router-id 10.0.0.32\n passive-interface Loopback0\n max-lsa 12000\n log-adjacency-changes
- detail\n!\nmanagement api http-commands\n no shutdown\n!\nend", "hostname":
- "exit02", "timestamp": 1623025174536}, {"namespace": "eos", "config": "! Command:
+ detail\n!\nmanagement api http-commands\n no shutdown\n!\nend", "timestamp":
+ 1623025174536}, {"namespace": "eos", "hostname": "leaf03", "config": "! Command:
show running-config\n! device: leaf03 (vEOS, EOS-4.23.5M)\n!\n! boot system flash:/vEOS-lab.swi\n!\ntransceiver
qsfp default-mode 4x10G\n!\nservice routing protocols model multi-agent\n!\nhostname
leaf03\n!\nspanning-tree mode mstp\nno spanning-tree vlan-id 4094\n!\naaa authorization
@@ -133,10 +133,10 @@ tests:
evpn 64520:999\n maximum-paths 4\n redistribute connected route-map
ADV_SVIS\n!\nrouter ospf 1\n router-id 10.0.0.13\n passive-interface Loopback0\n passive-interface
Loopback1\n max-lsa 12000\n log-adjacency-changes detail\n!\nmanagement api
- http-commands\n no shutdown\n!\nend", "hostname": "leaf03", "timestamp": 1623025174538},
- {"namespace": "eos", "config": "! Command: show running-config\n! device: leaf01
- (vEOS, EOS-4.23.5M)\n!\n! boot system flash:/vEOS-lab.swi\n!\ntransceiver qsfp
- default-mode 4x10G\n!\nservice routing protocols model multi-agent\n!\nhostname
+ http-commands\n no shutdown\n!\nend", "timestamp": 1623025174538}, {"namespace":
+ "eos", "hostname": "leaf01", "config": "! Command: show running-config\n! device:
+ leaf01 (vEOS, EOS-4.23.5M)\n!\n! boot system flash:/vEOS-lab.swi\n!\ntransceiver
+ qsfp default-mode 4x10G\n!\nservice routing protocols model multi-agent\n!\nhostname
leaf01\n!\nspanning-tree mode mstp\nno spanning-tree vlan-id 4094\n!\naaa authorization
exec default local\n!\nno aaa root\n!\n!\nvlan 10,30\n!\nvlan 4094\n trunk group
peertrunk\n!\nvrf instance evpn-vrf\n!\ninterface Port-Channel1\n switchport
@@ -177,10 +177,10 @@ tests:
evpn 64520:999\n maximum-paths 4\n redistribute connected route-map
ADV_SVIS\n!\nrouter ospf 1\n router-id 10.0.0.11\n passive-interface Loopback0\n passive-interface
Loopback1\n max-lsa 12000\n log-adjacency-changes detail\n!\nmanagement api
- http-commands\n no shutdown\n!\nend", "hostname": "leaf01", "timestamp": 1623025174541},
- {"namespace": "eos", "config": "! Command: show running-config\n! device: leaf04
- (vEOS, EOS-4.23.5M)\n!\n! boot system flash:/vEOS-lab.swi\n!\ntransceiver qsfp
- default-mode 4x10G\n!\nservice routing protocols model multi-agent\n!\nhostname
+ http-commands\n no shutdown\n!\nend", "timestamp": 1623025174541}, {"namespace":
+ "eos", "hostname": "leaf04", "config": "! Command: show running-config\n! device:
+ leaf04 (vEOS, EOS-4.23.5M)\n!\n! boot system flash:/vEOS-lab.swi\n!\ntransceiver
+ qsfp default-mode 4x10G\n!\nservice routing protocols model multi-agent\n!\nhostname
leaf04\n!\nspanning-tree mode mstp\nno spanning-tree vlan-id 4094\n!\naaa authorization
exec default local\n!\nno aaa root\n!\n!\nvlan 20,30\n!\nvlan 4094\n trunk group
peertrunk\n!\nvrf instance evpn-vrf\n!\ninterface Port-Channel1\n switchport
@@ -221,10 +221,10 @@ tests:
evpn 64520:999\n maximum-paths 4\n redistribute connected route-map
ADV_SVIS\n!\nrouter ospf 1\n router-id 10.0.0.14\n passive-interface Loopback0\n passive-interface
Loopback1\n max-lsa 12000\n log-adjacency-changes detail\n!\nmanagement api
- http-commands\n no shutdown\n!\nend", "hostname": "leaf04", "timestamp": 1623025174543},
- {"namespace": "eos", "config": "! Command: show running-config\n! device: exit01
- (vEOS, EOS-4.23.5M)\n!\n! boot system flash:/vEOS-lab.swi\n!\ntransceiver qsfp
- default-mode 4x10G\n!\nservice routing protocols model multi-agent\n!\nhostname
+ http-commands\n no shutdown\n!\nend", "timestamp": 1623025174543}, {"namespace":
+ "eos", "hostname": "exit01", "config": "! Command: show running-config\n! device:
+ exit01 (vEOS, EOS-4.23.5M)\n!\n! boot system flash:/vEOS-lab.swi\n!\ntransceiver
+ qsfp default-mode 4x10G\n!\nservice routing protocols model multi-agent\n!\nhostname
exit01\n!\nspanning-tree mode mstp\n!\naaa authorization exec default local\n!\nno
aaa root\n!\n!\nvrf instance evpn-vrf\n!\nvrf instance internet-vrf\n!\ninterface
Ethernet1\n no switchport\n ip address unnumbered Loopback0\n ip ospf neighbor
@@ -263,8 +263,8 @@ tests:
169.254.254.10 peer group FW\n neighbor 169.254.254.10 remote-as 65533\n neighbor
169.254.254.10 local-as 65522 no-prepend replace-as\n!\nrouter ospf 1\n router-id
10.0.0.31\n passive-interface Loopback0\n max-lsa 12000\n log-adjacency-changes
- detail\n!\nmanagement api http-commands\n no shutdown\n!\nend", "hostname":
- "exit01", "timestamp": 1623025174545}, {"namespace": "eos", "config": "! Command:
+ detail\n!\nmanagement api http-commands\n no shutdown\n!\nend", "timestamp":
+ 1623025174545}, {"namespace": "eos", "hostname": "spine01", "config": "! Command:
show running-config\n! device: spine01 (vEOS, EOS-4.23.5M)\n!\n! boot system flash:/vEOS-lab.swi\n!\ntransceiver
qsfp default-mode 4x10G\n!\nservice routing protocols model multi-agent\n!\nhostname
spine01\n!\nspanning-tree mode mstp\n!\naaa authorization exec default local\n!\nno
@@ -295,8 +295,8 @@ tests:
10.0.0.12 activate\n neighbor 10.0.0.13 activate\n neighbor 10.0.0.14
activate\n neighbor 10.0.0.31 activate\n neighbor 10.0.0.32 activate\n!\nrouter
ospf 1\n router-id 10.0.0.21\n passive-interface Loopback0\n max-lsa 12000\n log-adjacency-changes
- detail\n!\nmanagement api http-commands\n no shutdown\n!\nend", "hostname":
- "spine01", "timestamp": 1623025174548}, {"namespace": "eos", "config": "! Command:
+ detail\n!\nmanagement api http-commands\n no shutdown\n!\nend", "timestamp":
+ 1623025174548}, {"namespace": "eos", "hostname": "spine02", "config": "! Command:
show running-config\n! device: spine02 (vEOS, EOS-4.23.5M)\n!\n! boot system flash:/vEOS-lab.swi\n!\ntransceiver
qsfp default-mode 4x10G\n!\nservice routing protocols model multi-agent\n!\nhostname
spine02\n!\nspanning-tree mode mstp\n!\naaa authorization exec default local\n!\nno
@@ -327,8 +327,8 @@ tests:
10.0.0.12 activate\n neighbor 10.0.0.13 activate\n neighbor 10.0.0.14
activate\n neighbor 10.0.0.31 activate\n neighbor 10.0.0.32 activate\n!\nrouter
ospf 1\n router-id 10.0.0.22\n passive-interface Loopback0\n max-lsa 12000\n log-adjacency-changes
- detail\n!\nmanagement api http-commands\n no shutdown\n!\nend", "hostname":
- "spine02", "timestamp": 1623025174550}, {"namespace": "eos", "config": "## Last
+ detail\n!\nmanagement api http-commands\n no shutdown\n!\nend", "timestamp":
+ 1623025174550}, {"namespace": "eos", "hostname": "dcedge01", "config": "## Last
commit: 2021-06-05 22:12:07 UTC by vagrant\nversion 20191212.201431_builder.r1074901;\nsystem
{\n host-name dcedge01;\n root-authentication {\n }\n login {\n user
vagrant {\n uid 2000;\n class super-user;\n authentication
@@ -1170,12 +1170,12 @@ tests:
65522;\n }\n neighbor 169.254.127.3 {\n peer-as
65522;\n }\n }\n }\n lldp {\n interface all;\n }\n igmp-snooping
{\n vlan default;\n }\n}\nvlans {\n default {\n vlan-id 1;\n }\n}",
- "hostname": "dcedge01", "timestamp": 1623025176891}]'
+ "timestamp": 1623025176891}]'
- command: devconfig show --hostname=leaf01 --format=json --namespace=eos
data-directory: tests/data/parquet/
marks: devconfig show eos
- output: '[{"namespace": "eos", "config": "! Command: show running-config\n! device:
- leaf01 (vEOS, EOS-4.23.5M)\n!\n! boot system flash:/vEOS-lab.swi\n!\ntransceiver
+ output: '[{"namespace": "eos", "hostname": "leaf01", "config": "! Command: show
+ running-config\n! device: leaf01 (vEOS, EOS-4.23.5M)\n!\n! boot system flash:/vEOS-lab.swi\n!\ntransceiver
qsfp default-mode 4x10G\n!\nservice routing protocols model multi-agent\n!\nhostname
leaf01\n!\nspanning-tree mode mstp\nno spanning-tree vlan-id 4094\n!\naaa authorization
exec default local\n!\nno aaa root\n!\n!\nvlan 10,30\n!\nvlan 4094\n trunk group
@@ -1217,12 +1217,12 @@ tests:
evpn 64520:999\n maximum-paths 4\n redistribute connected route-map
ADV_SVIS\n!\nrouter ospf 1\n router-id 10.0.0.11\n passive-interface Loopback0\n passive-interface
Loopback1\n max-lsa 12000\n log-adjacency-changes detail\n!\nmanagement api
- http-commands\n no shutdown\n!\nend", "hostname": "leaf01", "timestamp": 1623025174541}]'
+ http-commands\n no shutdown\n!\nend", "timestamp": 1623025174541}]'
- command: devconfig show --hostname='leaf01 spine01' --format=json --namespace=eos
data-directory: tests/data/parquet/
marks: devconfig show eos
- output: '[{"namespace": "eos", "config": "! Command: show running-config\n! device:
- leaf01 (vEOS, EOS-4.23.5M)\n!\n! boot system flash:/vEOS-lab.swi\n!\ntransceiver
+ output: '[{"namespace": "eos", "hostname": "leaf01", "config": "! Command: show
+ running-config\n! device: leaf01 (vEOS, EOS-4.23.5M)\n!\n! boot system flash:/vEOS-lab.swi\n!\ntransceiver
qsfp default-mode 4x10G\n!\nservice routing protocols model multi-agent\n!\nhostname
leaf01\n!\nspanning-tree mode mstp\nno spanning-tree vlan-id 4094\n!\naaa authorization
exec default local\n!\nno aaa root\n!\n!\nvlan 10,30\n!\nvlan 4094\n trunk group
@@ -1264,10 +1264,10 @@ tests:
evpn 64520:999\n maximum-paths 4\n redistribute connected route-map
ADV_SVIS\n!\nrouter ospf 1\n router-id 10.0.0.11\n passive-interface Loopback0\n passive-interface
Loopback1\n max-lsa 12000\n log-adjacency-changes detail\n!\nmanagement api
- http-commands\n no shutdown\n!\nend", "hostname": "leaf01", "timestamp": 1623025174541},
- {"namespace": "eos", "config": "! Command: show running-config\n! device: spine01
- (vEOS, EOS-4.23.5M)\n!\n! boot system flash:/vEOS-lab.swi\n!\ntransceiver qsfp
- default-mode 4x10G\n!\nservice routing protocols model multi-agent\n!\nhostname
+ http-commands\n no shutdown\n!\nend", "timestamp": 1623025174541}, {"namespace":
+ "eos", "hostname": "spine01", "config": "! Command: show running-config\n! device:
+ spine01 (vEOS, EOS-4.23.5M)\n!\n! boot system flash:/vEOS-lab.swi\n!\ntransceiver
+ qsfp default-mode 4x10G\n!\nservice routing protocols model multi-agent\n!\nhostname
spine01\n!\nspanning-tree mode mstp\n!\naaa authorization exec default local\n!\nno
aaa root\n!\n!\ninterface Ethernet1\n no switchport\n ip address unnumbered
Loopback0\n ip ospf network point-to-point\n ip ospf area 0.0.0.0\n!\ninterface
@@ -1296,13 +1296,14 @@ tests:
10.0.0.12 activate\n neighbor 10.0.0.13 activate\n neighbor 10.0.0.14
activate\n neighbor 10.0.0.31 activate\n neighbor 10.0.0.32 activate\n!\nrouter
ospf 1\n router-id 10.0.0.21\n passive-interface Loopback0\n max-lsa 12000\n log-adjacency-changes
- detail\n!\nmanagement api http-commands\n no shutdown\n!\nend", "hostname":
- "spine01", "timestamp": 1623025174548}]'
-- command: devconfig show --hostname='leaf01 spine01' --query-str='config.str.contains("10.0.0.21")' --format=json --namespace=eos
+ detail\n!\nmanagement api http-commands\n no shutdown\n!\nend", "timestamp":
+ 1623025174548}]'
+- command: devconfig show --hostname='leaf01 spine01' --query-str='config.str.contains("10.0.0.21")'
+ --format=json --namespace=eos
data-directory: tests/data/parquet/
marks: devconfig show eos
- output: '[{"namespace": "eos", "config": "! Command: show running-config\n! device:
- leaf01 (vEOS, EOS-4.23.5M)\n!\n! boot system flash:/vEOS-lab.swi\n!\ntransceiver
+ output: '[{"namespace": "eos", "hostname": "leaf01", "config": "! Command: show
+ running-config\n! device: leaf01 (vEOS, EOS-4.23.5M)\n!\n! boot system flash:/vEOS-lab.swi\n!\ntransceiver
qsfp default-mode 4x10G\n!\nservice routing protocols model multi-agent\n!\nhostname
leaf01\n!\nspanning-tree mode mstp\nno spanning-tree vlan-id 4094\n!\naaa authorization
exec default local\n!\nno aaa root\n!\n!\nvlan 10,30\n!\nvlan 4094\n trunk group
@@ -1344,10 +1345,10 @@ tests:
evpn 64520:999\n maximum-paths 4\n redistribute connected route-map
ADV_SVIS\n!\nrouter ospf 1\n router-id 10.0.0.11\n passive-interface Loopback0\n passive-interface
Loopback1\n max-lsa 12000\n log-adjacency-changes detail\n!\nmanagement api
- http-commands\n no shutdown\n!\nend", "hostname": "leaf01", "timestamp": 1623025174541},
- {"namespace": "eos", "config": "! Command: show running-config\n! device: spine01
- (vEOS, EOS-4.23.5M)\n!\n! boot system flash:/vEOS-lab.swi\n!\ntransceiver qsfp
- default-mode 4x10G\n!\nservice routing protocols model multi-agent\n!\nhostname
+ http-commands\n no shutdown\n!\nend", "timestamp": 1623025174541}, {"namespace":
+ "eos", "hostname": "spine01", "config": "! Command: show running-config\n! device:
+ spine01 (vEOS, EOS-4.23.5M)\n!\n! boot system flash:/vEOS-lab.swi\n!\ntransceiver
+ qsfp default-mode 4x10G\n!\nservice routing protocols model multi-agent\n!\nhostname
spine01\n!\nspanning-tree mode mstp\n!\naaa authorization exec default local\n!\nno
aaa root\n!\n!\ninterface Ethernet1\n no switchport\n ip address unnumbered
Loopback0\n ip ospf network point-to-point\n ip ospf area 0.0.0.0\n!\ninterface
@@ -1376,8 +1377,8 @@ tests:
10.0.0.12 activate\n neighbor 10.0.0.13 activate\n neighbor 10.0.0.14
activate\n neighbor 10.0.0.31 activate\n neighbor 10.0.0.32 activate\n!\nrouter
ospf 1\n router-id 10.0.0.21\n passive-interface Loopback0\n max-lsa 12000\n log-adjacency-changes
- detail\n!\nmanagement api http-commands\n no shutdown\n!\nend", "hostname":
- "spine01", "timestamp": 1623025174548}]'
+ detail\n!\nmanagement api http-commands\n no shutdown\n!\nend", "timestamp":
+ 1623025174548}]'
- command: devconfig summarize --format=json --namespace=eos
data-directory: tests/data/parquet/
marks: devconfig summarize eos
@@ -1391,3 +1392,223 @@ tests:
error:
error: '[{"error": "Unique not supported for Device Config"}]'
marks: devconfig unique eos
+- command: devconfig show --format=json --namespace=eos --section='^interface Ethernet1$'
+ data-directory: tests/data/parquet/
+ marks: devconfig show nxos
+ output: '[{"namespace": "eos", "hostname": "leaf02", "config": "interface Ethernet1\n no
+ switchport\n ip address unnumbered Loopback0\n ip ospf network point-to-point\n ip
+ ospf area 0.0.0.0", "timestamp": 1623025174534}, {"namespace": "eos", "hostname":
+ "exit02", "config": "interface Ethernet1\n no switchport\n ip address unnumbered
+ Loopback0\n ip ospf network point-to-point\n ip ospf area 0.0.0.0", "timestamp":
+ 1623025174536}, {"namespace": "eos", "hostname": "leaf03", "config": "interface
+ Ethernet1\n no switchport\n ip address unnumbered Loopback0\n ip ospf network
+ point-to-point\n ip ospf area 0.0.0.0", "timestamp": 1623025174538}, {"namespace":
+ "eos", "hostname": "leaf01", "config": "interface Ethernet1\n no switchport\n ip
+ address unnumbered Loopback0\n ip ospf network point-to-point\n ip ospf area
+ 0.0.0.0", "timestamp": 1623025174541}, {"namespace": "eos", "hostname": "leaf04",
+ "config": "interface Ethernet1\n no switchport\n ip address unnumbered Loopback0\n ip
+ ospf network point-to-point\n ip ospf area 0.0.0.0", "timestamp": 1623025174543},
+ {"namespace": "eos", "hostname": "exit01", "config": "interface Ethernet1\n no
+ switchport\n ip address unnumbered Loopback0\n ip ospf neighbor bfd\n ip
+ ospf network point-to-point\n ip ospf area 0.0.0.0", "timestamp": 1623025174545},
+ {"namespace": "eos", "hostname": "spine01", "config": "interface Ethernet1\n no
+ switchport\n ip address unnumbered Loopback0\n ip ospf network point-to-point\n ip
+ ospf area 0.0.0.0", "timestamp": 1623025174548}, {"namespace": "eos", "hostname":
+ "spine02", "config": "interface Ethernet1\n no switchport\n ip address unnumbered
+ Loopback0\n ip ospf network point-to-point\n ip ospf area 0.0.0.0", "timestamp":
+ 1623025174550}]'
+- command: devconfig show --format=json --namespace=eos --section='interface Ethernet'
+ data-directory: tests/data/parquet/
+ marks: devconfig show nxos
+ output: '[{"namespace": "eos", "hostname": "leaf02", "config": "interface Ethernet1\n no
+ switchport\n ip address unnumbered Loopback0\n ip ospf network point-to-point\n ip
+ ospf area 0.0.0.0\ninterface Ethernet2\n no switchport\n ip address unnumbered
+ Loopback0\n ip ospf network point-to-point\n ip ospf area 0.0.0.0\ninterface
+ Ethernet3\n channel-group 3 mode active\ninterface Ethernet4\n channel-group
+ 4 mode active\ninterface Ethernet5\n channel-group 1 mode active\ninterface
+ Ethernet6\n channel-group 1 mode active", "timestamp": 1623025174534}, {"namespace":
+ "eos", "hostname": "exit02", "config": "interface Ethernet1\n no switchport\n ip
+ address unnumbered Loopback0\n ip ospf network point-to-point\n ip ospf area
+ 0.0.0.0\ninterface Ethernet2\n no switchport\n ip address unnumbered Loopback0\n ip
+ ospf network point-to-point\n ip ospf area 0.0.0.0\ninterface Ethernet3\n no
+ switchport\ninterface Ethernet3.2\n encapsulation dot1q vlan 2\n ip address
+ 169.254.253.1/30\ninterface Ethernet3.3\n encapsulation dot1q vlan 3\n vrf
+ evpn-vrf\n ip address 169.254.253.5/30\ninterface Ethernet3.4\n encapsulation
+ dot1q vlan 4\n vrf internet-vrf\n ip address 169.254.253.9/30\ninterface Ethernet4\n no
+ switchport\n vrf internet-vrf\n ip address 169.254.127.3/31", "timestamp":
+ 1623025174536}, {"namespace": "eos", "hostname": "leaf03", "config": "interface
+ Ethernet1\n no switchport\n ip address unnumbered Loopback0\n ip ospf network
+ point-to-point\n ip ospf area 0.0.0.0\ninterface Ethernet2\n no switchport\n ip
+ address unnumbered Loopback0\n ip ospf network point-to-point\n ip ospf area
+ 0.0.0.0\ninterface Ethernet3\n channel-group 3 mode active\ninterface Ethernet4\n channel-group
+ 4 mode active\ninterface Ethernet5\n channel-group 1 mode active\ninterface
+ Ethernet6\n channel-group 1 mode active", "timestamp": 1623025174538}, {"namespace":
+ "eos", "hostname": "leaf01", "config": "interface Ethernet1\n no switchport\n ip
+ address unnumbered Loopback0\n ip ospf network point-to-point\n ip ospf area
+ 0.0.0.0\ninterface Ethernet2\n no switchport\n ip address unnumbered Loopback0\n ip
+ ospf network point-to-point\n ip ospf area 0.0.0.0\ninterface Ethernet3\n channel-group
+ 3 mode active\ninterface Ethernet4\n channel-group 4 mode active\ninterface
+ Ethernet5\n channel-group 1 mode active\ninterface Ethernet6\n channel-group
+ 1 mode active", "timestamp": 1623025174541}, {"namespace": "eos", "hostname":
+ "leaf04", "config": "interface Ethernet1\n no switchport\n ip address unnumbered
+ Loopback0\n ip ospf network point-to-point\n ip ospf area 0.0.0.0\ninterface
+ Ethernet2\n no switchport\n ip address unnumbered Loopback0\n ip ospf network
+ point-to-point\n ip ospf area 0.0.0.0\ninterface Ethernet3\n channel-group
+ 3 mode active\ninterface Ethernet4\n channel-group 4 mode active\ninterface
+ Ethernet5\n channel-group 1 mode active\ninterface Ethernet6\n channel-group
+ 1 mode active", "timestamp": 1623025174543}, {"namespace": "eos", "hostname":
+ "exit01", "config": "interface Ethernet1\n no switchport\n ip address unnumbered
+ Loopback0\n ip ospf neighbor bfd\n ip ospf network point-to-point\n ip ospf
+ area 0.0.0.0\ninterface Ethernet2\n no switchport\n ip address unnumbered
+ Loopback0\n ip ospf network point-to-point\n ip ospf area 0.0.0.0\ninterface
+ Ethernet3\n no switchport\ninterface Ethernet3.2\n encapsulation dot1q vlan
+ 2\n ip address 169.254.254.1/30\ninterface Ethernet3.3\n encapsulation dot1q
+ vlan 3\n vrf evpn-vrf\n ip address 169.254.254.5/30\ninterface Ethernet3.4\n encapsulation
+ dot1q vlan 4\n vrf internet-vrf\n ip address 169.254.254.9/30\ninterface Ethernet4\n no
+ switchport\n vrf internet-vrf\n ip address 169.254.127.1/31", "timestamp":
+ 1623025174545}, {"namespace": "eos", "hostname": "spine01", "config": "interface
+ Ethernet1\n no switchport\n ip address unnumbered Loopback0\n ip ospf network
+ point-to-point\n ip ospf area 0.0.0.0\ninterface Ethernet2\n no switchport\n ip
+ address unnumbered Loopback0\n ip ospf network point-to-point\n ip ospf area
+ 0.0.0.0\ninterface Ethernet3\n no switchport\n ip address unnumbered Loopback0\n ip
+ ospf network point-to-point\n ip ospf area 0.0.0.0\ninterface Ethernet4\n no
+ switchport\n ip address unnumbered Loopback0\n ip ospf network point-to-point\n ip
+ ospf area 0.0.0.0\ninterface Ethernet5\n no switchport\n ip address unnumbered
+ Loopback0\n ip ospf neighbor bfd\n ip ospf network point-to-point\n ip ospf
+ area 0.0.0.0\ninterface Ethernet6\n no switchport\n ip address unnumbered
+ Loopback0\n ip ospf neighbor bfd\n ip ospf network point-to-point\n ip ospf
+ area 0.0.0.0", "timestamp": 1623025174548}, {"namespace": "eos", "hostname": "spine02",
+ "config": "interface Ethernet1\n no switchport\n ip address unnumbered Loopback0\n ip
+ ospf network point-to-point\n ip ospf area 0.0.0.0\ninterface Ethernet2\n no
+ switchport\n ip address unnumbered Loopback0\n ip ospf network point-to-point\n ip
+ ospf area 0.0.0.0\ninterface Ethernet3\n no switchport\n ip address unnumbered
+ Loopback0\n ip ospf network point-to-point\n ip ospf area 0.0.0.0\ninterface
+ Ethernet4\n no switchport\n ip address unnumbered Loopback0\n ip ospf network
+ point-to-point\n ip ospf area 0.0.0.0\ninterface Ethernet5\n no switchport\n ip
+ address unnumbered Loopback0\n ip ospf neighbor bfd\n ip ospf network point-to-point\n ip
+ ospf area 0.0.0.0\ninterface Ethernet6\n no switchport\n ip address unnumbered
+ Loopback0\n ip ospf neighbor bfd\n ip ospf network point-to-point\n ip ospf
+ area 0.0.0.0", "timestamp": 1623025174550}]'
+- command: devconfig show --format=json --namespace=eos --section='ip ospf network
+ point-to-point'
+ data-directory: tests/data/parquet/
+ marks: devconfig show nxos
+ output: '[{"namespace": "eos", "hostname": "leaf02", "config": " ip ospf network
+ point-to-point\n ip ospf network point-to-point", "timestamp": 1623025174534},
+ {"namespace": "eos", "hostname": "exit02", "config": " ip ospf network point-to-point\n ip
+ ospf network point-to-point", "timestamp": 1623025174536}, {"namespace": "eos",
+ "hostname": "leaf03", "config": " ip ospf network point-to-point\n ip ospf
+ network point-to-point", "timestamp": 1623025174538}, {"namespace": "eos", "hostname":
+ "leaf01", "config": " ip ospf network point-to-point\n ip ospf network point-to-point",
+ "timestamp": 1623025174541}, {"namespace": "eos", "hostname": "leaf04", "config":
+ " ip ospf network point-to-point\n ip ospf network point-to-point", "timestamp":
+ 1623025174543}, {"namespace": "eos", "hostname": "exit01", "config": " ip ospf
+ network point-to-point\n ip ospf network point-to-point", "timestamp": 1623025174545},
+ {"namespace": "eos", "hostname": "spine01", "config": " ip ospf network point-to-point\n ip
+ ospf network point-to-point\n ip ospf network point-to-point\n ip ospf network
+ point-to-point\n ip ospf network point-to-point\n ip ospf network point-to-point",
+ "timestamp": 1623025174548}, {"namespace": "eos", "hostname": "spine02", "config":
+ " ip ospf network point-to-point\n ip ospf network point-to-point\n ip ospf
+ network point-to-point\n ip ospf network point-to-point\n ip ospf network
+ point-to-point\n ip ospf network point-to-point", "timestamp": 1623025174550}]'
+- command: devconfig show --format=json --namespace=eos --section='router bgp'
+ data-directory: tests/data/parquet/
+ marks: devconfig show eos
+ output: '[{"namespace": "eos", "hostname": "leaf02", "config": "router bgp 64520\n router-id
+ 10.0.0.12\n no bgp default ipv4-unicast\n neighbor RR peer group\n neighbor
+ RR remote-as 64520\n neighbor RR send-community extended\n neighbor RR maximum-routes
+ 12000\n neighbor 10.0.0.21 peer group RR\n neighbor 10.0.0.22 peer group RR\n !\n vlan
+ 10\n rd 10.0.0.12:10\n route-target export auto\n route-target
+ import auto 64520\n redistribute learned\n vlan 30\n rd 10.0.0.12:30\n route-target
+ export auto\n route-target import auto 64520\n redistribute learned\n address-family
+ evpn\n neighbor 10.0.0.21 activate\n neighbor 10.0.0.22 activate\n vrf
+ evpn-vrf\n rd 10.0.0.12:999\n route-target import evpn 64520:999\n route-target
+ export evpn 64520:999\n maximum-paths 4\n redistribute connected route-map
+ ADV_SVIS", "timestamp": 1623025174534}, {"namespace": "eos", "hostname": "exit02",
+ "config": "router bgp 64520\n router-id 10.0.0.32\n no bgp default ipv4-unicast\n neighbor
+ FW peer group\n neighbor FW maximum-routes 12000\n neighbor RR peer group\n neighbor
+ RR remote-as 64520\n neighbor RR send-community extended\n neighbor RR maximum-routes
+ 12000\n neighbor 10.0.0.21 peer group RR\n neighbor 10.0.0.22 peer group RR\n neighbor
+ 169.254.253.2 peer group FW\n neighbor 169.254.253.2 remote-as 65533\n neighbor
+ 169.254.253.2 local-as 65520 no-prepend replace-as\n !\n address-family evpn\n neighbor
+ 10.0.0.21 activate\n neighbor 10.0.0.22 activate\n address-family ipv4\n neighbor
+ FW activate\n vrf evpn-vrf\n rd 10.0.0.32:999\n route-target import
+ evpn 64520:999\n route-target export evpn 64520:999\n neighbor 169.254.253.6
+ peer group FW\n neighbor 169.254.253.6 remote-as 65533\n neighbor 169.254.253.6
+ local-as 65521 no-prepend replace-as\n aggregate-address 172.16.1.0/24 summary-only
+ attribute-map LOWER_AGGRT_PREF\n aggregate-address 172.16.2.0/24 summary-only
+ attribute-map LOWER_AGGRT_PREF\n aggregate-address 172.16.3.0/24 summary-only
+ attribute-map LOWER_AGGRT_PREF\n vrf internet-vrf\n neighbor 169.254.127.2
+ peer group FW\n neighbor 169.254.127.2 remote-as 65534\n neighbor 169.254.127.2
+ local-as 65522 no-prepend replace-as\n neighbor 169.254.127.2 bfd\n neighbor
+ 169.254.253.10 peer group FW\n neighbor 169.254.253.10 remote-as 65533\n neighbor
+ 169.254.253.10 local-as 65522 no-prepend replace-as", "timestamp": 1623025174536},
+ {"namespace": "eos", "hostname": "leaf03", "config": "router bgp 64520\n router-id
+ 10.0.0.13\n no bgp default ipv4-unicast\n neighbor RR peer group\n neighbor
+ RR remote-as 64520\n neighbor RR send-community extended\n neighbor RR maximum-routes
+ 12000\n neighbor 10.0.0.21 peer group RR\n neighbor 10.0.0.22 peer group RR\n !\n vlan
+ 20\n rd 10.0.0.13:20\n route-target export auto\n route-target
+ import auto 64520\n redistribute learned\n vlan 30\n rd 10.0.0.13:30\n route-target
+ export auto\n route-target import auto 64520\n redistribute learned\n address-family
+ evpn\n neighbor 10.0.0.21 activate\n neighbor 10.0.0.22 activate\n vrf
+ evpn-vrf\n rd 10.0.0.13:999\n route-target import evpn 64520:999\n route-target
+ export evpn 64520:999\n maximum-paths 4\n redistribute connected route-map
+ ADV_SVIS", "timestamp": 1623025174538}, {"namespace": "eos", "hostname": "leaf01",
+ "config": "router bgp 64520\n router-id 10.0.0.11\n no bgp default ipv4-unicast\n neighbor
+ RR peer group\n neighbor RR remote-as 64520\n neighbor RR send-community extended\n neighbor
+ RR maximum-routes 12000\n neighbor 10.0.0.21 peer group RR\n neighbor 10.0.0.22
+ peer group RR\n !\n vlan 10\n rd 10.0.0.11:10\n route-target export
+ auto\n route-target import auto 64520\n redistribute learned\n vlan
+ 30\n rd 10.0.0.11:30\n route-target export auto\n route-target
+ import auto 64520\n redistribute learned\n address-family evpn\n neighbor
+ 10.0.0.21 activate\n neighbor 10.0.0.22 activate\n vrf evpn-vrf\n rd
+ 10.0.0.11:999\n route-target import evpn 64520:999\n route-target export
+ evpn 64520:999\n maximum-paths 4\n redistribute connected route-map
+ ADV_SVIS", "timestamp": 1623025174541}, {"namespace": "eos", "hostname": "leaf04",
+ "config": "router bgp 64520\n router-id 10.0.0.14\n no bgp default ipv4-unicast\n neighbor
+ RR peer group\n neighbor RR remote-as 64520\n neighbor RR send-community extended\n neighbor
+ RR maximum-routes 12000\n neighbor 10.0.0.21 peer group RR\n neighbor 10.0.0.22
+ peer group RR\n !\n vlan 20\n rd 10.0.0.14:20\n route-target export
+ auto\n route-target import auto 64520\n redistribute learned\n vlan
+ 30\n rd 10.0.0.14:30\n route-target export auto\n route-target
+ import auto 64520\n redistribute learned\n address-family evpn\n neighbor
+ 10.0.0.21 activate\n neighbor 10.0.0.22 activate\n vrf evpn-vrf\n rd
+ 10.0.0.14:999\n route-target import evpn 64520:999\n route-target export
+ evpn 64520:999\n maximum-paths 4\n redistribute connected route-map
+ ADV_SVIS", "timestamp": 1623025174543}, {"namespace": "eos", "hostname": "exit01",
+ "config": "router bgp 64520\n router-id 10.0.0.31\n no bgp default ipv4-unicast\n neighbor
+ FW peer group\n neighbor FW maximum-routes 12000\n neighbor RR peer group\n neighbor
+ RR remote-as 64520\n neighbor RR send-community extended\n neighbor RR maximum-routes
+ 12000\n neighbor 10.0.0.21 peer group RR\n neighbor 10.0.0.22 peer group RR\n neighbor
+ 169.254.254.2 peer group FW\n neighbor 169.254.254.2 remote-as 65533\n neighbor
+ 169.254.254.2 local-as 65520 no-prepend replace-as\n !\n address-family evpn\n neighbor
+ 10.0.0.21 activate\n neighbor 10.0.0.22 activate\n address-family ipv4\n neighbor
+ FW activate\n vrf evpn-vrf\n rd 10.0.0.31:999\n route-target import
+ evpn 64520:999\n route-target export evpn 64520:999\n neighbor 169.254.254.6
+ peer group FW\n neighbor 169.254.254.6 remote-as 65533\n neighbor 169.254.254.6
+ local-as 65521 no-prepend replace-as\n aggregate-address 172.16.1.0/24 summary-only\n aggregate-address
+ 172.16.2.0/24 summary-only\n aggregate-address 172.16.3.0/24 summary-only\n vrf
+ internet-vrf\n neighbor 169.254.127.0 peer group FW\n neighbor 169.254.127.0
+ remote-as 65534\n neighbor 169.254.127.0 local-as 65522 no-prepend replace-as\n neighbor
+ 169.254.127.0 bfd\n neighbor 169.254.254.10 peer group FW\n neighbor
+ 169.254.254.10 remote-as 65533\n neighbor 169.254.254.10 local-as 65522 no-prepend
+ replace-as", "timestamp": 1623025174545}, {"namespace": "eos", "hostname": "spine01",
+ "config": "router bgp 64520\n router-id 10.0.0.21\n no bgp default ipv4-unicast\n neighbor
+ RR peer group\n neighbor RR remote-as 64520\n neighbor RR route-reflector-client\n neighbor
+ RR send-community extended\n neighbor RR maximum-routes 12000\n neighbor 10.0.0.11
+ peer group RR\n neighbor 10.0.0.12 peer group RR\n neighbor 10.0.0.13 peer
+ group RR\n neighbor 10.0.0.14 peer group RR\n neighbor 10.0.0.31 peer group
+ RR\n neighbor 10.0.0.32 peer group RR\n !\n address-family evpn\n neighbor
+ 10.0.0.11 activate\n neighbor 10.0.0.12 activate\n neighbor 10.0.0.13
+ activate\n neighbor 10.0.0.14 activate\n neighbor 10.0.0.31 activate\n neighbor
+ 10.0.0.32 activate", "timestamp": 1623025174548}, {"namespace": "eos", "hostname":
+ "spine02", "config": "router bgp 64520\n router-id 10.0.0.22\n no bgp default
+ ipv4-unicast\n neighbor RR peer group\n neighbor RR remote-as 64520\n neighbor
+ RR route-reflector-client\n neighbor RR send-community extended\n neighbor
+ RR maximum-routes 12000\n neighbor 10.0.0.11 peer group RR\n neighbor 10.0.0.12
+ peer group RR\n neighbor 10.0.0.13 peer group RR\n neighbor 10.0.0.14 peer
+ group RR\n neighbor 10.0.0.31 peer group RR\n neighbor 10.0.0.32 peer group
+ RR\n !\n address-family evpn\n neighbor 10.0.0.11 activate\n neighbor
+ 10.0.0.12 activate\n neighbor 10.0.0.13 activate\n neighbor 10.0.0.14
+ activate\n neighbor 10.0.0.31 activate\n neighbor 10.0.0.32 activate",
+ "timestamp": 1623025174550}]'
diff --git a/tests/integration/sqcmds/nxos-samples/devconfig.yml b/tests/integration/sqcmds/nxos-samples/devconfig.yml
index 79728b63cb..756366c8ae 100644
--- a/tests/integration/sqcmds/nxos-samples/devconfig.yml
+++ b/tests/integration/sqcmds/nxos-samples/devconfig.yml
@@ -3,10 +3,10 @@ tests:
- command: devconfig show --format=json --namespace=nxos
data-directory: tests/data/parquet/
marks: devconfig show nxos
- output: '[{"namespace": "nxos", "config": "## Last commit: 2021-05-22 19:12:54 UTC
- by vagrant\nversion 20191212.201431_builder.r1074901;\nsystem {\n host-name
- dcedge01;\n root-authentication {\n }\n login {\n user vagrant
- {\n uid 2000;\n class super-user;\n authentication
+ output: '[{"namespace": "nxos", "hostname": "dcedge01", "config": "## Last commit:
+ 2021-05-22 19:12:54 UTC by vagrant\nversion 20191212.201431_builder.r1074901;\nsystem
+ {\n host-name dcedge01;\n root-authentication {\n }\n login {\n user
+ vagrant {\n uid 2000;\n class super-user;\n authentication
{\n }\n }\n }\n services {\n ssh {\n root-login
allow;\n }\n netconf {\n ssh;\n }\n rest
{\n http {\n port 8080;\n }\n enable-explorer;\n }\n }\n syslog
@@ -842,8 +842,8 @@ tests:
169.254.127.1 {\n peer-as 65522;\n }\n neighbor
169.254.127.3 {\n peer-as 65522;\n }\n }\n }\n lldp
{\n interface all;\n }\n igmp-snooping {\n vlan default;\n }\n}\nvlans
- {\n default {\n vlan-id 1;\n }\n}", "hostname": "dcedge01", "timestamp":
- 1622031362170}, {"namespace": "nxos", "config": "\n!Command: show running-config
+ {\n default {\n vlan-id 1;\n }\n}", "timestamp": 1622031362170},
+ {"namespace": "nxos", "hostname": "leaf03", "config": "\n!Command: show running-config
exclude security\n!Running configuration last done at: Wed May 26 11:59:17 2021\n\nversion
9.3(4) Bios:version \nhostname leaf03\nvdc leaf03 id 1\n limit-resource vlan
minimum 16 maximum 4094\n limit-resource vrf minimum 2 maximum 4096\n limit-resource
@@ -917,8 +917,8 @@ tests:
extended\n neighbor 10.0.0.21\n inherit peer VXLAN_SPINE\n neighbor 10.0.0.22\n inherit
peer VXLAN_SPINE\n vrf evpn-vrf\n log-neighbor-changes\n address-family
ipv4 unicast\n redistribute direct route-map ADV_SVIS\n maximum-paths
- ibgp 4\n\nlogging server dns-refresh-interval 0\n\n", "hostname": "leaf03", "timestamp":
- 1622031362698}, {"namespace": "nxos", "config": "\n!Command: show running-config
+ ibgp 4\n\nlogging server dns-refresh-interval 0\n\n", "timestamp": 1622031362698},
+ {"namespace": "nxos", "hostname": "leaf04", "config": "\n!Command: show running-config
exclude security\n!Running configuration last done at: Wed May 26 12:00:19 2021\n\nversion
9.3(4) Bios:version \nhostname leaf04\nvdc leaf04 id 1\n limit-resource vlan
minimum 16 maximum 4094\n limit-resource vrf minimum 2 maximum 4096\n limit-resource
@@ -992,8 +992,8 @@ tests:
extended\n neighbor 10.0.0.21\n inherit peer VXLAN_SPINE\n neighbor 10.0.0.22\n inherit
peer VXLAN_SPINE\n vrf evpn-vrf\n log-neighbor-changes\n address-family
ipv4 unicast\n redistribute direct route-map ADV_SVIS\n maximum-paths
- ibgp 4\n\n\n", "hostname": "leaf04", "timestamp": 1622031362708}, {"namespace":
- "nxos", "config": "\n!Command: show running-config exclude security\n!Running
+ ibgp 4\n\n\n", "timestamp": 1622031362708}, {"namespace": "nxos", "hostname":
+ "leaf01", "config": "\n!Command: show running-config exclude security\n!Running
configuration last done at: Wed May 26 11:59:05 2021\n\nversion 9.3(4) Bios:version \nhostname
leaf01\nvdc leaf01 id 1\n limit-resource vlan minimum 16 maximum 4094\n limit-resource
vrf minimum 2 maximum 4096\n limit-resource port-channel minimum 0 maximum 511\n limit-resource
@@ -1066,8 +1066,8 @@ tests:
extended\n neighbor 10.0.0.21\n inherit peer VXLAN_SPINE\n neighbor 10.0.0.22\n inherit
peer VXLAN_SPINE\n vrf evpn-vrf\n log-neighbor-changes\n address-family
ipv4 unicast\n redistribute direct route-map ADV_SVIS\n maximum-paths
- ibgp 4\n\n\n", "hostname": "leaf01", "timestamp": 1622031362773}, {"namespace":
- "nxos", "config": "\n!Command: show running-config exclude security\n!Running
+ ibgp 4\n\n\n", "timestamp": 1622031362773}, {"namespace": "nxos", "hostname":
+ "spine02", "config": "\n!Command: show running-config exclude security\n!Running
configuration last done at: Wed May 26 11:59:55 2021\n\nversion 9.3(4) Bios:version \nhostname
spine02\nvdc spine02 id 1\n limit-resource vlan minimum 16 maximum 4094\n limit-resource
vrf minimum 2 maximum 4096\n limit-resource port-channel minimum 0 maximum 511\n limit-resource
@@ -1120,7 +1120,7 @@ tests:
bgp 64520\n log-neighbor-changes\n address-family l2vpn evpn\n retain route-target
all\n neighbor 10.0.0.0/24\n remote-as 64520\n update-source loopback0\n address-family
l2vpn evpn\n send-community\n send-community extended\n route-reflector-client\n\n\n",
- "hostname": "spine02", "timestamp": 1622031362791}, {"namespace": "nxos", "config":
+ "timestamp": 1622031362791}, {"namespace": "nxos", "hostname": "spine01", "config":
"\n!Command: show running-config exclude security\n!Running configuration last
done at: Wed May 26 11:59:46 2021\n\nversion 9.3(4) Bios:version \nhostname spine01\nvdc
spine01 id 1\n limit-resource vlan minimum 16 maximum 4094\n limit-resource
@@ -1174,7 +1174,7 @@ tests:
bgp 64520\n log-neighbor-changes\n address-family l2vpn evpn\n retain route-target
all\n neighbor 10.0.0.0/24\n remote-as 64520\n update-source loopback0\n address-family
l2vpn evpn\n send-community\n send-community extended\n route-reflector-client\n\n\n",
- "hostname": "spine01", "timestamp": 1622031362803}, {"namespace": "nxos", "config":
+ "timestamp": 1622031362803}, {"namespace": "nxos", "hostname": "exit01", "config":
"\n!Command: show running-config exclude security\n!Running configuration last
done at: Wed May 26 11:56:34 2021\n\nversion 9.3(4) Bios:version \nhostname exit01\nvdc
exit01 id 1\n limit-resource vlan minimum 16 maximum 4094\n limit-resource vrf
@@ -1246,8 +1246,8 @@ tests:
internet-vrf\n neighbor 169.254.127.0\n inherit peer FIREWALL\n remote-as
65534\n local-as 65522 no-prepend replace-as\n address-family ipv4 unicast\n neighbor
169.254.254.10\n inherit peer FIREWALL\n remote-as 65533\n local-as
- 65522 no-prepend replace-as\n address-family ipv4 unicast\n\n\n", "hostname":
- "exit01", "timestamp": 1622031362813}, {"namespace": "nxos", "config": "\n!Command:
+ 65522 no-prepend replace-as\n address-family ipv4 unicast\n\n\n", "timestamp":
+ 1622031362813}, {"namespace": "nxos", "hostname": "exit02", "config": "\n!Command:
show running-config exclude security\n!Running configuration last done at: Wed
May 26 11:59:16 2021\n\nversion 9.3(4) Bios:version \nhostname exit02\nvdc exit02
id 1\n limit-resource vlan minimum 16 maximum 4094\n limit-resource vrf minimum
@@ -1319,8 +1319,8 @@ tests:
internet-vrf\n neighbor 169.254.127.2\n inherit peer FIREWALL\n remote-as
65534\n local-as 65522 no-prepend replace-as\n address-family ipv4 unicast\n neighbor
169.254.253.10\n inherit peer FIREWALL\n remote-as 65533\n local-as
- 65522 no-prepend replace-as\n address-family ipv4 unicast\n\n\n", "hostname":
- "exit02", "timestamp": 1622031362822}, {"namespace": "nxos", "config": "\n!Command:
+ 65522 no-prepend replace-as\n address-family ipv4 unicast\n\n\n", "timestamp":
+ 1622031362822}, {"namespace": "nxos", "hostname": "leaf02", "config": "\n!Command:
show running-config exclude security\n!Running configuration last done at: Wed
May 26 11:59:35 2021\n\nversion 9.3(4) Bios:version \nhostname leaf02\nvdc leaf02
id 1\n limit-resource vlan minimum 16 maximum 4094\n limit-resource vrf minimum
@@ -1394,31 +1394,31 @@ tests:
extended\n neighbor 10.0.0.21\n inherit peer VXLAN_SPINE\n neighbor 10.0.0.22\n inherit
peer VXLAN_SPINE\n vrf evpn-vrf\n log-neighbor-changes\n address-family
ipv4 unicast\n redistribute direct route-map ADV_SVIS\n maximum-paths
- ibgp 4\n\n\n", "hostname": "leaf02", "timestamp": 1622031362822}]'
+ ibgp 4\n\n\n", "timestamp": 1622031362822}]'
- command: devconfig show --hostname=leaf01 --format=json --namespace=nxos
data-directory: tests/data/parquet/
marks: devconfig show nxos
- output: '[{"namespace": "nxos", "config": "\n!Command: show running-config exclude
- security\n!Running configuration last done at: Wed May 26 11:59:05 2021\n\nversion
- 9.3(4) Bios:version \nhostname leaf01\nvdc leaf01 id 1\n limit-resource vlan
- minimum 16 maximum 4094\n limit-resource vrf minimum 2 maximum 4096\n limit-resource
- port-channel minimum 0 maximum 511\n limit-resource u4route-mem minimum 128 maximum
- 128\n limit-resource u6route-mem minimum 96 maximum 96\n limit-resource m4route-mem
- minimum 58 maximum 58\n limit-resource m6route-mem minimum 8 maximum 8\n\nfeature
- privilege\ncfs eth distribute\nnv overlay evpn\nfeature ospf\nfeature bgp\nfeature
- pim\nfeature fabric forwarding\nfeature interface-vlan\nfeature vn-segment-vlan-based\nfeature
- lacp\nfeature vpc\nfeature lldp\nfeature nv overlay\n\nip domain-lookup\nip name-server
- 10.255.4.1 use-vrf management\nrmon event 1 description FATAL(1) owner PMON@FATAL\nrmon
- event 2 description CRITICAL(2) owner PMON@CRITICAL\nrmon event 3 description
- ERROR(3) owner PMON@ERROR\nrmon event 4 description WARNING(4) owner PMON@WARNING\nrmon
- event 5 description INFORMATION(5) owner PMON@INFO\n\nfabric forwarding anycast-gateway-mac
- 0000.0011.1210\nvlan 1,10,30,999,3960\nvlan 10\n vn-segment 10\nvlan 30\n vn-segment
- 30\nvlan 999\n vn-segment 999\n\nip prefix-list ATTACHED_SVIS seq 10 permit 172.16.0.0/16
- ge 24 \nroute-map ADV_SVIS permit 10\n match ip address prefix-list ATTACHED_SVIS
- \nvrf context evpn-vrf\n vni 999\nvrf context management\n ip route 0.0.0.0/0
- 10.255.4.1\nhardware access-list tcam region vpc-convergence 0\nhardware access-list
- tcam region arp-ether 256\nvpc domain 12\n peer-switch\n peer-keepalive destination
- 10.255.4.185 source 10.255.4.184\n peer-gateway\n layer3 peer-router\n auto-recovery\n ipv6
+ output: '[{"namespace": "nxos", "hostname": "leaf01", "config": "\n!Command: show
+ running-config exclude security\n!Running configuration last done at: Wed May
+ 26 11:59:05 2021\n\nversion 9.3(4) Bios:version \nhostname leaf01\nvdc leaf01
+ id 1\n limit-resource vlan minimum 16 maximum 4094\n limit-resource vrf minimum
+ 2 maximum 4096\n limit-resource port-channel minimum 0 maximum 511\n limit-resource
+ u4route-mem minimum 128 maximum 128\n limit-resource u6route-mem minimum 96 maximum
+ 96\n limit-resource m4route-mem minimum 58 maximum 58\n limit-resource m6route-mem
+ minimum 8 maximum 8\n\nfeature privilege\ncfs eth distribute\nnv overlay evpn\nfeature
+ ospf\nfeature bgp\nfeature pim\nfeature fabric forwarding\nfeature interface-vlan\nfeature
+ vn-segment-vlan-based\nfeature lacp\nfeature vpc\nfeature lldp\nfeature nv overlay\n\nip
+ domain-lookup\nip name-server 10.255.4.1 use-vrf management\nrmon event 1 description
+ FATAL(1) owner PMON@FATAL\nrmon event 2 description CRITICAL(2) owner PMON@CRITICAL\nrmon
+ event 3 description ERROR(3) owner PMON@ERROR\nrmon event 4 description WARNING(4)
+ owner PMON@WARNING\nrmon event 5 description INFORMATION(5) owner PMON@INFO\n\nfabric
+ forwarding anycast-gateway-mac 0000.0011.1210\nvlan 1,10,30,999,3960\nvlan 10\n vn-segment
+ 10\nvlan 30\n vn-segment 30\nvlan 999\n vn-segment 999\n\nip prefix-list ATTACHED_SVIS
+ seq 10 permit 172.16.0.0/16 ge 24 \nroute-map ADV_SVIS permit 10\n match ip address
+ prefix-list ATTACHED_SVIS \nvrf context evpn-vrf\n vni 999\nvrf context management\n ip
+ route 0.0.0.0/0 10.255.4.1\nhardware access-list tcam region vpc-convergence 0\nhardware
+ access-list tcam region arp-ether 256\nvpc domain 12\n peer-switch\n peer-keepalive
+ destination 10.255.4.185 source 10.255.4.184\n peer-gateway\n layer3 peer-router\n auto-recovery\n ipv6
nd synchronize\n ip arp synchronize\n\n\ninterface Vlan1\n no ip redirects\n no
ipv6 redirects\n\ninterface Vlan10\n no shutdown\n mtu 9000\n vrf member evpn-vrf\n no
ip redirects\n ip address 172.16.1.254/24\n no ipv6 redirects\n fabric forwarding
@@ -1472,31 +1472,31 @@ tests:
extended\n neighbor 10.0.0.21\n inherit peer VXLAN_SPINE\n neighbor 10.0.0.22\n inherit
peer VXLAN_SPINE\n vrf evpn-vrf\n log-neighbor-changes\n address-family
ipv4 unicast\n redistribute direct route-map ADV_SVIS\n maximum-paths
- ibgp 4\n\n\n", "hostname": "leaf01", "timestamp": 1622031362773}]'
+ ibgp 4\n\n\n", "timestamp": 1622031362773}]'
- command: devconfig show --hostname='leaf01 spine01' --format=json --namespace=nxos
data-directory: tests/data/parquet/
marks: devconfig show nxos
- output: '[{"namespace": "nxos", "config": "\n!Command: show running-config exclude
- security\n!Running configuration last done at: Wed May 26 11:59:05 2021\n\nversion
- 9.3(4) Bios:version \nhostname leaf01\nvdc leaf01 id 1\n limit-resource vlan
- minimum 16 maximum 4094\n limit-resource vrf minimum 2 maximum 4096\n limit-resource
- port-channel minimum 0 maximum 511\n limit-resource u4route-mem minimum 128 maximum
- 128\n limit-resource u6route-mem minimum 96 maximum 96\n limit-resource m4route-mem
- minimum 58 maximum 58\n limit-resource m6route-mem minimum 8 maximum 8\n\nfeature
- privilege\ncfs eth distribute\nnv overlay evpn\nfeature ospf\nfeature bgp\nfeature
- pim\nfeature fabric forwarding\nfeature interface-vlan\nfeature vn-segment-vlan-based\nfeature
- lacp\nfeature vpc\nfeature lldp\nfeature nv overlay\n\nip domain-lookup\nip name-server
- 10.255.4.1 use-vrf management\nrmon event 1 description FATAL(1) owner PMON@FATAL\nrmon
- event 2 description CRITICAL(2) owner PMON@CRITICAL\nrmon event 3 description
- ERROR(3) owner PMON@ERROR\nrmon event 4 description WARNING(4) owner PMON@WARNING\nrmon
- event 5 description INFORMATION(5) owner PMON@INFO\n\nfabric forwarding anycast-gateway-mac
- 0000.0011.1210\nvlan 1,10,30,999,3960\nvlan 10\n vn-segment 10\nvlan 30\n vn-segment
- 30\nvlan 999\n vn-segment 999\n\nip prefix-list ATTACHED_SVIS seq 10 permit 172.16.0.0/16
- ge 24 \nroute-map ADV_SVIS permit 10\n match ip address prefix-list ATTACHED_SVIS
- \nvrf context evpn-vrf\n vni 999\nvrf context management\n ip route 0.0.0.0/0
- 10.255.4.1\nhardware access-list tcam region vpc-convergence 0\nhardware access-list
- tcam region arp-ether 256\nvpc domain 12\n peer-switch\n peer-keepalive destination
- 10.255.4.185 source 10.255.4.184\n peer-gateway\n layer3 peer-router\n auto-recovery\n ipv6
+ output: '[{"namespace": "nxos", "hostname": "leaf01", "config": "\n!Command: show
+ running-config exclude security\n!Running configuration last done at: Wed May
+ 26 11:59:05 2021\n\nversion 9.3(4) Bios:version \nhostname leaf01\nvdc leaf01
+ id 1\n limit-resource vlan minimum 16 maximum 4094\n limit-resource vrf minimum
+ 2 maximum 4096\n limit-resource port-channel minimum 0 maximum 511\n limit-resource
+ u4route-mem minimum 128 maximum 128\n limit-resource u6route-mem minimum 96 maximum
+ 96\n limit-resource m4route-mem minimum 58 maximum 58\n limit-resource m6route-mem
+ minimum 8 maximum 8\n\nfeature privilege\ncfs eth distribute\nnv overlay evpn\nfeature
+ ospf\nfeature bgp\nfeature pim\nfeature fabric forwarding\nfeature interface-vlan\nfeature
+ vn-segment-vlan-based\nfeature lacp\nfeature vpc\nfeature lldp\nfeature nv overlay\n\nip
+ domain-lookup\nip name-server 10.255.4.1 use-vrf management\nrmon event 1 description
+ FATAL(1) owner PMON@FATAL\nrmon event 2 description CRITICAL(2) owner PMON@CRITICAL\nrmon
+ event 3 description ERROR(3) owner PMON@ERROR\nrmon event 4 description WARNING(4)
+ owner PMON@WARNING\nrmon event 5 description INFORMATION(5) owner PMON@INFO\n\nfabric
+ forwarding anycast-gateway-mac 0000.0011.1210\nvlan 1,10,30,999,3960\nvlan 10\n vn-segment
+ 10\nvlan 30\n vn-segment 30\nvlan 999\n vn-segment 999\n\nip prefix-list ATTACHED_SVIS
+ seq 10 permit 172.16.0.0/16 ge 24 \nroute-map ADV_SVIS permit 10\n match ip address
+ prefix-list ATTACHED_SVIS \nvrf context evpn-vrf\n vni 999\nvrf context management\n ip
+ route 0.0.0.0/0 10.255.4.1\nhardware access-list tcam region vpc-convergence 0\nhardware
+ access-list tcam region arp-ether 256\nvpc domain 12\n peer-switch\n peer-keepalive
+ destination 10.255.4.185 source 10.255.4.184\n peer-gateway\n layer3 peer-router\n auto-recovery\n ipv6
nd synchronize\n ip arp synchronize\n\n\ninterface Vlan1\n no ip redirects\n no
ipv6 redirects\n\ninterface Vlan10\n no shutdown\n mtu 9000\n vrf member evpn-vrf\n no
ip redirects\n ip address 172.16.1.254/24\n no ipv6 redirects\n fabric forwarding
@@ -1550,8 +1550,8 @@ tests:
extended\n neighbor 10.0.0.21\n inherit peer VXLAN_SPINE\n neighbor 10.0.0.22\n inherit
peer VXLAN_SPINE\n vrf evpn-vrf\n log-neighbor-changes\n address-family
ipv4 unicast\n redistribute direct route-map ADV_SVIS\n maximum-paths
- ibgp 4\n\n\n", "hostname": "leaf01", "timestamp": 1622031362773}, {"namespace":
- "nxos", "config": "\n!Command: show running-config exclude security\n!Running
+ ibgp 4\n\n\n", "timestamp": 1622031362773}, {"namespace": "nxos", "hostname":
+ "spine01", "config": "\n!Command: show running-config exclude security\n!Running
configuration last done at: Wed May 26 11:59:46 2021\n\nversion 9.3(4) Bios:version \nhostname
spine01\nvdc spine01 id 1\n limit-resource vlan minimum 16 maximum 4094\n limit-resource
vrf minimum 2 maximum 4096\n limit-resource port-channel minimum 0 maximum 511\n limit-resource
@@ -1604,32 +1604,32 @@ tests:
bgp 64520\n log-neighbor-changes\n address-family l2vpn evpn\n retain route-target
all\n neighbor 10.0.0.0/24\n remote-as 64520\n update-source loopback0\n address-family
l2vpn evpn\n send-community\n send-community extended\n route-reflector-client\n\n\n",
- "hostname": "spine01", "timestamp": 1622031362803}]'
+ "timestamp": 1622031362803}]'
- command: devconfig show --hostname='leaf01 spine01' --query-str='config.str.contains("10.0.0.21")'
--format=json --namespace=nxos
data-directory: tests/data/parquet/
marks: devconfig show nxos
- output: '[{"namespace": "nxos", "config": "\n!Command: show running-config exclude
- security\n!Running configuration last done at: Wed May 26 11:59:05 2021\n\nversion
- 9.3(4) Bios:version \nhostname leaf01\nvdc leaf01 id 1\n limit-resource vlan
- minimum 16 maximum 4094\n limit-resource vrf minimum 2 maximum 4096\n limit-resource
- port-channel minimum 0 maximum 511\n limit-resource u4route-mem minimum 128 maximum
- 128\n limit-resource u6route-mem minimum 96 maximum 96\n limit-resource m4route-mem
- minimum 58 maximum 58\n limit-resource m6route-mem minimum 8 maximum 8\n\nfeature
- privilege\ncfs eth distribute\nnv overlay evpn\nfeature ospf\nfeature bgp\nfeature
- pim\nfeature fabric forwarding\nfeature interface-vlan\nfeature vn-segment-vlan-based\nfeature
- lacp\nfeature vpc\nfeature lldp\nfeature nv overlay\n\nip domain-lookup\nip name-server
- 10.255.4.1 use-vrf management\nrmon event 1 description FATAL(1) owner PMON@FATAL\nrmon
- event 2 description CRITICAL(2) owner PMON@CRITICAL\nrmon event 3 description
- ERROR(3) owner PMON@ERROR\nrmon event 4 description WARNING(4) owner PMON@WARNING\nrmon
- event 5 description INFORMATION(5) owner PMON@INFO\n\nfabric forwarding anycast-gateway-mac
- 0000.0011.1210\nvlan 1,10,30,999,3960\nvlan 10\n vn-segment 10\nvlan 30\n vn-segment
- 30\nvlan 999\n vn-segment 999\n\nip prefix-list ATTACHED_SVIS seq 10 permit 172.16.0.0/16
- ge 24 \nroute-map ADV_SVIS permit 10\n match ip address prefix-list ATTACHED_SVIS
- \nvrf context evpn-vrf\n vni 999\nvrf context management\n ip route 0.0.0.0/0
- 10.255.4.1\nhardware access-list tcam region vpc-convergence 0\nhardware access-list
- tcam region arp-ether 256\nvpc domain 12\n peer-switch\n peer-keepalive destination
- 10.255.4.185 source 10.255.4.184\n peer-gateway\n layer3 peer-router\n auto-recovery\n ipv6
+ output: '[{"namespace": "nxos", "hostname": "leaf01", "config": "\n!Command: show
+ running-config exclude security\n!Running configuration last done at: Wed May
+ 26 11:59:05 2021\n\nversion 9.3(4) Bios:version \nhostname leaf01\nvdc leaf01
+ id 1\n limit-resource vlan minimum 16 maximum 4094\n limit-resource vrf minimum
+ 2 maximum 4096\n limit-resource port-channel minimum 0 maximum 511\n limit-resource
+ u4route-mem minimum 128 maximum 128\n limit-resource u6route-mem minimum 96 maximum
+ 96\n limit-resource m4route-mem minimum 58 maximum 58\n limit-resource m6route-mem
+ minimum 8 maximum 8\n\nfeature privilege\ncfs eth distribute\nnv overlay evpn\nfeature
+ ospf\nfeature bgp\nfeature pim\nfeature fabric forwarding\nfeature interface-vlan\nfeature
+ vn-segment-vlan-based\nfeature lacp\nfeature vpc\nfeature lldp\nfeature nv overlay\n\nip
+ domain-lookup\nip name-server 10.255.4.1 use-vrf management\nrmon event 1 description
+ FATAL(1) owner PMON@FATAL\nrmon event 2 description CRITICAL(2) owner PMON@CRITICAL\nrmon
+ event 3 description ERROR(3) owner PMON@ERROR\nrmon event 4 description WARNING(4)
+ owner PMON@WARNING\nrmon event 5 description INFORMATION(5) owner PMON@INFO\n\nfabric
+ forwarding anycast-gateway-mac 0000.0011.1210\nvlan 1,10,30,999,3960\nvlan 10\n vn-segment
+ 10\nvlan 30\n vn-segment 30\nvlan 999\n vn-segment 999\n\nip prefix-list ATTACHED_SVIS
+ seq 10 permit 172.16.0.0/16 ge 24 \nroute-map ADV_SVIS permit 10\n match ip address
+ prefix-list ATTACHED_SVIS \nvrf context evpn-vrf\n vni 999\nvrf context management\n ip
+ route 0.0.0.0/0 10.255.4.1\nhardware access-list tcam region vpc-convergence 0\nhardware
+ access-list tcam region arp-ether 256\nvpc domain 12\n peer-switch\n peer-keepalive
+ destination 10.255.4.185 source 10.255.4.184\n peer-gateway\n layer3 peer-router\n auto-recovery\n ipv6
nd synchronize\n ip arp synchronize\n\n\ninterface Vlan1\n no ip redirects\n no
ipv6 redirects\n\ninterface Vlan10\n no shutdown\n mtu 9000\n vrf member evpn-vrf\n no
ip redirects\n ip address 172.16.1.254/24\n no ipv6 redirects\n fabric forwarding
@@ -1683,8 +1683,8 @@ tests:
extended\n neighbor 10.0.0.21\n inherit peer VXLAN_SPINE\n neighbor 10.0.0.22\n inherit
peer VXLAN_SPINE\n vrf evpn-vrf\n log-neighbor-changes\n address-family
ipv4 unicast\n redistribute direct route-map ADV_SVIS\n maximum-paths
- ibgp 4\n\n\n", "hostname": "leaf01", "timestamp": 1622031362773}, {"namespace":
- "nxos", "config": "\n!Command: show running-config exclude security\n!Running
+ ibgp 4\n\n\n", "timestamp": 1622031362773}, {"namespace": "nxos", "hostname":
+ "spine01", "config": "\n!Command: show running-config exclude security\n!Running
configuration last done at: Wed May 26 11:59:46 2021\n\nversion 9.3(4) Bios:version \nhostname
spine01\nvdc spine01 id 1\n limit-resource vlan minimum 16 maximum 4094\n limit-resource
vrf minimum 2 maximum 4096\n limit-resource port-channel minimum 0 maximum 511\n limit-resource
@@ -1737,7 +1737,7 @@ tests:
bgp 64520\n log-neighbor-changes\n address-family l2vpn evpn\n retain route-target
all\n neighbor 10.0.0.0/24\n remote-as 64520\n update-source loopback0\n address-family
l2vpn evpn\n send-community\n send-community extended\n route-reflector-client\n\n\n",
- "hostname": "spine01", "timestamp": 1622031362803}]'
+ "timestamp": 1622031362803}]'
- command: devconfig summarize --format=json --namespace=nxos
data-directory: tests/data/parquet/
marks: devconfig summarize nxos
@@ -1751,3 +1751,172 @@ tests:
error:
error: '[{"error": "Unique not supported for Device Config"}]'
marks: devconfig unique nxos
+- command: devconfig show --format=json --namespace=nxos --section='^interface Ethernet1/1$'
+ data-directory: tests/data/parquet/
+ marks: devconfig show nxos
+ output: '[{"namespace": "nxos", "hostname": "leaf03", "config": "interface Ethernet1/1\n no
+ switchport\n mtu 9216\n medium p2p\n ip unnumbered loopback0\n ip ospf network
+ point-to-point\n ip router ospf UNDERLAY area 0.0.0.0\n no shutdown", "timestamp":
+ 1622031362698}, {"namespace": "nxos", "hostname": "leaf04", "config": "interface
+ Ethernet1/1\n no switchport\n mtu 9216\n medium p2p\n ip unnumbered loopback0\n ip
+ ospf network point-to-point\n ip router ospf UNDERLAY area 0.0.0.0\n no shutdown",
+ "timestamp": 1622031362708}, {"namespace": "nxos", "hostname": "leaf01", "config":
+ "interface Ethernet1/1\n no switchport\n mtu 9216\n medium p2p\n ip unnumbered
+ loopback0\n ip ospf network point-to-point\n ip router ospf UNDERLAY area 0.0.0.0\n no
+ shutdown", "timestamp": 1622031362773}, {"namespace": "nxos", "hostname": "spine02",
+ "config": "interface Ethernet1/1\n no switchport\n mtu 9216\n medium p2p\n ip
+ unnumbered loopback0\n ip ospf network point-to-point\n ip router ospf UNDERLAY
+ area 0.0.0.0\n no shutdown", "timestamp": 1622031362791}, {"namespace": "nxos",
+ "hostname": "spine01", "config": "interface Ethernet1/1\n no switchport\n mtu
+ 9216\n medium p2p\n ip unnumbered loopback0\n ip ospf network point-to-point\n ip
+ router ospf UNDERLAY area 0.0.0.0\n no shutdown", "timestamp": 1622031362803},
+ {"namespace": "nxos", "hostname": "exit01", "config": "interface Ethernet1/1\n no
+ switchport\n mtu 9216\n medium p2p\n ip unnumbered loopback0\n ip ospf network
+ point-to-point\n ip router ospf UNDERLAY area 0.0.0.0\n no shutdown", "timestamp":
+ 1622031362813}, {"namespace": "nxos", "hostname": "exit02", "config": "interface
+ Ethernet1/1\n no switchport\n mtu 9216\n medium p2p\n ip unnumbered loopback0\n ip
+ ospf network point-to-point\n ip router ospf UNDERLAY area 0.0.0.0\n no shutdown",
+ "timestamp": 1622031362822}, {"namespace": "nxos", "hostname": "leaf02", "config":
+ "interface Ethernet1/1\n no switchport\n mtu 9216\n medium p2p\n ip unnumbered
+ loopback0\n ip ospf network point-to-point\n ip router ospf UNDERLAY area 0.0.0.0\n no
+ shutdown", "timestamp": 1622031362822}]'
+- command: devconfig show --format=json --namespace=nxos --section='interface Ethernet1/1'
+ data-directory: tests/data/parquet/
+ marks: devconfig show nxos
+ output: '[{"namespace": "nxos", "hostname": "leaf03", "config": "interface Ethernet1/1\n no
+ switchport\n mtu 9216\n medium p2p\n ip unnumbered loopback0\n ip ospf network
+ point-to-point\n ip router ospf UNDERLAY area 0.0.0.0\n no shutdown\ninterface
+ Ethernet1/10\ninterface Ethernet1/11\ninterface Ethernet1/12\ninterface Ethernet1/13\ninterface
+ Ethernet1/14\ninterface Ethernet1/15\ninterface Ethernet1/16\ninterface Ethernet1/17\ninterface
+ Ethernet1/18\ninterface Ethernet1/19", "timestamp": 1622031362698}, {"namespace":
+ "nxos", "hostname": "leaf04", "config": "interface Ethernet1/1\n no switchport\n mtu
+ 9216\n medium p2p\n ip unnumbered loopback0\n ip ospf network point-to-point\n ip
+ router ospf UNDERLAY area 0.0.0.0\n no shutdown\ninterface Ethernet1/10\ninterface
+ Ethernet1/11\ninterface Ethernet1/12\ninterface Ethernet1/13\ninterface Ethernet1/14\ninterface
+ Ethernet1/15\ninterface Ethernet1/16\ninterface Ethernet1/17\ninterface Ethernet1/18\ninterface
+ Ethernet1/19", "timestamp": 1622031362708}, {"namespace": "nxos", "hostname":
+ "leaf01", "config": "interface Ethernet1/1\n no switchport\n mtu 9216\n medium
+ p2p\n ip unnumbered loopback0\n ip ospf network point-to-point\n ip router
+ ospf UNDERLAY area 0.0.0.0\n no shutdown\ninterface Ethernet1/10\ninterface Ethernet1/11\ninterface
+ Ethernet1/12\ninterface Ethernet1/13\ninterface Ethernet1/14\ninterface Ethernet1/15\ninterface
+ Ethernet1/16\ninterface Ethernet1/17\ninterface Ethernet1/18\ninterface Ethernet1/19",
+ "timestamp": 1622031362773}, {"namespace": "nxos", "hostname": "spine02", "config":
+ "interface Ethernet1/1\n no switchport\n mtu 9216\n medium p2p\n ip unnumbered
+ loopback0\n ip ospf network point-to-point\n ip router ospf UNDERLAY area 0.0.0.0\n no
+ shutdown\ninterface Ethernet1/10\ninterface Ethernet1/11\ninterface Ethernet1/12\ninterface
+ Ethernet1/13\ninterface Ethernet1/14\ninterface Ethernet1/15\ninterface Ethernet1/16\ninterface
+ Ethernet1/17\ninterface Ethernet1/18\ninterface Ethernet1/19", "timestamp": 1622031362791},
+ {"namespace": "nxos", "hostname": "spine01", "config": "interface Ethernet1/1\n no
+ switchport\n mtu 9216\n medium p2p\n ip unnumbered loopback0\n ip ospf network
+ point-to-point\n ip router ospf UNDERLAY area 0.0.0.0\n no shutdown\ninterface
+ Ethernet1/10\ninterface Ethernet1/11\ninterface Ethernet1/12\ninterface Ethernet1/13\ninterface
+ Ethernet1/14\ninterface Ethernet1/15\ninterface Ethernet1/16\ninterface Ethernet1/17\ninterface
+ Ethernet1/18\ninterface Ethernet1/19", "timestamp": 1622031362803}, {"namespace":
+ "nxos", "hostname": "exit01", "config": "interface Ethernet1/1\n no switchport\n mtu
+ 9216\n medium p2p\n ip unnumbered loopback0\n ip ospf network point-to-point\n ip
+ router ospf UNDERLAY area 0.0.0.0\n no shutdown\ninterface Ethernet1/10\ninterface
+ Ethernet1/11\ninterface Ethernet1/12\ninterface Ethernet1/13\ninterface Ethernet1/14\ninterface
+ Ethernet1/15\ninterface Ethernet1/16\ninterface Ethernet1/17\ninterface Ethernet1/18\ninterface
+ Ethernet1/19", "timestamp": 1622031362813}, {"namespace": "nxos", "hostname":
+ "exit02", "config": "interface Ethernet1/1\n no switchport\n mtu 9216\n medium
+ p2p\n ip unnumbered loopback0\n ip ospf network point-to-point\n ip router
+ ospf UNDERLAY area 0.0.0.0\n no shutdown\ninterface Ethernet1/10\ninterface Ethernet1/11\ninterface
+ Ethernet1/12\ninterface Ethernet1/13\ninterface Ethernet1/14\ninterface Ethernet1/15\ninterface
+ Ethernet1/16\ninterface Ethernet1/17\ninterface Ethernet1/18\ninterface Ethernet1/19",
+ "timestamp": 1622031362822}, {"namespace": "nxos", "hostname": "leaf02", "config":
+ "interface Ethernet1/1\n no switchport\n mtu 9216\n medium p2p\n ip unnumbered
+ loopback0\n ip ospf network point-to-point\n ip router ospf UNDERLAY area 0.0.0.0\n no
+ shutdown\ninterface Ethernet1/10\ninterface Ethernet1/11\ninterface Ethernet1/12\ninterface
+ Ethernet1/13\ninterface Ethernet1/14\ninterface Ethernet1/15\ninterface Ethernet1/16\ninterface
+ Ethernet1/17\ninterface Ethernet1/18\ninterface Ethernet1/19", "timestamp": 1622031362822}]'
+- command: devconfig show --format=json --namespace=nxos --section='ip ospf network
+ point-to-point'
+ data-directory: tests/data/parquet/
+ marks: devconfig show nxos
+ output: '[{"namespace": "nxos", "hostname": "leaf03", "config": " ip ospf network
+ point-to-point\n ip ospf network point-to-point\n ip ospf network point-to-point",
+ "timestamp": 1622031362698}, {"namespace": "nxos", "hostname": "leaf04", "config":
+ " ip ospf network point-to-point\n ip ospf network point-to-point\n ip ospf
+ network point-to-point", "timestamp": 1622031362708}, {"namespace": "nxos", "hostname":
+ "leaf01", "config": " ip ospf network point-to-point\n ip ospf network point-to-point\n ip
+ ospf network point-to-point", "timestamp": 1622031362773}, {"namespace": "nxos",
+ "hostname": "spine02", "config": " ip ospf network point-to-point\n ip ospf
+ network point-to-point\n ip ospf network point-to-point\n ip ospf network point-to-point\n ip
+ ospf network point-to-point\n ip ospf network point-to-point", "timestamp": 1622031362791},
+ {"namespace": "nxos", "hostname": "spine01", "config": " ip ospf network point-to-point\n ip
+ ospf network point-to-point\n ip ospf network point-to-point\n ip ospf network
+ point-to-point\n ip ospf network point-to-point\n ip ospf network point-to-point",
+ "timestamp": 1622031362803}, {"namespace": "nxos", "hostname": "exit01", "config":
+ " ip ospf network point-to-point\n ip ospf network point-to-point", "timestamp":
+ 1622031362813}, {"namespace": "nxos", "hostname": "exit02", "config": " ip ospf
+ network point-to-point\n ip ospf network point-to-point", "timestamp": 1622031362822},
+ {"namespace": "nxos", "hostname": "leaf02", "config": " ip ospf network point-to-point\n ip
+ ospf network point-to-point\n ip ospf network point-to-point", "timestamp": 1622031362822}]'
+- command: devconfig show --format=json --namespace=nxos --section='router bgp'
+ data-directory: tests/data/parquet/
+ marks: devconfig show nxos
+ output: '[{"namespace": "nxos", "hostname": "leaf03", "config": "router bgp 64520\n log-neighbor-changes\n template
+ peer VXLAN_SPINE\n remote-as 64520\n update-source loopback0\n address-family
+ l2vpn evpn\n send-community\n send-community extended\n neighbor 10.0.0.21\n inherit
+ peer VXLAN_SPINE\n neighbor 10.0.0.22\n inherit peer VXLAN_SPINE\n vrf evpn-vrf\n log-neighbor-changes\n address-family
+ ipv4 unicast\n redistribute direct route-map ADV_SVIS\n maximum-paths
+ ibgp 4", "timestamp": 1622031362698}, {"namespace": "nxos", "hostname": "leaf04",
+ "config": "router bgp 64520\n log-neighbor-changes\n template peer VXLAN_SPINE\n remote-as
+ 64520\n update-source loopback0\n address-family l2vpn evpn\n send-community\n send-community
+ extended\n neighbor 10.0.0.21\n inherit peer VXLAN_SPINE\n neighbor 10.0.0.22\n inherit
+ peer VXLAN_SPINE\n vrf evpn-vrf\n log-neighbor-changes\n address-family
+ ipv4 unicast\n redistribute direct route-map ADV_SVIS\n maximum-paths
+ ibgp 4", "timestamp": 1622031362708}, {"namespace": "nxos", "hostname": "leaf01",
+ "config": "router bgp 64520\n log-neighbor-changes\n template peer VXLAN_SPINE\n remote-as
+ 64520\n update-source loopback0\n address-family l2vpn evpn\n send-community\n send-community
+ extended\n neighbor 10.0.0.21\n inherit peer VXLAN_SPINE\n neighbor 10.0.0.22\n inherit
+ peer VXLAN_SPINE\n vrf evpn-vrf\n log-neighbor-changes\n address-family
+ ipv4 unicast\n redistribute direct route-map ADV_SVIS\n maximum-paths
+ ibgp 4", "timestamp": 1622031362773}, {"namespace": "nxos", "hostname": "spine02",
+ "config": "router bgp 64520\n log-neighbor-changes\n address-family l2vpn evpn\n retain
+ route-target all\n neighbor 10.0.0.0/24\n remote-as 64520\n update-source
+ loopback0\n address-family l2vpn evpn\n send-community\n send-community
+ extended\n route-reflector-client", "timestamp": 1622031362791}, {"namespace":
+ "nxos", "hostname": "spine01", "config": "router bgp 64520\n log-neighbor-changes\n address-family
+ l2vpn evpn\n retain route-target all\n neighbor 10.0.0.0/24\n remote-as
+ 64520\n update-source loopback0\n address-family l2vpn evpn\n send-community\n send-community
+ extended\n route-reflector-client", "timestamp": 1622031362803}, {"namespace":
+ "nxos", "hostname": "exit01", "config": "router bgp 64520\n log-neighbor-changes\n template
+ peer FIREWALL\n address-family ipv4 unicast\n soft-reconfiguration inbound
+ always\n template peer VXLAN_SPINE\n remote-as 64520\n update-source loopback0\n address-family
+ l2vpn evpn\n send-community\n send-community extended\n neighbor 10.0.0.21\n inherit
+ peer VXLAN_SPINE\n neighbor 10.0.0.22\n inherit peer VXLAN_SPINE\n neighbor
+ 169.254.254.2\n inherit peer FIREWALL\n remote-as 65533\n local-as 65520
+ no-prepend replace-as\n address-family ipv4 unicast\n vrf evpn-vrf\n address-family
+ ipv4 unicast\n aggregate-address 172.16.1.0/24 summary-only attribute-map
+ LOWER_AGGRT_PREF\n aggregate-address 172.16.2.0/24 summary-only attribute-map
+ LOWER_AGGRT_PREF\n aggregate-address 172.16.3.0/24 summary-only attribute-map
+ LOWER_AGGRT_PREF\n neighbor 169.254.254.6\n inherit peer FIREWALL\n remote-as
+ 65533\n local-as 65521 no-prepend replace-as\n address-family ipv4 unicast\n vrf
+ internet-vrf\n neighbor 169.254.127.0\n inherit peer FIREWALL\n remote-as
+ 65534\n local-as 65522 no-prepend replace-as\n address-family ipv4 unicast\n neighbor
+ 169.254.254.10\n inherit peer FIREWALL\n remote-as 65533\n local-as
+ 65522 no-prepend replace-as\n address-family ipv4 unicast", "timestamp":
+ 1622031362813}, {"namespace": "nxos", "hostname": "exit02", "config": "router
+ bgp 64520\n log-neighbor-changes\n template peer FIREWALL\n address-family
+ ipv4 unicast\n soft-reconfiguration inbound always\n template peer VXLAN_SPINE\n remote-as
+ 64520\n update-source loopback0\n address-family l2vpn evpn\n send-community\n send-community
+ extended\n neighbor 10.0.0.21\n inherit peer VXLAN_SPINE\n neighbor 10.0.0.22\n inherit
+ peer VXLAN_SPINE\n neighbor 169.254.253.2\n inherit peer FIREWALL\n remote-as
+ 65533\n local-as 65520 no-prepend replace-as\n address-family ipv4 unicast\n vrf
+ evpn-vrf\n address-family ipv4 unicast\n aggregate-address 172.16.1.0/24
+ summary-only attribute-map LOWER_AGGRT_PREF\n aggregate-address 172.16.2.0/24
+ summary-only attribute-map LOWER_AGGRT_PREF\n aggregate-address 172.16.3.0/24
+ summary-only attribute-map LOWER_AGGRT_PREF\n neighbor 169.254.253.6\n inherit
+ peer FIREWALL\n remote-as 65533\n local-as 65521 no-prepend replace-as\n address-family
+ ipv4 unicast\n vrf internet-vrf\n neighbor 169.254.127.2\n inherit peer
+ FIREWALL\n remote-as 65534\n local-as 65522 no-prepend replace-as\n address-family
+ ipv4 unicast\n neighbor 169.254.253.10\n inherit peer FIREWALL\n remote-as
+ 65533\n local-as 65522 no-prepend replace-as\n address-family ipv4 unicast",
+ "timestamp": 1622031362822}, {"namespace": "nxos", "hostname": "leaf02", "config":
+ "router bgp 64520\n log-neighbor-changes\n template peer VXLAN_SPINE\n remote-as
+ 64520\n update-source loopback0\n address-family l2vpn evpn\n send-community\n send-community
+ extended\n neighbor 10.0.0.21\n inherit peer VXLAN_SPINE\n neighbor 10.0.0.22\n inherit
+ peer VXLAN_SPINE\n vrf evpn-vrf\n log-neighbor-changes\n address-family
+ ipv4 unicast\n redistribute direct route-map ADV_SVIS\n maximum-paths
+ ibgp 4", "timestamp": 1622031362822}]'
From 5e59bfae8a7f9d9cdb6f679d96b88cec3806b972 Mon Sep 17 00:00:00 2001
From: Dinesh Dutt
Date: Sun, 26 May 2024 23:47:35 -0700
Subject: [PATCH 07/10] describe: devconfig fix
Signed-off-by: Dinesh Dutt
---
tests/integration/sqcmds/common-samples/describe.yml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/tests/integration/sqcmds/common-samples/describe.yml b/tests/integration/sqcmds/common-samples/describe.yml
index 6acc453630..be6f1672fd 100644
--- a/tests/integration/sqcmds/common-samples/describe.yml
+++ b/tests/integration/sqcmds/common-samples/describe.yml
@@ -138,14 +138,14 @@ tests:
marks: devconfig describe
output: '[{"name": "active", "type": "boolean", "key": "", "display": "", "description":
"If this entry is active or deleted"}, {"name": "config", "type": "string", "key":
- "", "display": 1, "description": "The running config"}, {"name": "deviceSession",
+ "", "display": 2, "description": "The running config"}, {"name": "deviceSession",
"type": "timestamp", "key": "", "display": "", "description": "Device boot session
id"}, {"name": "hostname", "type": "string", "key": 1, "display": 1, "description":
"Hostname associated with this record"}, {"name": "namespace", "type": "string",
"key": 0, "display": 0, "description": "Namespace associated with this record"},
{"name": "sqvers", "type": "string", "key": "", "display": "", "description":
"Schema version, not selectable"}, {"name": "timestamp", "type": "timestamp",
- "key": "", "display": 2, "description": "Unix epach When this record was created,
+ "key": "", "display": 3, "description": "Unix epach When this record was created,
in ms"}]'
- command: device describe --format=json
data-directory: tests/data/parquet
From 4f42f1a6303ee7eb8144e4391c78fdc58e9f285e Mon Sep 17 00:00:00 2001
From: Dinesh Dutt
Date: Sun, 26 May 2024 23:48:04 -0700
Subject: [PATCH 08/10] panos devconfig test fixes
Signed-off-by: Dinesh Dutt
---
.../sqcmds/panos-samples/devconfig.yml | 188 +++++++++---------
1 file changed, 93 insertions(+), 95 deletions(-)
diff --git a/tests/integration/sqcmds/panos-samples/devconfig.yml b/tests/integration/sqcmds/panos-samples/devconfig.yml
index e06f1045ab..8b87f1b020 100644
--- a/tests/integration/sqcmds/panos-samples/devconfig.yml
+++ b/tests/integration/sqcmds/panos-samples/devconfig.yml
@@ -3,9 +3,9 @@ tests:
- command: devconfig show --format=json --namespace=panos
data-directory: tests/data/parquet/
marks: devconfig show panos
- output: '[{"namespace": "panos", "config": "# hostname\nexit01\n# interfaces\n#
- This file describes the network interfaces available on your system\n# and how
- to activate them. For more information, see interfaces(5).\n\nsource /etc/network/interfaces.d/*.intf\n\n#
+ output: '[{"namespace": "panos", "hostname": "exit01", "config": "# hostname\nexit01\n#
+ interfaces\n# This file describes the network interfaces available on your system\n#
+ and how to activate them. For more information, see interfaces(5).\n\nsource /etc/network/interfaces.d/*.intf\n\n#
The loopback network interface\nauto lo\niface lo inet loopback\n\n# The primary
network interface\nauto eth0\niface eth0 inet dhcp\n vrf mgmt\n\nauto mgmt\niface
mgmt\n address 127.0.0.1/8\n address ::1/128\n vrf-table auto\n# BEGIN
@@ -56,7 +56,7 @@ tests:
FW activate\n exit-address-family\n!\nrouter ospf\n ospf router-id 10.0.0.31\n
passive-interface lo\n!\nroute-map LOWER_AGGRT_PREF permit 10\n set local-preference
10\n!\nline vty\n!\nend\n# ports.conf\n# resolv.conf\nnameserver 10.255.2.1 #
- vrf mgmt", "hostname": "exit01", "timestamp": 1639476253934}, {"namespace": "panos",
+ vrf mgmt", "timestamp": 1639476253934}, {"namespace": "panos", "hostname": "leaf03",
"config": "# hostname\nleaf03\n# interfaces\n# This file describes the network
interfaces available on your system\n# and how to activate them. For more information,
see interfaces(5).\n\nsource /etc/network/interfaces.d/*.intf\n\n# The loopback
@@ -115,7 +115,7 @@ tests:
exit-address-family\n !\n address-family l2vpn evpn\n advertise ipv4 unicast\n
exit-address-family\n!\nrouter ospf\n ospf router-id 10.0.0.13\n passive-interface
lo\n!\nline vty\n!\nend\n# ports.conf\n# resolv.conf\nnameserver 10.255.2.1 #
- vrf mgmt", "hostname": "leaf03", "timestamp": 1639476253942}, {"namespace": "panos",
+ vrf mgmt", "timestamp": 1639476253942}, {"namespace": "panos", "hostname": "spine01",
"config": "# hostname\nspine01\n# interfaces\n# This file describes the network
interfaces available on your system\n# and how to activate them. For more information,
see interfaces(5).\n\nsource /etc/network/interfaces.d/*.intf\n\n# The loopback
@@ -146,7 +146,7 @@ tests:
address-family l2vpn evpn\n neighbor RR activate\n neighbor RR route-reflector-client\n
exit-address-family\n!\nrouter ospf\n ospf router-id 10.0.0.21\n passive-interface
lo\n!\nline vty\n!\nend\n# ports.conf\n# resolv.conf\nnameserver 10.255.2.1 #
- vrf mgmt", "hostname": "spine01", "timestamp": 1639476253942}, {"namespace": "panos",
+ vrf mgmt", "timestamp": 1639476253942}, {"namespace": "panos", "hostname": "exit02",
"config": "# hostname\nexit02\n# interfaces\n# This file describes the network
interfaces available on your system\n# and how to activate them. For more information,
see interfaces(5).\n\nsource /etc/network/interfaces.d/*.intf\n\n# The loopback
@@ -200,7 +200,7 @@ tests:
FW activate\n exit-address-family\n!\nrouter ospf\n ospf router-id 10.0.0.32\n
passive-interface lo\n!\nroute-map LOWER_AGGRT_PREF permit 10\n set local-preference
10\n!\nline vty\n!\nend\n# ports.conf\n# resolv.conf\nnameserver 10.255.2.1 #
- vrf mgmt", "hostname": "exit02", "timestamp": 1639476253943}, {"namespace": "panos",
+ vrf mgmt", "timestamp": 1639476253943}, {"namespace": "panos", "hostname": "spine02",
"config": "# hostname\nspine02\n# interfaces\n# This file describes the network
interfaces available on your system\n# and how to activate them. For more information,
see interfaces(5).\n\nsource /etc/network/interfaces.d/*.intf\n\n# The loopback
@@ -231,7 +231,7 @@ tests:
address-family l2vpn evpn\n neighbor RR activate\n neighbor RR route-reflector-client\n
exit-address-family\n!\nrouter ospf\n ospf router-id 10.0.0.22\n passive-interface
lo\n!\nline vty\n!\nend\n# ports.conf\n# resolv.conf\nnameserver 10.255.2.1 #
- vrf mgmt", "hostname": "spine02", "timestamp": 1639476253943}, {"namespace": "panos",
+ vrf mgmt", "timestamp": 1639476253943}, {"namespace": "panos", "hostname": "dcedge01",
"config": "# hostname\ndcedge01\n# interfaces\n# This file describes the network
interfaces available on your system\n# and how to activate them. For more information,
see interfaces(5).\n\nsource /etc/network/interfaces.d/*.intf\n\n# The loopback
@@ -250,8 +250,8 @@ tests:
169.254.127.1 peer-group ISL\n neighbor 169.254.127.3 peer-group ISL\n !\n address-family
ipv4 unicast\n redistribute connected route-map LOOPBACKS\n neighbor ISL default-originate\n
exit-address-family\n!\nroute-map LOOPBACKS permit 10\n match interface lo\n!\nline
- vty\n!\nend\n# ports.conf\n# resolv.conf\nnameserver 10.255.2.1 # vrf mgmt", "hostname":
- "dcedge01", "timestamp": 1639476253948}, {"namespace": "panos", "config": "# hostname\nleaf01\n#
+ vty\n!\nend\n# ports.conf\n# resolv.conf\nnameserver 10.255.2.1 # vrf mgmt", "timestamp":
+ 1639476253948}, {"namespace": "panos", "hostname": "leaf01", "config": "# hostname\nleaf01\n#
interfaces\n# This file describes the network interfaces available on your system\n#
and how to activate them. For more information, see interfaces(5).\n\nsource /etc/network/interfaces.d/*.intf\n\n#
The loopback network interface\nauto lo\niface lo inet loopback\n\n# The primary
@@ -310,7 +310,7 @@ tests:
exit-address-family\n !\n address-family l2vpn evpn\n advertise ipv4 unicast\n
exit-address-family\n!\nrouter ospf\n ospf router-id 10.0.0.11\n passive-interface
lo\n!\nline vty\n!\nend\n# ports.conf\n# resolv.conf\nnameserver 10.255.2.1 #
- vrf mgmt", "hostname": "leaf01", "timestamp": 1639476253949}, {"namespace": "panos",
+ vrf mgmt", "timestamp": 1639476253949}, {"namespace": "panos", "hostname": "leaf02",
"config": "# hostname\nleaf02\n# interfaces\n# This file describes the network
interfaces available on your system\n# and how to activate them. For more information,
see interfaces(5).\n\nsource /etc/network/interfaces.d/*.intf\n\n# The loopback
@@ -369,7 +369,7 @@ tests:
exit-address-family\n !\n address-family l2vpn evpn\n advertise ipv4 unicast\n
exit-address-family\n!\nrouter ospf\n ospf router-id 10.0.0.12\n passive-interface
lo\n!\nline vty\n!\nend\n# ports.conf\n# resolv.conf\nnameserver 10.255.2.1 #
- vrf mgmt", "hostname": "leaf02", "timestamp": 1639476253949}, {"namespace": "panos",
+ vrf mgmt", "timestamp": 1639476253949}, {"namespace": "panos", "hostname": "leaf04",
"config": "# hostname\nleaf04\n# interfaces\n# This file describes the network
interfaces available on your system\n# and how to activate them. For more information,
see interfaces(5).\n\nsource /etc/network/interfaces.d/*.intf\n\n# The loopback
@@ -428,13 +428,13 @@ tests:
exit-address-family\n !\n address-family l2vpn evpn\n advertise ipv4 unicast\n
exit-address-family\n!\nrouter ospf\n ospf router-id 10.0.0.14\n passive-interface
lo\n!\nline vty\n!\nend\n# ports.conf\n# resolv.conf\nnameserver 10.255.2.1 #
- vrf mgmt", "hostname": "leaf04", "timestamp": 1639476253949}]'
+ vrf mgmt", "timestamp": 1639476253949}]'
- command: devconfig show --hostname=leaf01 --format=json --namespace=panos
data-directory: tests/data/parquet/
marks: devconfig show panos
- output: '[{"namespace": "panos", "config": "# hostname\nleaf01\n# interfaces\n#
- This file describes the network interfaces available on your system\n# and how
- to activate them. For more information, see interfaces(5).\n\nsource /etc/network/interfaces.d/*.intf\n\n#
+ output: '[{"namespace": "panos", "hostname": "leaf01", "config": "# hostname\nleaf01\n#
+ interfaces\n# This file describes the network interfaces available on your system\n#
+ and how to activate them. For more information, see interfaces(5).\n\nsource /etc/network/interfaces.d/*.intf\n\n#
The loopback network interface\nauto lo\niface lo inet loopback\n\n# The primary
network interface\nauto eth0\niface eth0 inet dhcp\n vrf mgmt\n\nauto mgmt\niface
mgmt\n address 127.0.0.1/8\n address ::1/128\n vrf-table auto\n# BEGIN
@@ -491,26 +491,56 @@ tests:
exit-address-family\n !\n address-family l2vpn evpn\n advertise ipv4 unicast\n
exit-address-family\n!\nrouter ospf\n ospf router-id 10.0.0.11\n passive-interface
lo\n!\nline vty\n!\nend\n# ports.conf\n# resolv.conf\nnameserver 10.255.2.1 #
- vrf mgmt", "hostname": "leaf01", "timestamp": 1639476253949}]'
+ vrf mgmt", "timestamp": 1639476253949}]'
- command: devconfig show --hostname='leaf01 spine01' --format=json --namespace=panos
data-directory: tests/data/parquet/
marks: devconfig show panos
- output: '[{"namespace": "panos", "config": "# hostname\nleaf01\n# interfaces\n#
- This file describes the network interfaces available on your system\n# and how
- to activate them. For more information, see interfaces(5).\n\nsource /etc/network/interfaces.d/*.intf\n\n#
+ output: '[{"namespace": "panos", "hostname": "spine01", "config": "# hostname\nspine01\n#
+ interfaces\n# This file describes the network interfaces available on your system\n#
+ and how to activate them. For more information, see interfaces(5).\n\nsource /etc/network/interfaces.d/*.intf\n\n#
The loopback network interface\nauto lo\niface lo inet loopback\n\n# The primary
network interface\nauto eth0\niface eth0 inet dhcp\n vrf mgmt\n\nauto mgmt\niface
mgmt\n address 127.0.0.1/8\n address ::1/128\n vrf-table auto\n# BEGIN
- lo\nauto lo\niface lo inet loopback\n address 10.0.0.11/32\n vxlan-local-tunnelip
- 10.0.0.11/32\n clagd-vxlan-anycast-ip 10.0.0.112/32\n \n# END lo\n# BEGIN
- swp1\nauto swp1\niface swp1 inet manual\n address 10.0.0.11/32\n mtu 9216\n#
- END swp1\n# BEGIN swp2\nauto swp2\niface swp2 inet manual\n address 10.0.0.11/32\n mtu
- 9216\n# END swp2\n#BEGIN {''cumulus'': ''peerlink'', ''eos'': ''port-channel1'',
- ''nxos'': ''port-channel1''}\nauto swp5\niface swp5\n mtu 9216\n post-up ip
- link set promisc on dev swp5\n#\nauto swp6\niface swp6\n mtu 9216\n post-up
- ip link set promisc on dev swp6\n#\nauto peerlink\niface peerlink\n mtu 9216\n bond-slaves
- swp5 swp6\n#\n#END {''cumulus'': ''peerlink'', ''eos'': ''port-channel1'', ''nxos'':
- ''port-channel1''}\n#BEGIN clag def\nauto peerlink.4094\niface peerlink.4094\n clagd-peer-ip
+ lo\nauto lo\niface lo inet loopback\n address 10.0.0.21/32\n# END lo\n# BEGIN
+ swp1\nauto swp1\niface swp1 inet manual\n address 10.0.0.21/32\n mtu 9216\n#
+ END swp1\n# BEGIN swp2\nauto swp2\niface swp2 inet manual\n address 10.0.0.21/32\n mtu
+ 9216\n# END swp2\n# BEGIN swp3\nauto swp3\niface swp3 inet manual\n address 10.0.0.21/32\n mtu
+ 9216\n# END swp3\n# BEGIN swp4\nauto swp4\niface swp4 inet manual\n address 10.0.0.21/32\n mtu
+ 9216\n# END swp4\n# BEGIN swp5\nauto swp5\niface swp5 inet manual\n address 10.0.0.21/32\n mtu
+ 9216\n# END swp5\n# BEGIN swp6\nauto swp6\niface swp6 inet manual\n address 10.0.0.21/32\n mtu
+ 9216\n# END swp6\nBuilding configuration...\n\nCurrent configuration:\n!\nfrr
+ version 7.0+cl4u3\nfrr defaults datacenter\nhostname spine01\nlog syslog informational\nservice
+ integrated-vtysh-config\n!\ninterface lo\n ip ospf area 0.0.0.0\n!\ninterface
+ swp1\n ip ospf area 0\n ip ospf network point-to-point\n!\ninterface swp2\n ip
+ ospf area 0\n ip ospf network point-to-point\n!\ninterface swp3\n ip ospf area
+ 0\n ip ospf network point-to-point\n!\ninterface swp4\n ip ospf area 0\n ip ospf
+ network point-to-point\n!\ninterface swp5\n ip ospf area 0\n ip ospf network point-to-point\n!\ninterface
+ swp6\n ip ospf area 0\n ip ospf network point-to-point\n!\nrouter bgp 64520\n
+ bgp router-id 10.0.0.21\n no bgp default ipv4-unicast\n neighbor RR peer-group\n
+ neighbor RR remote-as internal\n neighbor RR bfd\n neighbor 10.0.0.11 peer-group
+ RR\n neighbor 10.0.0.12 peer-group RR\n neighbor 10.0.0.13 peer-group RR\n neighbor
+ 10.0.0.14 peer-group RR\n neighbor 10.0.0.31 peer-group RR\n neighbor 10.0.0.32
+ peer-group RR\n !\n address-family ipv4 unicast\n neighbor RR activate\n neighbor
+ RR route-reflector-client\n maximum-paths ibgp 16\n exit-address-family\n !\n
+ address-family l2vpn evpn\n neighbor RR activate\n neighbor RR route-reflector-client\n
+ exit-address-family\n!\nrouter ospf\n ospf router-id 10.0.0.21\n passive-interface
+ lo\n!\nline vty\n!\nend\n# ports.conf\n# resolv.conf\nnameserver 10.255.2.1 #
+ vrf mgmt", "timestamp": 1639476253942}, {"namespace": "panos", "hostname": "leaf01",
+ "config": "# hostname\nleaf01\n# interfaces\n# This file describes the network
+ interfaces available on your system\n# and how to activate them. For more information,
+ see interfaces(5).\n\nsource /etc/network/interfaces.d/*.intf\n\n# The loopback
+ network interface\nauto lo\niface lo inet loopback\n\n# The primary network interface\nauto
+ eth0\niface eth0 inet dhcp\n vrf mgmt\n\nauto mgmt\niface mgmt\n address
+ 127.0.0.1/8\n address ::1/128\n vrf-table auto\n# BEGIN lo\nauto lo\niface
+ lo inet loopback\n address 10.0.0.11/32\n vxlan-local-tunnelip 10.0.0.11/32\n clagd-vxlan-anycast-ip
+ 10.0.0.112/32\n \n# END lo\n# BEGIN swp1\nauto swp1\niface swp1 inet manual\n address
+ 10.0.0.11/32\n mtu 9216\n# END swp1\n# BEGIN swp2\nauto swp2\niface swp2 inet
+ manual\n address 10.0.0.11/32\n mtu 9216\n# END swp2\n#BEGIN {''cumulus'': ''peerlink'',
+ ''eos'': ''port-channel1'', ''nxos'': ''port-channel1''}\nauto swp5\niface swp5\n mtu
+ 9216\n post-up ip link set promisc on dev swp5\n#\nauto swp6\niface swp6\n mtu
+ 9216\n post-up ip link set promisc on dev swp6\n#\nauto peerlink\niface peerlink\n mtu
+ 9216\n bond-slaves swp5 swp6\n#\n#END {''cumulus'': ''peerlink'', ''eos'': ''port-channel1'',
+ ''nxos'': ''port-channel1''}\n#BEGIN clag def\nauto peerlink.4094\niface peerlink.4094\n clagd-peer-ip
linklocal\n clagd-sys-mac 44:39:39:FF:40:95\n clagd-backup-ip false\n clagd-priority
32768\n clagd-args --initDelay 90\n#\n#END clag def\n#BEGIN mlag-member-ports\nauto
swp3\niface swp3\n mtu 9000 \n post-up ip link set promisc on dev swp3\n#\nauto
@@ -554,18 +584,22 @@ tests:
exit-address-family\n !\n address-family l2vpn evpn\n advertise ipv4 unicast\n
exit-address-family\n!\nrouter ospf\n ospf router-id 10.0.0.11\n passive-interface
lo\n!\nline vty\n!\nend\n# ports.conf\n# resolv.conf\nnameserver 10.255.2.1 #
- vrf mgmt", "hostname": "leaf01", "timestamp": 1639476253949}, {"namespace": "panos",
- "config": "# hostname\nspine01\n# interfaces\n# This file describes the network
- interfaces available on your system\n# and how to activate them. For more information,
- see interfaces(5).\n\nsource /etc/network/interfaces.d/*.intf\n\n# The loopback
- network interface\nauto lo\niface lo inet loopback\n\n# The primary network interface\nauto
- eth0\niface eth0 inet dhcp\n vrf mgmt\n\nauto mgmt\niface mgmt\n address
- 127.0.0.1/8\n address ::1/128\n vrf-table auto\n# BEGIN lo\nauto lo\niface
- lo inet loopback\n address 10.0.0.21/32\n# END lo\n# BEGIN swp1\nauto swp1\niface
- swp1 inet manual\n address 10.0.0.21/32\n mtu 9216\n# END swp1\n# BEGIN swp2\nauto
- swp2\niface swp2 inet manual\n address 10.0.0.21/32\n mtu 9216\n# END swp2\n#
- BEGIN swp3\nauto swp3\niface swp3 inet manual\n address 10.0.0.21/32\n mtu 9216\n#
- END swp3\n# BEGIN swp4\nauto swp4\niface swp4 inet manual\n address 10.0.0.21/32\n mtu
+ vrf mgmt", "timestamp": 1639476253949}]'
+- command: devconfig show --hostname='leaf01 spine01' --query-str='config.str.contains("10.0.0.21")'
+ --format=json --namespace=panos
+ data-directory: tests/data/parquet/
+ marks: devconfig show panos
+ output: '[{"namespace": "panos", "hostname": "spine01", "config": "# hostname\nspine01\n#
+ interfaces\n# This file describes the network interfaces available on your system\n#
+ and how to activate them. For more information, see interfaces(5).\n\nsource /etc/network/interfaces.d/*.intf\n\n#
+ The loopback network interface\nauto lo\niface lo inet loopback\n\n# The primary
+ network interface\nauto eth0\niface eth0 inet dhcp\n vrf mgmt\n\nauto mgmt\niface
+ mgmt\n address 127.0.0.1/8\n address ::1/128\n vrf-table auto\n# BEGIN
+ lo\nauto lo\niface lo inet loopback\n address 10.0.0.21/32\n# END lo\n# BEGIN
+ swp1\nauto swp1\niface swp1 inet manual\n address 10.0.0.21/32\n mtu 9216\n#
+ END swp1\n# BEGIN swp2\nauto swp2\niface swp2 inet manual\n address 10.0.0.21/32\n mtu
+ 9216\n# END swp2\n# BEGIN swp3\nauto swp3\niface swp3 inet manual\n address 10.0.0.21/32\n mtu
+ 9216\n# END swp3\n# BEGIN swp4\nauto swp4\niface swp4 inet manual\n address 10.0.0.21/32\n mtu
9216\n# END swp4\n# BEGIN swp5\nauto swp5\niface swp5 inet manual\n address 10.0.0.21/32\n mtu
9216\n# END swp5\n# BEGIN swp6\nauto swp6\niface swp6 inet manual\n address 10.0.0.21/32\n mtu
9216\n# END swp6\nBuilding configuration...\n\nCurrent configuration:\n!\nfrr
@@ -585,27 +619,22 @@ tests:
address-family l2vpn evpn\n neighbor RR activate\n neighbor RR route-reflector-client\n
exit-address-family\n!\nrouter ospf\n ospf router-id 10.0.0.21\n passive-interface
lo\n!\nline vty\n!\nend\n# ports.conf\n# resolv.conf\nnameserver 10.255.2.1 #
- vrf mgmt", "hostname": "spine01", "timestamp": 1639476253942}]'
-- command: devconfig show --hostname='leaf01 spine01' --query-str='config.str.contains("10.0.0.21")'
- --format=json --namespace=panos
- data-directory: tests/data/parquet/
- marks: devconfig show panos
- output: '[{"namespace": "panos", "config": "# hostname\nleaf01\n# interfaces\n#
- This file describes the network interfaces available on your system\n# and how
- to activate them. For more information, see interfaces(5).\n\nsource /etc/network/interfaces.d/*.intf\n\n#
- The loopback network interface\nauto lo\niface lo inet loopback\n\n# The primary
- network interface\nauto eth0\niface eth0 inet dhcp\n vrf mgmt\n\nauto mgmt\niface
- mgmt\n address 127.0.0.1/8\n address ::1/128\n vrf-table auto\n# BEGIN
- lo\nauto lo\niface lo inet loopback\n address 10.0.0.11/32\n vxlan-local-tunnelip
- 10.0.0.11/32\n clagd-vxlan-anycast-ip 10.0.0.112/32\n \n# END lo\n# BEGIN
- swp1\nauto swp1\niface swp1 inet manual\n address 10.0.0.11/32\n mtu 9216\n#
- END swp1\n# BEGIN swp2\nauto swp2\niface swp2 inet manual\n address 10.0.0.11/32\n mtu
- 9216\n# END swp2\n#BEGIN {''cumulus'': ''peerlink'', ''eos'': ''port-channel1'',
- ''nxos'': ''port-channel1''}\nauto swp5\niface swp5\n mtu 9216\n post-up ip
- link set promisc on dev swp5\n#\nauto swp6\niface swp6\n mtu 9216\n post-up
- ip link set promisc on dev swp6\n#\nauto peerlink\niface peerlink\n mtu 9216\n bond-slaves
- swp5 swp6\n#\n#END {''cumulus'': ''peerlink'', ''eos'': ''port-channel1'', ''nxos'':
- ''port-channel1''}\n#BEGIN clag def\nauto peerlink.4094\niface peerlink.4094\n clagd-peer-ip
+ vrf mgmt", "timestamp": 1639476253942}, {"namespace": "panos", "hostname": "leaf01",
+ "config": "# hostname\nleaf01\n# interfaces\n# This file describes the network
+ interfaces available on your system\n# and how to activate them. For more information,
+ see interfaces(5).\n\nsource /etc/network/interfaces.d/*.intf\n\n# The loopback
+ network interface\nauto lo\niface lo inet loopback\n\n# The primary network interface\nauto
+ eth0\niface eth0 inet dhcp\n vrf mgmt\n\nauto mgmt\niface mgmt\n address
+ 127.0.0.1/8\n address ::1/128\n vrf-table auto\n# BEGIN lo\nauto lo\niface
+ lo inet loopback\n address 10.0.0.11/32\n vxlan-local-tunnelip 10.0.0.11/32\n clagd-vxlan-anycast-ip
+ 10.0.0.112/32\n \n# END lo\n# BEGIN swp1\nauto swp1\niface swp1 inet manual\n address
+ 10.0.0.11/32\n mtu 9216\n# END swp1\n# BEGIN swp2\nauto swp2\niface swp2 inet
+ manual\n address 10.0.0.11/32\n mtu 9216\n# END swp2\n#BEGIN {''cumulus'': ''peerlink'',
+ ''eos'': ''port-channel1'', ''nxos'': ''port-channel1''}\nauto swp5\niface swp5\n mtu
+ 9216\n post-up ip link set promisc on dev swp5\n#\nauto swp6\niface swp6\n mtu
+ 9216\n post-up ip link set promisc on dev swp6\n#\nauto peerlink\niface peerlink\n mtu
+ 9216\n bond-slaves swp5 swp6\n#\n#END {''cumulus'': ''peerlink'', ''eos'': ''port-channel1'',
+ ''nxos'': ''port-channel1''}\n#BEGIN clag def\nauto peerlink.4094\niface peerlink.4094\n clagd-peer-ip
linklocal\n clagd-sys-mac 44:39:39:FF:40:95\n clagd-backup-ip false\n clagd-priority
32768\n clagd-args --initDelay 90\n#\n#END clag def\n#BEGIN mlag-member-ports\nauto
swp3\niface swp3\n mtu 9000 \n post-up ip link set promisc on dev swp3\n#\nauto
@@ -649,38 +678,7 @@ tests:
exit-address-family\n !\n address-family l2vpn evpn\n advertise ipv4 unicast\n
exit-address-family\n!\nrouter ospf\n ospf router-id 10.0.0.11\n passive-interface
lo\n!\nline vty\n!\nend\n# ports.conf\n# resolv.conf\nnameserver 10.255.2.1 #
- vrf mgmt", "hostname": "leaf01", "timestamp": 1639476253949}, {"namespace": "panos",
- "config": "# hostname\nspine01\n# interfaces\n# This file describes the network
- interfaces available on your system\n# and how to activate them. For more information,
- see interfaces(5).\n\nsource /etc/network/interfaces.d/*.intf\n\n# The loopback
- network interface\nauto lo\niface lo inet loopback\n\n# The primary network interface\nauto
- eth0\niface eth0 inet dhcp\n vrf mgmt\n\nauto mgmt\niface mgmt\n address
- 127.0.0.1/8\n address ::1/128\n vrf-table auto\n# BEGIN lo\nauto lo\niface
- lo inet loopback\n address 10.0.0.21/32\n# END lo\n# BEGIN swp1\nauto swp1\niface
- swp1 inet manual\n address 10.0.0.21/32\n mtu 9216\n# END swp1\n# BEGIN swp2\nauto
- swp2\niface swp2 inet manual\n address 10.0.0.21/32\n mtu 9216\n# END swp2\n#
- BEGIN swp3\nauto swp3\niface swp3 inet manual\n address 10.0.0.21/32\n mtu 9216\n#
- END swp3\n# BEGIN swp4\nauto swp4\niface swp4 inet manual\n address 10.0.0.21/32\n mtu
- 9216\n# END swp4\n# BEGIN swp5\nauto swp5\niface swp5 inet manual\n address 10.0.0.21/32\n mtu
- 9216\n# END swp5\n# BEGIN swp6\nauto swp6\niface swp6 inet manual\n address 10.0.0.21/32\n mtu
- 9216\n# END swp6\nBuilding configuration...\n\nCurrent configuration:\n!\nfrr
- version 7.0+cl4u3\nfrr defaults datacenter\nhostname spine01\nlog syslog informational\nservice
- integrated-vtysh-config\n!\ninterface lo\n ip ospf area 0.0.0.0\n!\ninterface
- swp1\n ip ospf area 0\n ip ospf network point-to-point\n!\ninterface swp2\n ip
- ospf area 0\n ip ospf network point-to-point\n!\ninterface swp3\n ip ospf area
- 0\n ip ospf network point-to-point\n!\ninterface swp4\n ip ospf area 0\n ip ospf
- network point-to-point\n!\ninterface swp5\n ip ospf area 0\n ip ospf network point-to-point\n!\ninterface
- swp6\n ip ospf area 0\n ip ospf network point-to-point\n!\nrouter bgp 64520\n
- bgp router-id 10.0.0.21\n no bgp default ipv4-unicast\n neighbor RR peer-group\n
- neighbor RR remote-as internal\n neighbor RR bfd\n neighbor 10.0.0.11 peer-group
- RR\n neighbor 10.0.0.12 peer-group RR\n neighbor 10.0.0.13 peer-group RR\n neighbor
- 10.0.0.14 peer-group RR\n neighbor 10.0.0.31 peer-group RR\n neighbor 10.0.0.32
- peer-group RR\n !\n address-family ipv4 unicast\n neighbor RR activate\n neighbor
- RR route-reflector-client\n maximum-paths ibgp 16\n exit-address-family\n !\n
- address-family l2vpn evpn\n neighbor RR activate\n neighbor RR route-reflector-client\n
- exit-address-family\n!\nrouter ospf\n ospf router-id 10.0.0.21\n passive-interface
- lo\n!\nline vty\n!\nend\n# ports.conf\n# resolv.conf\nnameserver 10.255.2.1 #
- vrf mgmt", "hostname": "spine01", "timestamp": 1639476253942}]'
+ vrf mgmt", "timestamp": 1639476253949}]'
- command: devconfig summarize --format=json --namespace=panos
data-directory: tests/data/parquet/
marks: devconfig summarize panos
From be273416a6844ce16561fad4b676804521bccbba Mon Sep 17 00:00:00 2001
From: LucaNicosia
Date: Mon, 27 May 2024 09:53:21 +0200
Subject: [PATCH 09/10] pandas/devconfig: fix typo
Signed-off-by: LucaNicosia
---
suzieq/engines/pandas/devconfig.py | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/suzieq/engines/pandas/devconfig.py b/suzieq/engines/pandas/devconfig.py
index aca45370d5..7866f237ff 100644
--- a/suzieq/engines/pandas/devconfig.py
+++ b/suzieq/engines/pandas/devconfig.py
@@ -27,7 +27,7 @@ def get(self, **kwargs):
devdf = self._get_table_sqobj('device') \
.get(columns=['namespace', 'hostname', 'os'], **kwargs)
- if devdf.empty or 'errror' in devdf.columns:
+ if devdf.empty or 'error' in devdf.columns:
return df
drop_indices: List[int] = []
From 4aa1c8107a19a8da936f66d16633c30c9f8462c6 Mon Sep 17 00:00:00 2001
From: LucaNicosia
Date: Mon, 27 May 2024 09:53:54 +0200
Subject: [PATCH 10/10] pandas/devconfig: apply query_str when section is not
specified
Signed-off-by: LucaNicosia
---
suzieq/engines/pandas/devconfig.py | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/suzieq/engines/pandas/devconfig.py b/suzieq/engines/pandas/devconfig.py
index 7866f237ff..05a2dd1b98 100644
--- a/suzieq/engines/pandas/devconfig.py
+++ b/suzieq/engines/pandas/devconfig.py
@@ -21,7 +21,12 @@ def get(self, **kwargs):
query_str = kwargs.pop('query_str', '')
df = super().get(columns=columns, **kwargs)
- if df.empty or 'error' in df.columns or not section:
+ if df.empty or 'error' in df.columns:
+ return df
+
+ if not section:
+ if query_str:
+ df = df.query(query_str).reset_index(drop=True)
return df
devdf = self._get_table_sqobj('device') \