From 876120cfbaa572e43b9e8206f8300b01d1f16f79 Mon Sep 17 00:00:00 2001 From: Michael Bear <38406045+mjbear@users.noreply.github.com> Date: Thu, 22 Feb 2024 12:06:24 -0500 Subject: [PATCH] Normalize etherchannel, lacp, and portchannel capture groups (#1585) * normalize PO_NAME > BUNDLE_NAME * normalize PORT_CHANNEL > BUNDLE_NAME (arista_eos) * normalize BUNDLE_IFACE > BUNDLE_NAME * normalize AGGREGATED_INTERFACE > BUNDLE_NAME (juniper_junos) * normalize PO_STATUS > BUNDLE_STATUS * normalize PORT_CHANNEL_STATUS > BUNDLE_STATUS (arista_eos) * normalize BUNDLE_PROTO > BUNDLE_PROTOCOL (cisco_nxos) * normalize port/etherchannel PROTOCOL > BUNDLE_PROTOCOL * normalize PROTOCOL_STATE > BUNDLE_PROTOCOL_STATE (arista_eos) * normalize BUNDLE_PROTO_STATE > BUNDLE_PROTOCOL_STATE (cisco_nxos) * normalize port/etherchannel PHYS_IFACE > MEMBER_INTERFACE * normalize port/etherchannel INTERFACES > MEMBER_INTERFACE * normalize port/etherchannel INTERFACES_STATUS > MEMBER_INTERFACE_STATUS * normalize port/etherchannel PHYS_IFACE_STATUS > MEMBER_INTERFACE_STATUS * normalize - nxos - remove parentheses from several capture groups (aligns with ios/asa and arista_eos) -- adjust BUNDLE_STATUS -- adjust BUNDLE_PROTOCOL_STATE -- adjust MEMBER_INTERFACE_STATUS * add capture group names to data model docs --- docs/dev/data_model.md | 54 +- ...ista_eos_show_port-channel_summary.textfsm | 32 +- ...isco_asa_show_port-channel_summary.textfsm | 28 +- ...isco_ios_show_etherchannel_summary.textfsm | 28 +- ...sco_nxos_show_port-channel_summary.textfsm | 52 +- ...juniper_junos_show_lacp_interfaces.textfsm | 6 +- .../arista_eos_show_port-channel_summary.yml | 480 +++++++++--------- .../cisco_asa_show_port-channel_summary.yml | 24 +- .../show_etherchannel_summary.yml | 72 +-- .../show_etherchannel_summary2.yml | 12 +- .../cisco_nxos_show_port-channel_summary.yml | 76 +-- .../cisco_nxos_show_port-channel_summary2.yml | 376 +++++++------- .../cisco_nxos_show_port-channel_summary3.yml | 270 +++++----- .../juniper_junos_show_lacp_interfaces.yml | 30 +- 14 files changed, 773 insertions(+), 767 deletions(-) diff --git a/docs/dev/data_model.md b/docs/dev/data_model.md index e25af3fd37..b760a73d5d 100644 --- a/docs/dev/data_model.md +++ b/docs/dev/data_model.md @@ -18,27 +18,33 @@ Example: Imagine the extra programming logic needed to consume structured data w # Common Capture Groups -| Capture Group | Usage Description | -|--------------------|:------------------| -| `BIA` | use this if the template already has MAC_ADDRESS in use for the active MAC address | -| `DESCRIPTION` | often used for port or interface descriptions | -| `GATEWAY` | gateway address for a subnet | -| `INTERFACE` | full word instead of IFACE, INTF, INTFC, etc | -| `IP_ADDRESS` | for a single IP address, often IPv4 | -| `IP_ADDRESSES` | for lists of IPv4 addresses, but in the case of some templates there may be a mix of IP protocol versions | -| `IP_HELPER` | for lists DHCP IP helper addresses | -| `IP_VERSION` | Internet Protocol (IP) version in the case of multiple versions appearing in output (use where necessary) | -| `IPV6_ADDRESS` | for a single IPv6 address | -| `IPV6_ADDRESSES` | for lists of IPv6 addresses | -| `IPV6_GATEWAY` | for IPv6 gateway address | -| `LOCAL_IP_ADDRESS` | local IP address in the case of First Hop Redundancy Protocols (FHRP) -| `MAC_ADDRESS` | instead of MAC or MACADDR | -| `MGMT_IP_ADDRESS` | instead of MGMT_IP or MGMT_ADDRESS or MANAGEMENT_IP or REMOTE_MANAGEMENT_ADDRESS | -| `NEIGHBOR_ID` | for router IDs remote to the system being parsed | -| `NETMASK` | for IPv4 dotted quad masks | -| `NETWORK` | for network numbers or subnet address (without the mask or prefix/slash notation); in place of ROUTE | -| `PREFIX_LENGTH` | instead of PREFIX or CIDR for the numbers of a slash notation or CIDR mask | -| `PROTOCOL` | instead of PROTO | -| `ROUTER_ID` | for local router IDs (local to the device being parsed) | -| `VLAN_ID` | instead of VLAN or TAG | -| `VLAN_NAME` | VLAN name or description | +| Capture Group | Usage Description | +|---------------------------|:------------------| +| `BIA` | use this if the template already has MAC_ADDRESS in use for the active MAC address | +| `BUNDLE_NAME` | virtual interface name for etherchannel, LACP, LAG, or port-channel interfaces | +| `BUNDLE_PROTOCOL` | virtual interface protocol type (LACP, PAgP) for etherchannel or port-channel interfaces | +| `BUNDLE_PROTOCOL_STATE` | virtual interface protocol state for etherchannel or port-channel interfaces | +| `BUNDLE_STATUS` | virtual interface status for etherchannel, LACP, LAG, or port-channel interfaces | +| `DESCRIPTION` | often used for port or interface descriptions | +| `GATEWAY` | gateway address for a subnet | +| `INTERFACE` | full word instead of IFACE, INTF, INTFC, etc | +| `IP_ADDRESS` | for a single IP address, often IPv4 | +| `IP_ADDRESSES` | for lists of IPv4 addresses, but in the case of some templates there may be a mix of IP protocol versions | +| `IP_HELPER` | for lists DHCP IP helper addresses | +| `IP_VERSION` | Internet Protocol (IP) version in the case of multiple versions appearing in output (use where necessary) | +| `IPV6_ADDRESS` | for a single IPv6 address | +| `IPV6_ADDRESSES` | for lists of IPv6 addresses | +| `IPV6_GATEWAY` | for IPv6 gateway address | +| `LOCAL_IP_ADDRESS` | local IP address in the case of First Hop Redundancy Protocols (FHRP) +| `MAC_ADDRESS` | instead of MAC or MACADDR | +| `MEMBER_INTERFACE` | list of physical member interface names that are bundled to make an etherchannel, LACP, LAG, or port-channel interface | +| `MEMBER_INTERFACE_STATUS` | list of member interface statuses for an etherchannel, LACP, LAG, or port-channel interface | +| `MGMT_IP_ADDRESS` | instead of MGMT_IP or MGMT_ADDRESS or MANAGEMENT_IP or REMOTE_MANAGEMENT_ADDRESS | +| `NEIGHBOR_ID` | for router IDs remote to the system being parsed | +| `NETMASK` | for IPv4 dotted quad masks | +| `NETWORK` | for network numbers or subnet address (without the mask or prefix/slash notation); in place of ROUTE | +| `PREFIX_LENGTH` | instead of PREFIX or CIDR for the numbers of a slash notation or CIDR mask | +| `PROTOCOL` | instead of PROTO | +| `ROUTER_ID` | for local router IDs (local to the device being parsed) | +| `VLAN_ID` | instead of VLAN or TAG | +| `VLAN_NAME` | VLAN name or description | diff --git a/ntc_templates/templates/arista_eos_show_port-channel_summary.textfsm b/ntc_templates/templates/arista_eos_show_port-channel_summary.textfsm index 71f011a60d..4d711a81f9 100644 --- a/ntc_templates/templates/arista_eos_show_port-channel_summary.textfsm +++ b/ntc_templates/templates/arista_eos_show_port-channel_summary.textfsm @@ -1,9 +1,9 @@ -Value PORT_CHANNEL (Po\d+) -Value PORT_CHANNEL_STATUS (\S+) -Value PROTOCOL (\w+) -Value PROTOCOL_STATE (\S+) -Value List PHYS_IFACE (Et\S+) -Value List PHYS_IFACE_STATUS (\S+) +Value BUNDLE_NAME (Po\d+) +Value BUNDLE_STATUS (\S+) +Value BUNDLE_PROTOCOL (\w+) +Value BUNDLE_PROTOCOL_STATE (\S+) +Value List MEMBER_INTERFACE (Et\S+) +Value List MEMBER_INTERFACE_STATUS (\S+) Start @@ -19,14 +19,14 @@ Start PCS ^\s*Po\d+ -> Continue.Record - ^\s*${PORT_CHANNEL}\(${PORT_CHANNEL_STATUS}\)\s+${PROTOCOL}\(${PROTOCOL_STATE}\)\s+${PHYS_IFACE}\(${PHYS_IFACE_STATUS}\)(\s|$$) -> Continue - ^\s*Po\d+.+(Et.+?\(.+?\)\s){1}${PHYS_IFACE}\(${PHYS_IFACE_STATUS}\)(\s|$$) -> Continue - ^\s*Po\d+.+(Et.+?\(.+?\)\s){2}${PHYS_IFACE}\(${PHYS_IFACE_STATUS}\)(\s|$$) -> Continue - ^\s*Po\d+.+(Et.+?\(.+?\)\s){3}${PHYS_IFACE}\(${PHYS_IFACE_STATUS}\)(\s|$$) -> Continue - ^\s*Po\d+.+(Et.+?\(.+?\)\s){4}${PHYS_IFACE}\(${PHYS_IFACE_STATUS}\)(\s|$$) -> Continue - ^\s+${PHYS_IFACE}\(${PHYS_IFACE_STATUS}\)(\s|$$) -> Continue - ^\s+(Et.+?\(.+?\)\s){1}${PHYS_IFACE}\(${PHYS_IFACE_STATUS}\)(\s|$$) -> Continue - ^\s+(Et.+?\(.+?\)\s){2}${PHYS_IFACE}\(${PHYS_IFACE_STATUS}\)(\s|$$) -> Continue - ^\s+(Et.+?\(.+?\)\s){3}${PHYS_IFACE}\(${PHYS_IFACE_STATUS}\)(\s|$$) -> Continue - ^\s+(Et.+?\(.+?\)\s){4}${PHYS_IFACE}\(${PHYS_IFACE_STATUS}\)(\s|$$) -> Continue + ^\s*${BUNDLE_NAME}\(${BUNDLE_STATUS}\)\s+${BUNDLE_PROTOCOL}\(${BUNDLE_PROTOCOL_STATE}\)\s+${MEMBER_INTERFACE}\(${MEMBER_INTERFACE_STATUS}\)(\s|$$) -> Continue + ^\s*Po\d+.+(Et.+?\(.+?\)\s){1}${MEMBER_INTERFACE}\(${MEMBER_INTERFACE_STATUS}\)(\s|$$) -> Continue + ^\s*Po\d+.+(Et.+?\(.+?\)\s){2}${MEMBER_INTERFACE}\(${MEMBER_INTERFACE_STATUS}\)(\s|$$) -> Continue + ^\s*Po\d+.+(Et.+?\(.+?\)\s){3}${MEMBER_INTERFACE}\(${MEMBER_INTERFACE_STATUS}\)(\s|$$) -> Continue + ^\s*Po\d+.+(Et.+?\(.+?\)\s){4}${MEMBER_INTERFACE}\(${MEMBER_INTERFACE_STATUS}\)(\s|$$) -> Continue + ^\s+${MEMBER_INTERFACE}\(${MEMBER_INTERFACE_STATUS}\)(\s|$$) -> Continue + ^\s+(Et.+?\(.+?\)\s){1}${MEMBER_INTERFACE}\(${MEMBER_INTERFACE_STATUS}\)(\s|$$) -> Continue + ^\s+(Et.+?\(.+?\)\s){2}${MEMBER_INTERFACE}\(${MEMBER_INTERFACE_STATUS}\)(\s|$$) -> Continue + ^\s+(Et.+?\(.+?\)\s){3}${MEMBER_INTERFACE}\(${MEMBER_INTERFACE_STATUS}\)(\s|$$) -> Continue + ^\s+(Et.+?\(.+?\)\s){4}${MEMBER_INTERFACE}\(${MEMBER_INTERFACE_STATUS}\)(\s|$$) -> Continue diff --git a/ntc_templates/templates/cisco_asa_show_port-channel_summary.textfsm b/ntc_templates/templates/cisco_asa_show_port-channel_summary.textfsm index 0bcbc82384..3826029d5d 100644 --- a/ntc_templates/templates/cisco_asa_show_port-channel_summary.textfsm +++ b/ntc_templates/templates/cisco_asa_show_port-channel_summary.textfsm @@ -1,9 +1,9 @@ Value Required GROUP (\d+) -Value PO_NAME (\S+) -Value PO_STATUS (\D+) -Value PROTOCOL (\S+) -Value List INTERFACES ([\w\.\/]+) -Value List INTERFACES_STATUS (\D+) +Value BUNDLE_NAME (\S+) +Value BUNDLE_STATUS (\D+) +Value BUNDLE_PROTOCOL (\S+) +Value List MEMBER_INTERFACE ([\w\.\/]+) +Value List MEMBER_INTERFACE_STATUS (\D+) Start ^Group\s+Port-channel\s+Protocol\s+Span-cluster\s+Ports -> PortChannel @@ -11,15 +11,15 @@ Start PortChannel ^\d+ -> Continue.Record - ^${GROUP}\s+${PO_NAME}\(${PO_STATUS}\)\s+${PROTOCOL}\s* -> Continue - ^.+(-|LACP|PAgP)\s+${INTERFACES}\(${INTERFACES_STATUS}\) -> Continue - ^.+(-|LACP|PAgP)\s+[\w\.\/\(\)]+\s+${INTERFACES}\(${INTERFACES_STATUS}\) -> Continue - ^.+(-|LACP|PAgP)\s+[\w\.\/\(\)]+\s+[\w\.\/\(\)]+\s+${INTERFACES}\(${INTERFACES_STATUS}\) -> Continue - ^.+(-|LACP|PAgP)\s+[\w\.\/\(\)]+\s+[\w\.\/\(\)]+\s+[\w\.\/\(\)]+\s+${INTERFACES}\(${INTERFACES_STATUS}\) -> Continue - ^\s+${INTERFACES}\(${INTERFACES_STATUS}\) -> Continue - ^\s+[\w\.\/\(\)]+\s+${INTERFACES}\(${INTERFACES_STATUS}\) -> Continue - ^\s+[\w\.\/\(\)]+\s+[\w\.\/\(\)]+\s+${INTERFACES}\(${INTERFACES_STATUS}\) -> Continue - ^\s+[\w\.\/\(\)]+\s+[\w\.\/\(\)]+\s+[\w\.\/\(\)]+\s+${INTERFACES}\(${INTERFACES_STATUS}\) -> Continue + ^${GROUP}\s+${BUNDLE_NAME}\(${BUNDLE_STATUS}\)\s+${BUNDLE_PROTOCOL}\s* -> Continue + ^.+(-|LACP|PAgP)\s+${MEMBER_INTERFACE}\(${MEMBER_INTERFACE_STATUS}\) -> Continue + ^.+(-|LACP|PAgP)\s+[\w\.\/\(\)]+\s+${MEMBER_INTERFACE}\(${MEMBER_INTERFACE_STATUS}\) -> Continue + ^.+(-|LACP|PAgP)\s+[\w\.\/\(\)]+\s+[\w\.\/\(\)]+\s+${MEMBER_INTERFACE}\(${MEMBER_INTERFACE_STATUS}\) -> Continue + ^.+(-|LACP|PAgP)\s+[\w\.\/\(\)]+\s+[\w\.\/\(\)]+\s+[\w\.\/\(\)]+\s+${MEMBER_INTERFACE}\(${MEMBER_INTERFACE_STATUS}\) -> Continue + ^\s+${MEMBER_INTERFACE}\(${MEMBER_INTERFACE_STATUS}\) -> Continue + ^\s+[\w\.\/\(\)]+\s+${MEMBER_INTERFACE}\(${MEMBER_INTERFACE_STATUS}\) -> Continue + ^\s+[\w\.\/\(\)]+\s+[\w\.\/\(\)]+\s+${MEMBER_INTERFACE}\(${MEMBER_INTERFACE_STATUS}\) -> Continue + ^\s+[\w\.\/\(\)]+\s+[\w\.\/\(\)]+\s+[\w\.\/\(\)]+\s+${MEMBER_INTERFACE}\(${MEMBER_INTERFACE_STATUS}\) -> Continue ^\d+ ^\s+ ^-+\++ diff --git a/ntc_templates/templates/cisco_ios_show_etherchannel_summary.textfsm b/ntc_templates/templates/cisco_ios_show_etherchannel_summary.textfsm index f4821b12aa..7863716e2c 100644 --- a/ntc_templates/templates/cisco_ios_show_etherchannel_summary.textfsm +++ b/ntc_templates/templates/cisco_ios_show_etherchannel_summary.textfsm @@ -1,9 +1,9 @@ Value Required GROUP (\d+) -Value PO_NAME (\S+) -Value PO_STATUS (\D+) -Value PROTOCOL (\S+) -Value List INTERFACES ([\w\.\/]+) -Value List INTERFACES_STATUS (\D+) +Value BUNDLE_NAME (\S+) +Value BUNDLE_STATUS (\D+) +Value BUNDLE_PROTOCOL (\S+) +Value List MEMBER_INTERFACE ([\w\.\/]+) +Value List MEMBER_INTERFACE_STATUS (\D+) Start ^Group\s+Port-channel\s+Protocol -> PortChannel @@ -13,15 +13,15 @@ Start PortChannel ^\d+ -> Continue.Record - ^${GROUP}\s+${PO_NAME}\(${PO_STATUS}\)\s+${PROTOCOL}\s* -> Continue - ^.+(-|LACP|PAgP)\s+${INTERFACES}\(${INTERFACES_STATUS}\) -> Continue - ^.+(-|LACP|PAgP)\s+[\w\.\/\(\)]+\s+${INTERFACES}\(${INTERFACES_STATUS}\) -> Continue - ^.+(-|LACP|PAgP)\s+[\w\.\/\(\)]+\s+[\w\.\/\(\)]+\s+${INTERFACES}\(${INTERFACES_STATUS}\) -> Continue - ^.+(-|LACP|PAgP)\s+[\w\.\/\(\)]+\s+[\w\.\/\(\)]+\s+[\w\.\/\(\)]+\s+${INTERFACES}\(${INTERFACES_STATUS}\) -> Continue - ^\s+${INTERFACES}\(${INTERFACES_STATUS}\) -> Continue - ^\s+[\w\.\/\(\)]+\s+${INTERFACES}\(${INTERFACES_STATUS}\) -> Continue - ^\s+[\w\.\/\(\)]+\s+[\w\.\/\(\)]+\s+${INTERFACES}\(${INTERFACES_STATUS}\) -> Continue - ^\s+[\w\.\/\(\)]+\s+[\w\.\/\(\)]+\s+[\w\.\/\(\)]+\s+${INTERFACES}\(${INTERFACES_STATUS}\) -> Continue + ^${GROUP}\s+${BUNDLE_NAME}\(${BUNDLE_STATUS}\)\s+${BUNDLE_PROTOCOL}\s* -> Continue + ^.+(-|LACP|PAgP)\s+${MEMBER_INTERFACE}\(${MEMBER_INTERFACE_STATUS}\) -> Continue + ^.+(-|LACP|PAgP)\s+[\w\.\/\(\)]+\s+${MEMBER_INTERFACE}\(${MEMBER_INTERFACE_STATUS}\) -> Continue + ^.+(-|LACP|PAgP)\s+[\w\.\/\(\)]+\s+[\w\.\/\(\)]+\s+${MEMBER_INTERFACE}\(${MEMBER_INTERFACE_STATUS}\) -> Continue + ^.+(-|LACP|PAgP)\s+[\w\.\/\(\)]+\s+[\w\.\/\(\)]+\s+[\w\.\/\(\)]+\s+${MEMBER_INTERFACE}\(${MEMBER_INTERFACE_STATUS}\) -> Continue + ^\s+${MEMBER_INTERFACE}\(${MEMBER_INTERFACE_STATUS}\) -> Continue + ^\s+[\w\.\/\(\)]+\s+${MEMBER_INTERFACE}\(${MEMBER_INTERFACE_STATUS}\) -> Continue + ^\s+[\w\.\/\(\)]+\s+[\w\.\/\(\)]+\s+${MEMBER_INTERFACE}\(${MEMBER_INTERFACE_STATUS}\) -> Continue + ^\s+[\w\.\/\(\)]+\s+[\w\.\/\(\)]+\s+[\w\.\/\(\)]+\s+${MEMBER_INTERFACE}\(${MEMBER_INTERFACE_STATUS}\) -> Continue ^\d+ ^\s+ ^-+\++ diff --git a/ntc_templates/templates/cisco_nxos_show_port-channel_summary.textfsm b/ntc_templates/templates/cisco_nxos_show_port-channel_summary.textfsm index 869f4ec67b..94c4e4feb6 100644 --- a/ntc_templates/templates/cisco_nxos_show_port-channel_summary.textfsm +++ b/ntc_templates/templates/cisco_nxos_show_port-channel_summary.textfsm @@ -1,9 +1,9 @@ -Value Required,Filldown BUNDLE_IFACE (Po\d+) -Value Filldown BUNDLE_STATUS (\(\w+\)) -Value Filldown BUNDLE_PROTO (\w+) -Value Filldown BUNDLE_PROTO_STATE (\(\w+\)) -Value List PHYS_IFACE ([\w\/]+|\-\-) -Value List PHYS_IFACE_STATUS (\(.+?\)) +Value Required,Filldown BUNDLE_NAME (Po\d+) +Value Filldown BUNDLE_STATUS (\w+) +Value Filldown BUNDLE_PROTOCOL (\w+) +Value Filldown BUNDLE_PROTOCOL_STATE (\w+) +Value List MEMBER_INTERFACE ([\w\/]+|\-\-) +Value List MEMBER_INTERFACE_STATUS (.+?) Start @@ -16,17 +16,17 @@ CASE1 CASE1_RTE ^Po -> Continue.Record - ^${BUNDLE_IFACE}${BUNDLE_STATUS}\s+${BUNDLE_PROTO}${BUNDLE_PROTO_STATE}\s+${PHYS_IFACE}${PHYS_IFACE_STATUS}(\s|$$) -> Continue - ^Po\d+\(\w+\)\s+\w+\(\w+\)\s+Et.+?\(.+?\)\s+${PHYS_IFACE}${PHYS_IFACE_STATUS}(\s|$$) -> Continue - ^Po\d+\(\w+\)\s+\w+\(\w+\)\s+Et.+?\(.+?\)\s+Et.+?\(.+?\)\s+${PHYS_IFACE}${PHYS_IFACE_STATUS}(\s|$$) -> Continue - ^Po\d+\(\w+\)\s+\w+\(\w+\)\s+Et.+?\(.+?\)\s+Et.+?\(.+?\)\s+Et.+?\(.+?\)\s+${PHYS_IFACE}${PHYS_IFACE_STATUS}(\s|$$) -> Continue - ^Po\d+\(\w+\)\s+\w+\(\w+\)\s+Et.+?\(.+?\)\s+Et.+?\(.+?\)\s+Et.+?\(.+?\)\s+Et.+?\(.+?\)\s+${PHYS_IFACE}${PHYS_IFACE_STATUS}(\s|$$) -> Continue - ^Po\d+\(\w+\)\s+\w+\(\w+\)\s+Et.+?\(.+?\)\s+Et.+?\(.+?\)\s+Et.+?\(.+?\)\s+Et.+?\(.+?\)\s+Et.+?\(.+?\)\s+${PHYS_IFACE}${PHYS_IFACE_STATUS}(\s|$$) -> Continue - ^\s{24}${PHYS_IFACE}${PHYS_IFACE_STATUS}(\s|$$) -> Continue - ^\s{24}Et.+?\s+${PHYS_IFACE}${PHYS_IFACE_STATUS}(\s|$$) -> Continue - ^\s{24}Et.+?\s+Et.+?\s+${PHYS_IFACE}${PHYS_IFACE_STATUS}(\s|$$) -> Continue - ^\s{24}Et.+?\s+Et.+?\s+Et.+?\s+${PHYS_IFACE}${PHYS_IFACE_STATUS}(\s|$$) -> Continue - ^\s{24}Et.+?\s+Et.+?\s+Et.+?\s+Et.+?\s+${PHYS_IFACE}${PHYS_IFACE_STATUS}(\s|$$) -> Continue + ^${BUNDLE_NAME}\(${BUNDLE_STATUS}\)\s+${BUNDLE_PROTOCOL}\(${BUNDLE_PROTOCOL_STATE}\)\s+${MEMBER_INTERFACE}\(${MEMBER_INTERFACE_STATUS}\)(\s|$$) -> Continue + ^Po\d+\(\w+\)\s+\w+\(\w+\)\s+Et.+?\(.+?\)\s+${MEMBER_INTERFACE}\(${MEMBER_INTERFACE_STATUS}\)(\s|$$) -> Continue + ^Po\d+\(\w+\)\s+\w+\(\w+\)\s+Et.+?\(.+?\)\s+Et.+?\(.+?\)\s+${MEMBER_INTERFACE}\(${MEMBER_INTERFACE_STATUS}\)(\s|$$) -> Continue + ^Po\d+\(\w+\)\s+\w+\(\w+\)\s+Et.+?\(.+?\)\s+Et.+?\(.+?\)\s+Et.+?\(.+?\)\s+${MEMBER_INTERFACE}\(${MEMBER_INTERFACE_STATUS}\)(\s|$$) -> Continue + ^Po\d+\(\w+\)\s+\w+\(\w+\)\s+Et.+?\(.+?\)\s+Et.+?\(.+?\)\s+Et.+?\(.+?\)\s+Et.+?\(.+?\)\s+${MEMBER_INTERFACE}\(${MEMBER_INTERFACE_STATUS}\)(\s|$$) -> Continue + ^Po\d+\(\w+\)\s+\w+\(\w+\)\s+Et.+?\(.+?\)\s+Et.+?\(.+?\)\s+Et.+?\(.+?\)\s+Et.+?\(.+?\)\s+Et.+?\(.+?\)\s+${MEMBER_INTERFACE}\(${MEMBER_INTERFACE_STATUS}\)(\s|$$) -> Continue + ^\s{24}${MEMBER_INTERFACE}\(${MEMBER_INTERFACE_STATUS}\)(\s|$$) -> Continue + ^\s{24}Et.+?\s+${MEMBER_INTERFACE}\(${MEMBER_INTERFACE_STATUS}\)(\s|$$) -> Continue + ^\s{24}Et.+?\s+Et.+?\s+${MEMBER_INTERFACE}\(${MEMBER_INTERFACE_STATUS}\)(\s|$$) -> Continue + ^\s{24}Et.+?\s+Et.+?\s+Et.+?\s+${MEMBER_INTERFACE}\(${MEMBER_INTERFACE_STATUS}\)(\s|$$) -> Continue + ^\s{24}Et.+?\s+Et.+?\s+Et.+?\s+Et.+?\s+${MEMBER_INTERFACE}\(${MEMBER_INTERFACE_STATUS}\)(\s|$$) -> Continue CASE2 @@ -35,12 +35,12 @@ CASE2 CASE2_RTE ^------------ -> Next ^\d+ -> Continue.Record - ^\d+\s+${BUNDLE_IFACE}${BUNDLE_STATUS}\s+\w+\s+${BUNDLE_PROTO}\s+${PHYS_IFACE}${PHYS_IFACE_STATUS}(\s|$$) -> Continue - ^\d+\s+Po\d+\(\w+\)\s+\w+\s+\w+\s+Et.+?\s+${PHYS_IFACE}${PHYS_IFACE_STATUS}(\s|$$) -> Continue - ^\d+\s+Po\d+\(\w+\)\s+\w+\s+\w+\s+Et.+?\s+Et.+?\s+${PHYS_IFACE}${PHYS_IFACE_STATUS}(\s|$$) -> Continue - ^\d+\s+Po\d+\(\w+\)\s+\w+\s+\w+\s+Et.+?\s+Et.+?\s+Et.+?\s+${PHYS_IFACE}${PHYS_IFACE_STATUS}(\s|$$) -> Continue - ^\s{37}${PHYS_IFACE}${PHYS_IFACE_STATUS}(\s|$$) -> Continue - ^\s{37}Et.+?\s+${PHYS_IFACE}${PHYS_IFACE_STATUS}(\s|$$) -> Continue - ^\s{37}Et.+?\s+Et.+?\s+${PHYS_IFACE}${PHYS_IFACE_STATUS}(\s|$$) -> Continue - ^\s{37}Et.+?\s+Et.+?\s+Et.+?\s+${PHYS_IFACE}${PHYS_IFACE_STATUS}(\s|$$) -> Continue - ^\d+\s+${BUNDLE_IFACE}${BUNDLE_STATUS}\s+\w+\s+${BUNDLE_PROTO}\s+${PHYS_IFACE}($$) -> Next + ^\d+\s+${BUNDLE_NAME}\(${BUNDLE_STATUS}\)\s+\w+\s+${BUNDLE_PROTOCOL}\s+${MEMBER_INTERFACE}\(${MEMBER_INTERFACE_STATUS}\)(\s|$$) -> Continue + ^\d+\s+Po\d+\(\w+\)\s+\w+\s+\w+\s+Et.+?\s+${MEMBER_INTERFACE}\(${MEMBER_INTERFACE_STATUS}\)(\s|$$) -> Continue + ^\d+\s+Po\d+\(\w+\)\s+\w+\s+\w+\s+Et.+?\s+Et.+?\s+${MEMBER_INTERFACE}\(${MEMBER_INTERFACE_STATUS}\)(\s|$$) -> Continue + ^\d+\s+Po\d+\(\w+\)\s+\w+\s+\w+\s+Et.+?\s+Et.+?\s+Et.+?\s+${MEMBER_INTERFACE}\(${MEMBER_INTERFACE_STATUS}\)(\s|$$) -> Continue + ^\s{37}${MEMBER_INTERFACE}\(${MEMBER_INTERFACE_STATUS}\)(\s|$$) -> Continue + ^\s{37}Et.+?\s+${MEMBER_INTERFACE}\(${MEMBER_INTERFACE_STATUS}\)(\s|$$) -> Continue + ^\s{37}Et.+?\s+Et.+?\s+${MEMBER_INTERFACE}\(${MEMBER_INTERFACE_STATUS}\)(\s|$$) -> Continue + ^\s{37}Et.+?\s+Et.+?\s+Et.+?\s+${MEMBER_INTERFACE}\(${MEMBER_INTERFACE_STATUS}\)(\s|$$) -> Continue + ^\d+\s+${BUNDLE_NAME}\(${BUNDLE_STATUS}\)\s+\w+\s+${BUNDLE_PROTOCOL}\s+${MEMBER_INTERFACE}($$) -> Next diff --git a/ntc_templates/templates/juniper_junos_show_lacp_interfaces.textfsm b/ntc_templates/templates/juniper_junos_show_lacp_interfaces.textfsm index 51051f854c..024af725a3 100644 --- a/ntc_templates/templates/juniper_junos_show_lacp_interfaces.textfsm +++ b/ntc_templates/templates/juniper_junos_show_lacp_interfaces.textfsm @@ -1,4 +1,4 @@ -Value Required AGGREGATED_INTERFACE (\S+) +Value Required BUNDLE_NAME (\S+) Value List MEMBER_INTERFACE (\S+) Value List RECEIVE_STATE (\S+\s?\w+) Value List TRANSMIT_STATE (\S+\s?periodic) @@ -6,7 +6,7 @@ Value List MUX_STATE (\S+\s?\S*) Start ^Aggregated -> Continue.Record - ^Aggregated\sinterface:\s${AGGREGATED_INTERFACE}(\s|$$) + ^Aggregated\sinterface:\s${BUNDLE_NAME}(\s|$$) ^\s+LACP\s+state: ^\s+LACP\sprotocol: -> LACP_PROTO ^\s+\S+ @@ -18,6 +18,6 @@ LACP_PROTO ^\s+${MEMBER_INTERFACE}\s+${RECEIVE_STATE}\s+${TRANSMIT_STATE}\s+${MUX_STATE}(\s|$$) ^\s*$$ ^Aggregated -> Continue.Record - ^Aggregated\sinterface:\s${AGGREGATED_INTERFACE}(\s|$$) -> Start + ^Aggregated\sinterface:\s${BUNDLE_NAME}(\s|$$) -> Start ^{master:\d+} ^. -> Error diff --git a/tests/arista_eos/show_port-channel_summary/arista_eos_show_port-channel_summary.yml b/tests/arista_eos/show_port-channel_summary/arista_eos_show_port-channel_summary.yml index d70a8de216..1454c35898 100644 --- a/tests/arista_eos/show_port-channel_summary/arista_eos_show_port-channel_summary.yml +++ b/tests/arista_eos/show_port-channel_summary/arista_eos_show_port-channel_summary.yml @@ -1,330 +1,330 @@ --- parsed_sample: - - port_channel: "Po105" - port_channel_status: "D" - protocol: "LACP" - protocol_state: "aF*" - phys_iface: + - bundle_name: "Po105" + bundle_protocol: "LACP" + bundle_protocol_state: "aF*" + bundle_status: "D" + member_interface: - "Et5" - phys_iface_status: + member_interface_status: - "D" - - port_channel: "Po106" - port_channel_status: "D" - protocol: "LACP" - protocol_state: "aF*" - phys_iface: + - bundle_name: "Po106" + bundle_protocol: "LACP" + bundle_protocol_state: "aF*" + bundle_status: "D" + member_interface: - "Et6" - phys_iface_status: + member_interface_status: - "D" - - port_channel: "Po107" - port_channel_status: "D" - protocol: "LACP" - protocol_state: "aF*" - phys_iface: + - bundle_name: "Po107" + bundle_protocol: "LACP" + bundle_protocol_state: "aF*" + bundle_status: "D" + member_interface: - "Et7" - phys_iface_status: + member_interface_status: - "D" - - port_channel: "Po108" - port_channel_status: "D" - protocol: "LACP" - protocol_state: "aF*" - phys_iface: + - bundle_name: "Po108" + bundle_protocol: "LACP" + bundle_protocol_state: "aF*" + bundle_status: "D" + member_interface: - "Et8" - phys_iface_status: + member_interface_status: - "D" - - port_channel: "Po109" - port_channel_status: "D" - protocol: "LACP" - protocol_state: "aF*" - phys_iface: + - bundle_name: "Po109" + bundle_protocol: "LACP" + bundle_protocol_state: "aF*" + bundle_status: "D" + member_interface: - "Et9" - phys_iface_status: + member_interface_status: - "D" - - port_channel: "Po110" - port_channel_status: "D" - protocol: "LACP" - protocol_state: "aF*" - phys_iface: + - bundle_name: "Po110" + bundle_protocol: "LACP" + bundle_protocol_state: "aF*" + bundle_status: "D" + member_interface: - "Et10" - phys_iface_status: + member_interface_status: - "D" - - port_channel: "Po111" - port_channel_status: "D" - protocol: "LACP" - protocol_state: "aF*" - phys_iface: + - bundle_name: "Po111" + bundle_protocol: "LACP" + bundle_protocol_state: "aF*" + bundle_status: "D" + member_interface: - "Et11" - phys_iface_status: + member_interface_status: - "D" - - port_channel: "Po112" - port_channel_status: "D" - protocol: "LACP" - protocol_state: "aF*" - phys_iface: + - bundle_name: "Po112" + bundle_protocol: "LACP" + bundle_protocol_state: "aF*" + bundle_status: "D" + member_interface: - "Et12" - phys_iface_status: + member_interface_status: - "D" - - port_channel: "Po113" - port_channel_status: "D" - protocol: "LACP" - protocol_state: "aF*" - phys_iface: + - bundle_name: "Po113" + bundle_protocol: "LACP" + bundle_protocol_state: "aF*" + bundle_status: "D" + member_interface: - "Et13" - phys_iface_status: + member_interface_status: - "D" - - port_channel: "Po114" - port_channel_status: "D" - protocol: "LACP" - protocol_state: "aF*" - phys_iface: + - bundle_name: "Po114" + bundle_protocol: "LACP" + bundle_protocol_state: "aF*" + bundle_status: "D" + member_interface: - "Et14" - phys_iface_status: + member_interface_status: - "D" - - port_channel: "Po115" - port_channel_status: "D" - protocol: "LACP" - protocol_state: "aF*" - phys_iface: + - bundle_name: "Po115" + bundle_protocol: "LACP" + bundle_protocol_state: "aF*" + bundle_status: "D" + member_interface: - "Et15" - phys_iface_status: + member_interface_status: - "D" - - port_channel: "Po116" - port_channel_status: "D" - protocol: "LACP" - protocol_state: "aF*" - phys_iface: + - bundle_name: "Po116" + bundle_protocol: "LACP" + bundle_protocol_state: "aF*" + bundle_status: "D" + member_interface: - "Et16" - phys_iface_status: + member_interface_status: - "D" - - port_channel: "Po117" - port_channel_status: "D" - protocol: "LACP" - protocol_state: "aF*" - phys_iface: + - bundle_name: "Po117" + bundle_protocol: "LACP" + bundle_protocol_state: "aF*" + bundle_status: "D" + member_interface: - "Et17" - phys_iface_status: + member_interface_status: - "D" - - port_channel: "Po118" - port_channel_status: "D" - protocol: "LACP" - protocol_state: "aF*" - phys_iface: + - bundle_name: "Po118" + bundle_protocol: "LACP" + bundle_protocol_state: "aF*" + bundle_status: "D" + member_interface: - "Et18" - phys_iface_status: + member_interface_status: - "D" - - port_channel: "Po119" - port_channel_status: "D" - protocol: "LACP" - protocol_state: "aF*" - phys_iface: + - bundle_name: "Po119" + bundle_protocol: "LACP" + bundle_protocol_state: "aF*" + bundle_status: "D" + member_interface: - "Et19" - phys_iface_status: + member_interface_status: - "D" - - port_channel: "Po120" - port_channel_status: "D" - protocol: "LACP" - protocol_state: "aF*" - phys_iface: + - bundle_name: "Po120" + bundle_protocol: "LACP" + bundle_protocol_state: "aF*" + bundle_status: "D" + member_interface: - "Et20" - phys_iface_status: + member_interface_status: - "D" - - port_channel: "Po121" - port_channel_status: "D" - protocol: "LACP" - protocol_state: "aF*" - phys_iface: + - bundle_name: "Po121" + bundle_protocol: "LACP" + bundle_protocol_state: "aF*" + bundle_status: "D" + member_interface: - "Et21" - phys_iface_status: + member_interface_status: - "D" - - port_channel: "Po122" - port_channel_status: "D" - protocol: "LACP" - protocol_state: "aF*" - phys_iface: + - bundle_name: "Po122" + bundle_protocol: "LACP" + bundle_protocol_state: "aF*" + bundle_status: "D" + member_interface: - "Et22" - phys_iface_status: + member_interface_status: - "D" - - port_channel: "Po123" - port_channel_status: "D" - protocol: "LACP" - protocol_state: "aF*" - phys_iface: + - bundle_name: "Po123" + bundle_protocol: "LACP" + bundle_protocol_state: "aF*" + bundle_status: "D" + member_interface: - "Et23" - phys_iface_status: + member_interface_status: - "D" - - port_channel: "Po124" - port_channel_status: "D" - protocol: "LACP" - protocol_state: "aF*" - phys_iface: + - bundle_name: "Po124" + bundle_protocol: "LACP" + bundle_protocol_state: "aF*" + bundle_status: "D" + member_interface: - "Et24" - phys_iface_status: + member_interface_status: - "D" - - port_channel: "Po125" - port_channel_status: "D" - protocol: "LACP" - protocol_state: "aF*" - phys_iface: + - bundle_name: "Po125" + bundle_protocol: "LACP" + bundle_protocol_state: "aF*" + bundle_status: "D" + member_interface: - "Et25" - phys_iface_status: + member_interface_status: - "D" - - port_channel: "Po126" - port_channel_status: "D" - protocol: "LACP" - protocol_state: "aF*" - phys_iface: + - bundle_name: "Po126" + bundle_protocol: "LACP" + bundle_protocol_state: "aF*" + bundle_status: "D" + member_interface: - "Et26" - phys_iface_status: + member_interface_status: - "D" - - port_channel: "Po127" - port_channel_status: "D" - protocol: "LACP" - protocol_state: "aF*" - phys_iface: + - bundle_name: "Po127" + bundle_protocol: "LACP" + bundle_protocol_state: "aF*" + bundle_status: "D" + member_interface: - "Et27" - phys_iface_status: + member_interface_status: - "D" - - port_channel: "Po128" - port_channel_status: "D" - protocol: "LACP" - protocol_state: "aF*" - phys_iface: + - bundle_name: "Po128" + bundle_protocol: "LACP" + bundle_protocol_state: "aF*" + bundle_status: "D" + member_interface: - "Et28" - phys_iface_status: + member_interface_status: - "D" - - port_channel: "Po129" - port_channel_status: "D" - protocol: "LACP" - protocol_state: "aF*" - phys_iface: + - bundle_name: "Po129" + bundle_protocol: "LACP" + bundle_protocol_state: "aF*" + bundle_status: "D" + member_interface: - "Et29" - phys_iface_status: + member_interface_status: - "D" - - port_channel: "Po130" - port_channel_status: "D" - protocol: "LACP" - protocol_state: "aF*" - phys_iface: + - bundle_name: "Po130" + bundle_protocol: "LACP" + bundle_protocol_state: "aF*" + bundle_status: "D" + member_interface: - "Et30" - phys_iface_status: + member_interface_status: - "D" - - port_channel: "Po131" - port_channel_status: "D" - protocol: "LACP" - protocol_state: "aF*" - phys_iface: + - bundle_name: "Po131" + bundle_protocol: "LACP" + bundle_protocol_state: "aF*" + bundle_status: "D" + member_interface: - "Et31" - phys_iface_status: + member_interface_status: - "D" - - port_channel: "Po132" - port_channel_status: "D" - protocol: "LACP" - protocol_state: "aF*" - phys_iface: + - bundle_name: "Po132" + bundle_protocol: "LACP" + bundle_protocol_state: "aF*" + bundle_status: "D" + member_interface: - "Et32" - phys_iface_status: + member_interface_status: - "D" - - port_channel: "Po133" - port_channel_status: "D" - protocol: "LACP" - protocol_state: "aF*" - phys_iface: + - bundle_name: "Po133" + bundle_protocol: "LACP" + bundle_protocol_state: "aF*" + bundle_status: "D" + member_interface: - "Et33" - phys_iface_status: + member_interface_status: - "D" - - port_channel: "Po134" - port_channel_status: "D" - protocol: "LACP" - protocol_state: "aF*" - phys_iface: + - bundle_name: "Po134" + bundle_protocol: "LACP" + bundle_protocol_state: "aF*" + bundle_status: "D" + member_interface: - "Et34" - phys_iface_status: + member_interface_status: - "D" - - port_channel: "Po135" - port_channel_status: "D" - protocol: "LACP" - protocol_state: "aF*" - phys_iface: + - bundle_name: "Po135" + bundle_protocol: "LACP" + bundle_protocol_state: "aF*" + bundle_status: "D" + member_interface: - "Et35" - phys_iface_status: + member_interface_status: - "D" - - port_channel: "Po136" - port_channel_status: "D" - protocol: "LACP" - protocol_state: "aF*" - phys_iface: + - bundle_name: "Po136" + bundle_protocol: "LACP" + bundle_protocol_state: "aF*" + bundle_status: "D" + member_interface: - "Et36" - phys_iface_status: + member_interface_status: - "D" - - port_channel: "Po137" - port_channel_status: "D" - protocol: "LACP" - protocol_state: "aF*" - phys_iface: + - bundle_name: "Po137" + bundle_protocol: "LACP" + bundle_protocol_state: "aF*" + bundle_status: "D" + member_interface: - "Et37" - phys_iface_status: + member_interface_status: - "D" - - port_channel: "Po138" - port_channel_status: "D" - protocol: "LACP" - protocol_state: "aF*" - phys_iface: + - bundle_name: "Po138" + bundle_protocol: "LACP" + bundle_protocol_state: "aF*" + bundle_status: "D" + member_interface: - "Et38" - phys_iface_status: + member_interface_status: - "D" - - port_channel: "Po139" - port_channel_status: "D" - protocol: "LACP" - protocol_state: "aF*" - phys_iface: + - bundle_name: "Po139" + bundle_protocol: "LACP" + bundle_protocol_state: "aF*" + bundle_status: "D" + member_interface: - "Et39" - phys_iface_status: + member_interface_status: - "D" - - port_channel: "Po140" - port_channel_status: "D" - protocol: "LACP" - protocol_state: "aF*" - phys_iface: + - bundle_name: "Po140" + bundle_protocol: "LACP" + bundle_protocol_state: "aF*" + bundle_status: "D" + member_interface: - "Et40" - phys_iface_status: + member_interface_status: - "D" - - port_channel: "Po141" - port_channel_status: "D" - protocol: "LACP" - protocol_state: "aF*" - phys_iface: + - bundle_name: "Po141" + bundle_protocol: "LACP" + bundle_protocol_state: "aF*" + bundle_status: "D" + member_interface: - "Et41" - phys_iface_status: + member_interface_status: - "D" - - port_channel: "Po142" - port_channel_status: "D" - protocol: "LACP" - protocol_state: "aF*" - phys_iface: + - bundle_name: "Po142" + bundle_protocol: "LACP" + bundle_protocol_state: "aF*" + bundle_status: "D" + member_interface: - "Et42" - phys_iface_status: + member_interface_status: - "D" - - port_channel: "Po146" - port_channel_status: "D" - protocol: "LACP" - protocol_state: "aF*" - phys_iface: + - bundle_name: "Po146" + bundle_protocol: "LACP" + bundle_protocol_state: "aF*" + bundle_status: "D" + member_interface: - "Et43" - "Et46" - "Et46" - "Et46" - "Et47" - phys_iface_status: + member_interface_status: - "D" - "D" - "D" - "D" - "D" - - port_channel: "Po2000" - port_channel_status: "U" - protocol: "LACP" - protocol_state: "a" - phys_iface: + - bundle_name: "Po2000" + bundle_protocol: "LACP" + bundle_protocol_state: "a" + bundle_status: "U" + member_interface: - "Et54/1" - phys_iface_status: + member_interface_status: - "PG+" diff --git a/tests/cisco_asa/show_port-channel_summary/cisco_asa_show_port-channel_summary.yml b/tests/cisco_asa/show_port-channel_summary/cisco_asa_show_port-channel_summary.yml index ff4de33fcd..0d3c604e1a 100644 --- a/tests/cisco_asa/show_port-channel_summary/cisco_asa_show_port-channel_summary.yml +++ b/tests/cisco_asa/show_port-channel_summary/cisco_asa_show_port-channel_summary.yml @@ -1,22 +1,22 @@ --- parsed_sample: - - group: "1" - po_name: "Po1" - po_status: "U" - protocol: "LACP" - interfaces: + - bundle_name: "Po1" + bundle_protocol: "LACP" + bundle_status: "U" + group: "1" + member_interface: - "Gi0/0" - "Gi0/1" - interfaces_status: + member_interface_status: - "P" - "P" - - group: "2" - po_name: "Po2" - po_status: "U" - protocol: "LACP" - interfaces: + - bundle_name: "Po2" + bundle_protocol: "LACP" + bundle_status: "U" + group: "2" + member_interface: - "Gi0/2" - "Gi0/3" - interfaces_status: + member_interface_status: - "P" - "P" diff --git a/tests/cisco_ios/show_etherchannel_summary/show_etherchannel_summary.yml b/tests/cisco_ios/show_etherchannel_summary/show_etherchannel_summary.yml index b19cea2013..d92ab1613b 100644 --- a/tests/cisco_ios/show_etherchannel_summary/show_etherchannel_summary.yml +++ b/tests/cisco_ios/show_etherchannel_summary/show_etherchannel_summary.yml @@ -1,62 +1,62 @@ --- parsed_sample: - - "group": "1" - "po_name": "Po1" - "po_status": "SU" - "protocol": "LACP" - "interfaces": + - bundle_name: "Po1" + bundle_protocol: "LACP" + bundle_status: "SU" + group: "1" + member_interface: - "Te6/4" - "Te3/5" - "Te9/4" - "Te5/5" - "interfaces_status": + member_interface_status: - "P" - "P" - "P" - "P" - - "group": "3" - "po_name": "Po3" - "po_status": "SU" - "protocol": "LACP" - "interfaces": + - bundle_name: "Po3" + bundle_protocol: "LACP" + bundle_status: "SU" + group: "3" + member_interface: - "Te4/2" - "Te2/2" - "interfaces_status": + member_interface_status: - "P" - "P" - - "group": "7" - "po_name": "Po7" - "po_status": "SU" - "protocol": "LACP" - "interfaces": + - bundle_name: "Po7" + bundle_protocol: "LACP" + bundle_status: "SU" + group: "7" + member_interface: - "Te3/3" - "Te1/3" - "interfaces_status": + member_interface_status: - "P" - "P" - - "group": "13" - "po_name": "Po13" - "po_status": "SU" - "protocol": "LACP" - "interfaces": + - bundle_name: "Po13" + bundle_protocol: "LACP" + bundle_status: "SU" + group: "13" + member_interface: - "Te2/8" - "interfaces_status": + member_interface_status: - "P" - - "group": "14" - "po_name": "Po14" - "po_status": "SU" - "protocol": "LACP" - "interfaces": + - bundle_name: "Po14" + bundle_protocol: "LACP" + bundle_status: "SU" + group: "14" + member_interface: - "Te1/8" - "interfaces_status": + member_interface_status: - "P" - - "group": "51" - "po_name": "Po51" - "po_status": "SU" - "protocol": "LACP" - "interfaces": + - bundle_name: "Po51" + bundle_protocol: "LACP" + bundle_status: "SU" + group: "51" + member_interface: - "Te2/10" - "Te4/10" - "interfaces_status": + member_interface_status: - "P" - "P" diff --git a/tests/cisco_ios/show_etherchannel_summary/show_etherchannel_summary2.yml b/tests/cisco_ios/show_etherchannel_summary/show_etherchannel_summary2.yml index d78ad9c1c7..dc79287fda 100644 --- a/tests/cisco_ios/show_etherchannel_summary/show_etherchannel_summary2.yml +++ b/tests/cisco_ios/show_etherchannel_summary/show_etherchannel_summary2.yml @@ -1,12 +1,12 @@ --- parsed_sample: - - group: "10" - po_name: "Po10" - po_status: "RU" - protocol: "LACP" - interfaces: + - bundle_name: "Po10" + bundle_protocol: "LACP" + bundle_status: "RU" + group: "10" + member_interface: - "Te0/0/2" - "Te0/0/3" - interfaces_status: + member_interface_status: - "bndl" - "bndl" diff --git a/tests/cisco_nxos/show_port-channel_summary/cisco_nxos_show_port-channel_summary.yml b/tests/cisco_nxos/show_port-channel_summary/cisco_nxos_show_port-channel_summary.yml index 08a4c21b92..f71eadd4b2 100644 --- a/tests/cisco_nxos/show_port-channel_summary/cisco_nxos_show_port-channel_summary.yml +++ b/tests/cisco_nxos/show_port-channel_summary/cisco_nxos_show_port-channel_summary.yml @@ -1,26 +1,26 @@ --- parsed_sample: - - bundle_iface: "Po1" - bundle_proto: "LACP" - bundle_proto_state: "(a)" - bundle_status: "(U)" - phys_iface: + - bundle_name: "Po1" + bundle_protocol: "LACP" + bundle_protocol_state: "a" + bundle_status: "U" + member_interface: - "Et3/36/1" - phys_iface_status: - - "(PG+)" - - bundle_iface: "Po25" - bundle_proto: "LACP" - bundle_proto_state: "(a)" - bundle_status: "(D)" - phys_iface: + member_interface_status: + - "PG+" + - bundle_name: "Po25" + bundle_protocol: "LACP" + bundle_protocol_state: "a" + bundle_status: "D" + member_interface: - "Et3/12/1" - phys_iface_status: - - "(G-)" - - bundle_iface: "Po101" - bundle_proto: "LACP" - bundle_proto_state: "(a)" - bundle_status: "(U)" - phys_iface: + member_interface_status: + - "G-" + - bundle_name: "Po101" + bundle_protocol: "LACP" + bundle_protocol_state: "a" + bundle_status: "U" + member_interface: - "Et3/1/1" - "Et3/1/2" - "Et3/1/3" @@ -29,26 +29,26 @@ parsed_sample: - "Et3/3/2" - "Et3/3/3" - "Et3/3/4" - phys_iface_status: - - "(PSG+)" - - "(PSG+)" - - "(PSG+)" - - "(PSG+)" - - "(PSG+)" - - "(PSG+)" - - "(PSG+)" - - "(PSG+)" - - bundle_iface: "Po102" - bundle_proto: "LACP" - bundle_proto_state: "(a)" - bundle_status: "(U)" - phys_iface: + member_interface_status: + - "PSG+" + - "PSG+" + - "PSG+" + - "PSG+" + - "PSG+" + - "PSG+" + - "PSG+" + - "PSG+" + - bundle_name: "Po102" + bundle_protocol: "LACP" + bundle_protocol_state: "a" + bundle_status: "U" + member_interface: - "Et3/2/1" - "Et3/2/2" - "Et3/2/3" - "Et3/2/4" - phys_iface_status: - - "(PSG+)" - - "(PSG+)" - - "(PSG+)" - - "(PSG+)" + member_interface_status: + - "PSG+" + - "PSG+" + - "PSG+" + - "PSG+" diff --git a/tests/cisco_nxos/show_port-channel_summary/cisco_nxos_show_port-channel_summary2.yml b/tests/cisco_nxos/show_port-channel_summary/cisco_nxos_show_port-channel_summary2.yml index 43987deb18..d03d765f87 100644 --- a/tests/cisco_nxos/show_port-channel_summary/cisco_nxos_show_port-channel_summary2.yml +++ b/tests/cisco_nxos/show_port-channel_summary/cisco_nxos_show_port-channel_summary2.yml @@ -1,240 +1,240 @@ --- parsed_sample: - - bundle_iface: "Po1" - bundle_proto: "LACP" - bundle_proto_state: "" - bundle_status: "(RU)" - phys_iface: + - bundle_name: "Po1" + bundle_protocol: "LACP" + bundle_protocol_state: "" + bundle_status: "RU" + member_interface: - "Eth1/1" - "Eth2/1" - phys_iface_status: - - "(P)" - - "(P)" - - bundle_iface: "Po2" - bundle_proto: "LACP" - bundle_proto_state: "" - bundle_status: "(RU)" - phys_iface: + member_interface_status: + - "P" + - "P" + - bundle_name: "Po2" + bundle_protocol: "LACP" + bundle_protocol_state: "" + bundle_status: "RU" + member_interface: - "Eth1/2" - "Eth2/2" - phys_iface_status: - - "(P)" - - "(P)" - - bundle_iface: "Po3" - bundle_proto: "LACP" - bundle_proto_state: "" - bundle_status: "(RU)" - phys_iface: + member_interface_status: + - "P" + - "P" + - bundle_name: "Po3" + bundle_protocol: "LACP" + bundle_protocol_state: "" + bundle_status: "RU" + member_interface: - "Eth1/3" - "Eth2/3" - phys_iface_status: - - "(P)" - - "(P)" - - bundle_iface: "Po4" - bundle_proto: "LACP" - bundle_proto_state: "" - bundle_status: "(RU)" - phys_iface: + member_interface_status: + - "P" + - "P" + - bundle_name: "Po4" + bundle_protocol: "LACP" + bundle_protocol_state: "" + bundle_status: "RU" + member_interface: - "Eth1/4" - "Eth2/4" - phys_iface_status: - - "(P)" - - "(P)" - - bundle_iface: "Po12" - bundle_proto: "LACP" - bundle_proto_state: "" - bundle_status: "(RU)" - phys_iface: + member_interface_status: + - "P" + - "P" + - bundle_name: "Po12" + bundle_protocol: "LACP" + bundle_protocol_state: "" + bundle_status: "RU" + member_interface: - "Eth1/5" - "Eth2/5" - phys_iface_status: - - "(P)" - - "(P)" - - bundle_iface: "Po13" - bundle_proto: "LACP" - bundle_proto_state: "" - bundle_status: "(RU)" - phys_iface: + member_interface_status: + - "P" + - "P" + - bundle_name: "Po13" + bundle_protocol: "LACP" + bundle_protocol_state: "" + bundle_status: "RU" + member_interface: - "Eth1/6" - "Eth2/6" - phys_iface_status: - - "(P)" - - "(P)" - - bundle_iface: "Po14" - bundle_proto: "LACP" - bundle_proto_state: "" - bundle_status: "(RU)" - phys_iface: + member_interface_status: + - "P" + - "P" + - bundle_name: "Po14" + bundle_protocol: "LACP" + bundle_protocol_state: "" + bundle_status: "RU" + member_interface: - "Eth1/7" - "Eth2/7" - phys_iface_status: - - "(P)" - - "(P)" - - bundle_iface: "Po801" - bundle_proto: "LACP" - bundle_proto_state: "" - bundle_status: "(RU)" - phys_iface: + member_interface_status: + - "P" + - "P" + - bundle_name: "Po801" + bundle_protocol: "LACP" + bundle_protocol_state: "" + bundle_status: "RU" + member_interface: - "Eth5/6" - "Eth6/6" - phys_iface_status: - - "(P)" - - "(P)" - - bundle_iface: "Po802" - bundle_proto: "LACP" - bundle_proto_state: "" - bundle_status: "(RU)" - phys_iface: + member_interface_status: + - "P" + - "P" + - bundle_name: "Po802" + bundle_protocol: "LACP" + bundle_protocol_state: "" + bundle_status: "RU" + member_interface: - "Eth5/7" - "Eth6/7" - phys_iface_status: - - "(P)" - - "(P)" - - bundle_iface: "Po803" - bundle_proto: "LACP" - bundle_proto_state: "" - bundle_status: "(RU)" - phys_iface: + member_interface_status: + - "P" + - "P" + - bundle_name: "Po803" + bundle_protocol: "LACP" + bundle_protocol_state: "" + bundle_status: "RU" + member_interface: - "Eth15/17" - "Eth16/17" - phys_iface_status: - - "(P)" - - "(P)" - - bundle_iface: "Po804" - bundle_proto: "LACP" - bundle_proto_state: "" - bundle_status: "(RU)" - phys_iface: + member_interface_status: + - "P" + - "P" + - bundle_name: "Po804" + bundle_protocol: "LACP" + bundle_protocol_state: "" + bundle_status: "RU" + member_interface: - "Eth15/24" - "Eth16/24" - phys_iface_status: - - "(P)" - - "(P)" - - bundle_iface: "Po811" - bundle_proto: "LACP" - bundle_proto_state: "" - bundle_status: "(RU)" - phys_iface: + member_interface_status: + - "P" + - "P" + - bundle_name: "Po811" + bundle_protocol: "LACP" + bundle_protocol_state: "" + bundle_status: "RU" + member_interface: - "Eth15/8" - "Eth15/28" - "Eth16/8" - "Eth16/28" - phys_iface_status: - - "(P)" - - "(P)" - - "(P)" - - "(P)" - - bundle_iface: "Po812" - bundle_proto: "LACP" - bundle_proto_state: "" - bundle_status: "(RU)" - phys_iface: + member_interface_status: + - "P" + - "P" + - "P" + - "P" + - bundle_name: "Po812" + bundle_protocol: "LACP" + bundle_protocol_state: "" + bundle_status: "RU" + member_interface: - "Eth15/36" - "Eth16/36" - "Eth17/8" - "Eth18/8" - phys_iface_status: - - "(P)" - - "(P)" - - "(P)" - - "(P)" - - bundle_iface: "Po813" - bundle_proto: "LACP" - bundle_proto_state: "" - bundle_status: "(RU)" - phys_iface: + member_interface_status: + - "P" + - "P" + - "P" + - "P" + - bundle_name: "Po813" + bundle_protocol: "LACP" + bundle_protocol_state: "" + bundle_status: "RU" + member_interface: - "Eth15/15" - "Eth16/15" - phys_iface_status: - - "(P)" - - "(P)" - - bundle_iface: "Po814" - bundle_proto: "LACP" - bundle_proto_state: "" - bundle_status: "(RU)" - phys_iface: + member_interface_status: + - "P" + - "P" + - bundle_name: "Po814" + bundle_protocol: "LACP" + bundle_protocol_state: "" + bundle_status: "RU" + member_interface: - "Eth15/22" - "Eth16/22" - phys_iface_status: - - "(P)" - - "(P)" - - bundle_iface: "Po821" - bundle_proto: "LACP" - bundle_proto_state: "" - bundle_status: "(RU)" - phys_iface: + member_interface_status: + - "P" + - "P" + - bundle_name: "Po821" + bundle_protocol: "LACP" + bundle_protocol_state: "" + bundle_status: "RU" + member_interface: - "Eth15/30" - "Eth16/30" - "Eth17/29" - "Eth18/29" - phys_iface_status: - - "(P)" - - "(P)" - - "(P)" - - "(P)" - - bundle_iface: "Po822" - bundle_proto: "LACP" - bundle_proto_state: "" - bundle_status: "(RU)" - phys_iface: + member_interface_status: + - "P" + - "P" + - "P" + - "P" + - bundle_name: "Po822" + bundle_protocol: "LACP" + bundle_protocol_state: "" + bundle_status: "RU" + member_interface: - "Eth15/38" - "Eth16/38" - "Eth17/30" - "Eth18/30" - phys_iface_status: - - "(P)" - - "(P)" - - "(P)" - - "(P)" - - bundle_iface: "Po823" - bundle_proto: "LACP" - bundle_proto_state: "" - bundle_status: "(RU)" - phys_iface: + member_interface_status: + - "P" + - "P" + - "P" + - "P" + - bundle_name: "Po823" + bundle_protocol: "LACP" + bundle_protocol_state: "" + bundle_status: "RU" + member_interface: - "Eth3/9" - "Eth4/9" - phys_iface_status: - - "(P)" - - "(P)" - - bundle_iface: "Po824" - bundle_proto: "LACP" - bundle_proto_state: "" - bundle_status: "(RU)" - phys_iface: + member_interface_status: + - "P" + - "P" + - bundle_name: "Po824" + bundle_protocol: "LACP" + bundle_protocol_state: "" + bundle_status: "RU" + member_interface: - "Eth3/10" - "Eth4/10" - phys_iface_status: - - "(P)" - - "(P)" - - bundle_iface: "Po825" - bundle_proto: "LACP" - bundle_proto_state: "" - bundle_status: "(RU)" - phys_iface: + member_interface_status: + - "P" + - "P" + - bundle_name: "Po825" + bundle_protocol: "LACP" + bundle_protocol_state: "" + bundle_status: "RU" + member_interface: - "Eth3/3" - phys_iface_status: - - "(P)" - - bundle_iface: "Po826" - bundle_proto: "LACP" - bundle_proto_state: "" - bundle_status: "(RU)" - phys_iface: + member_interface_status: + - "P" + - bundle_name: "Po826" + bundle_protocol: "LACP" + bundle_protocol_state: "" + bundle_status: "RU" + member_interface: - "Eth4/3" - phys_iface_status: - - "(P)" - - bundle_iface: "Po827" - bundle_proto: "LACP" - bundle_proto_state: "" - bundle_status: "(RU)" - phys_iface: + member_interface_status: + - "P" + - bundle_name: "Po827" + bundle_protocol: "LACP" + bundle_protocol_state: "" + bundle_status: "RU" + member_interface: - "Eth5/3" - phys_iface_status: - - "(P)" - - bundle_iface: "Po828" - bundle_proto: "LACP" - bundle_proto_state: "" - bundle_status: "(RU)" - phys_iface: + member_interface_status: + - "P" + - bundle_name: "Po828" + bundle_protocol: "LACP" + bundle_protocol_state: "" + bundle_status: "RU" + member_interface: - "Eth6/3" - phys_iface_status: - - "(P)" + member_interface_status: + - "P" diff --git a/tests/cisco_nxos/show_port-channel_summary/cisco_nxos_show_port-channel_summary3.yml b/tests/cisco_nxos/show_port-channel_summary/cisco_nxos_show_port-channel_summary3.yml index 07725e31ae..412dd5050e 100644 --- a/tests/cisco_nxos/show_port-channel_summary/cisco_nxos_show_port-channel_summary3.yml +++ b/tests/cisco_nxos/show_port-channel_summary/cisco_nxos_show_port-channel_summary3.yml @@ -1,158 +1,158 @@ --- parsed_sample: - - bundle_iface: "Po131" - bundle_proto: "LACP" - bundle_proto_state: "" - bundle_status: "(SU)" - phys_iface: + - bundle_name: "Po131" + bundle_protocol: "LACP" + bundle_protocol_state: "" + bundle_status: "SU" + member_interface: - "Eth1/1" - phys_iface_status: - - "(P)" - - bundle_iface: "Po132" - bundle_proto: "LACP" - bundle_proto_state: "" - bundle_status: "(SU)" - phys_iface: + member_interface_status: + - "P" + - bundle_name: "Po132" + bundle_protocol: "LACP" + bundle_protocol_state: "" + bundle_status: "SU" + member_interface: - "Eth1/2" - phys_iface_status: - - "(P)" - - bundle_iface: "Po133" - bundle_proto: "LACP" - bundle_proto_state: "" - bundle_status: "(SU)" - phys_iface: + member_interface_status: + - "P" + - bundle_name: "Po133" + bundle_protocol: "LACP" + bundle_protocol_state: "" + bundle_status: "SU" + member_interface: - "Eth1/3" - phys_iface_status: - - "(P)" - - bundle_iface: "Po134" - bundle_proto: "LACP" - bundle_proto_state: "" - bundle_status: "(SU)" - phys_iface: + member_interface_status: + - "P" + - bundle_name: "Po134" + bundle_protocol: "LACP" + bundle_protocol_state: "" + bundle_status: "SU" + member_interface: - "Eth1/4" - phys_iface_status: - - "(P)" - - bundle_iface: "Po135" - bundle_proto: "NONE" - bundle_proto_state: "" - bundle_status: "(SD)" - phys_iface: + member_interface_status: + - "P" + - bundle_name: "Po135" + bundle_protocol: "NONE" + bundle_protocol_state: "" + bundle_status: "SD" + member_interface: - "--" - phys_iface_status: [] - - bundle_iface: "Po136" - bundle_proto: "LACP" - bundle_proto_state: "" - bundle_status: "(SD)" - phys_iface: + member_interface_status: [] + - bundle_name: "Po136" + bundle_protocol: "LACP" + bundle_protocol_state: "" + bundle_status: "SD" + member_interface: - "Eth1/6" - phys_iface_status: - - "(D)" - - bundle_iface: "Po137" - bundle_proto: "NONE" - bundle_proto_state: "" - bundle_status: "(SD)" - phys_iface: + member_interface_status: + - "D" + - bundle_name: "Po137" + bundle_protocol: "NONE" + bundle_protocol_state: "" + bundle_status: "SD" + member_interface: - "--" - phys_iface_status: [] - - bundle_iface: "Po138" - bundle_proto: "LACP" - bundle_proto_state: "" - bundle_status: "(SD)" - phys_iface: + member_interface_status: [] + - bundle_name: "Po138" + bundle_protocol: "LACP" + bundle_protocol_state: "" + bundle_status: "SD" + member_interface: - "Eth1/24" - phys_iface_status: - - "(D)" - - bundle_iface: "Po141" - bundle_proto: "NONE" - bundle_proto_state: "" - bundle_status: "(SD)" - phys_iface: + member_interface_status: + - "D" + - bundle_name: "Po141" + bundle_protocol: "NONE" + bundle_protocol_state: "" + bundle_status: "SD" + member_interface: - "--" - phys_iface_status: [] - - bundle_iface: "Po142" - bundle_proto: "NONE" - bundle_proto_state: "" - bundle_status: "(SD)" - phys_iface: + member_interface_status: [] + - bundle_name: "Po142" + bundle_protocol: "NONE" + bundle_protocol_state: "" + bundle_status: "SD" + member_interface: - "--" - phys_iface_status: [] - - bundle_iface: "Po151" - bundle_proto: "NONE" - bundle_proto_state: "" - bundle_status: "(SD)" - phys_iface: + member_interface_status: [] + - bundle_name: "Po151" + bundle_protocol: "NONE" + bundle_protocol_state: "" + bundle_status: "SD" + member_interface: - "--" - phys_iface_status: [] - - bundle_iface: "Po171" - bundle_proto: "LACP" - bundle_proto_state: "" - bundle_status: "(SU)" - phys_iface: + member_interface_status: [] + - bundle_name: "Po171" + bundle_protocol: "LACP" + bundle_protocol_state: "" + bundle_status: "SU" + member_interface: - "Eth1/14" - phys_iface_status: - - "(P)" - - bundle_iface: "Po172" - bundle_proto: "LACP" - bundle_proto_state: "" - bundle_status: "(SU)" - phys_iface: + member_interface_status: + - "P" + - bundle_name: "Po172" + bundle_protocol: "LACP" + bundle_protocol_state: "" + bundle_status: "SU" + member_interface: - "Eth1/15" - phys_iface_status: - - "(P)" - - bundle_iface: "Po173" - bundle_proto: "LACP" - bundle_proto_state: "" - bundle_status: "(SU)" - phys_iface: + member_interface_status: + - "P" + - bundle_name: "Po173" + bundle_protocol: "LACP" + bundle_protocol_state: "" + bundle_status: "SU" + member_interface: - "Eth1/16" - phys_iface_status: - - "(P)" - - bundle_iface: "Po174" - bundle_proto: "LACP" - bundle_proto_state: "" - bundle_status: "(SU)" - phys_iface: + member_interface_status: + - "P" + - bundle_name: "Po174" + bundle_protocol: "LACP" + bundle_protocol_state: "" + bundle_status: "SU" + member_interface: - "Eth1/17" - phys_iface_status: - - "(P)" - - bundle_iface: "Po175" - bundle_proto: "LACP" - bundle_proto_state: "" - bundle_status: "(SD)" - phys_iface: + member_interface_status: + - "P" + - bundle_name: "Po175" + bundle_protocol: "LACP" + bundle_protocol_state: "" + bundle_status: "SD" + member_interface: - "Eth1/25" - phys_iface_status: - - "(D)" - - bundle_iface: "Po176" - bundle_proto: "LACP" - bundle_proto_state: "" - bundle_status: "(SD)" - phys_iface: + member_interface_status: + - "D" + - bundle_name: "Po176" + bundle_protocol: "LACP" + bundle_protocol_state: "" + bundle_status: "SD" + member_interface: - "Eth1/27" - phys_iface_status: - - "(D)" - - bundle_iface: "Po177" - bundle_proto: "LACP" - bundle_proto_state: "" - bundle_status: "(SD)" - phys_iface: + member_interface_status: + - "D" + - bundle_name: "Po177" + bundle_protocol: "LACP" + bundle_protocol_state: "" + bundle_status: "SD" + member_interface: - "Eth1/28" - phys_iface_status: - - "(D)" - - bundle_iface: "Po178" - bundle_proto: "NONE" - bundle_proto_state: "" - bundle_status: "(SD)" - phys_iface: + member_interface_status: + - "D" + - bundle_name: "Po178" + bundle_protocol: "NONE" + bundle_protocol_state: "" + bundle_status: "SD" + member_interface: - "--" - phys_iface_status: [] - - bundle_iface: "Po200" - bundle_proto: "LACP" - bundle_proto_state: "" - bundle_status: "(SU)" - phys_iface: + member_interface_status: [] + - bundle_name: "Po200" + bundle_protocol: "LACP" + bundle_protocol_state: "" + bundle_status: "SU" + member_interface: - "Eth1/21" - "Eth1/22" - phys_iface_status: - - "(P)" - - "(P)" + member_interface_status: + - "P" + - "P" diff --git a/tests/juniper_junos/show_lacp_interfaces/juniper_junos_show_lacp_interfaces.yml b/tests/juniper_junos/show_lacp_interfaces/juniper_junos_show_lacp_interfaces.yml index 0990686104..60d1889793 100644 --- a/tests/juniper_junos/show_lacp_interfaces/juniper_junos_show_lacp_interfaces.yml +++ b/tests/juniper_junos/show_lacp_interfaces/juniper_junos_show_lacp_interfaces.yml @@ -1,50 +1,50 @@ --- parsed_sample: - - aggregated_interface: "ae33" + - bundle_name: "ae33" member_interface: - "xe-0/0/0:0" + mux_state: + - "Collecting distributing" receive_state: - "Current" transmit_state: - "Slow periodic" - mux_state: - - "Collecting distributing" - - aggregated_interface: "ae111" + - bundle_name: "ae111" member_interface: - "et-0/0/32" - "et-0/0/33" + mux_state: + - "Collecting distributing" + - "Collecting distributing" receive_state: - "Current" - "Current" transmit_state: - "Fast periodic" - "Fast periodic" - mux_state: - - "Collecting distributing" - - "Collecting distributing" - - aggregated_interface: "ae112" + - bundle_name: "ae112" member_interface: - "et-0/0/34" - "et-0/0/35" + mux_state: + - "Collecting distributing" + - "Collecting distributing" receive_state: - "Current" - "Current" transmit_state: - "Fast periodic" - "Fast periodic" - mux_state: - - "Collecting distributing" - - "Collecting distributing" - - aggregated_interface: "ae115" + - bundle_name: "ae115" member_interface: - "et-0/0/25" - "et-0/0/29" + mux_state: + - "Collecting distributing" + - "Collecting distributing" receive_state: - "Current" - "Current" transmit_state: - "Fast periodic" - "Fast periodic" - mux_state: - - "Collecting distributing" - - "Collecting distributing"