Skip to content

Commit

Permalink
Merge branch 'develop' into netmiko_restructure
Browse files Browse the repository at this point in the history
  • Loading branch information
mirceaulinic authored Mar 15, 2018
2 parents 0535b67 + 4187c42 commit 2aa6d44
Show file tree
Hide file tree
Showing 2 changed files with 16 additions and 17 deletions.
29 changes: 14 additions & 15 deletions docs/support/index.rst
Original file line number Diff line number Diff line change
Expand Up @@ -8,16 +8,15 @@ General support matrix



===================== ========== ============= ============ ============ ============
_ EOS JunOS IOS-XR NXOS IOS
===================== ========== ============= ============ ============ ============
**Module Name** napalm-eos napalm-junos napalm-iosxr napalm-nxos napalm-ios
**Driver Name** eos junos iosxr nxos ios
**Structured data** Yes Yes No Yes No
**Minimum version** 4.15.0F 12.1 5.1.0 6.1 [#g1]_ 12.4(20)T
**Backend library** `pyeapi`_ `junos-eznc`_ `pyIOSXR`_ `pynxos`_ `netmiko`_
**Caveats** :doc:`eos` :doc:`nxos` :doc:`ios`
===================== ========== ============= ============ ============ ============
===================== ========== ============= ============ ============ ============ ============
_ EOS Junos IOS-XR NX-OS NX-OS SSH IOS
===================== ========== ============= ============ ============ ============ ============
**Driver Name** eos junos iosxr nxos nxos_ssh ios
**Structured data** Yes Yes No Yes No No
**Minimum version** 4.15.0F 12.1 5.1.0 6.1 [#g1]_ 12.4(20)T
**Backend library** `pyeapi`_ `junos-eznc`_ `pyIOSXR`_ `pynxos`_ `netmiko`_ `netmiko`_
**Caveats** :doc:`eos` :doc:`nxos` :doc:`nxos` :doc:`ios`
===================== ========== ============= ============ ============ ============ ============

.. _pyeapi: https://github.com/arista-eosplus/pyeapi
.. _junos-eznc: https://github.com/Juniper/py-junos-eznc
Expand All @@ -34,18 +33,18 @@ Configuration support matrix
----------------------------

===================== ========== ===== ========== ============== ==============
_ EOS JunOS IOS-XR NXOS IOS
_ EOS Junos IOS-XR NX-OS IOS
===================== ========== ===== ========== ============== ==============
**Config. replace** Yes Yes Yes Yes Yes
**Config. merge** Yes Yes Yes Yes Yes
**Compare config** Yes Yes Yes [#c1]_ Yes [#c4]_ Yes
**Atomic Changes** Yes Yes Yes Yes/No [#c5]_ Yes
**Atomic Changes** Yes Yes Yes Yes/No [#c5]_ Yes/No [#c5]_
**Rollback** Yes [#c2]_ Yes Yes Yes/No [#c5]_ Yes
===================== ========== ===== ========== ============== ==============

.. [#c1] Hand-crafted by the API as the device doesn't support the feature.
.. [#c2] Not supported but emulated. Check caveats.
.. [#c4] For merges, the diff is simply the merge config itself. See caveats.
.. [#c4] For merges, the diff is very simplistic. See caveats.
.. [#c5] No for merges. See caveats.
.. warning:: Before building a workflow to deploy configuration it is important you understand what the table above means;
Expand All @@ -67,10 +66,10 @@ Other methods
.. |no| unicode:: U+0274C .. No

============================== ===== ===== ====== ====== =====
_ EOS JunOS IOS-XR NXOS IOS
_ EOS Junos IOS-XR NX-OS IOS
============================== ===== ===== ====== ====== =====
**load_template** |yes| |yes| |yes| |yes| |yes|
**ping** |yes| |yes| |no| |no| |yes|
**ping** |yes| |yes| |no| |yes| |yes|
**traceroute** |yes| |yes| |yes| |yes| |yes|
============================== ===== ===== ====== ====== =====

Expand Down
4 changes: 2 additions & 2 deletions napalm/junos/junos.py
Original file line number Diff line number Diff line change
Expand Up @@ -706,15 +706,15 @@ def get_lldp_neighbors_detail(self, interface=''):
# Exceptions:
# EX9208 personality = SWITCH RPC: <get-lldp-interface-neighbors><interface-device>
lldp_table.GET_RPC = 'get-lldp-interface-neighbors'
if self.device.facts.get('personality') not in ('MX', 'M', 'T')\
if self.device.facts.get('personality') not in ('MX', 'M', 'PTX', 'T')\
and self.device.facts.get('model') not in ('EX9208', 'QFX10008'):
# Still need to confirm for QFX10002 and other EX series
lldp_table.GET_RPC = 'get-lldp-interface-neighbors-information'

for interface in interfaces:
if 'EX9208' in self.device.facts.get('model'):
lldp_table.get(interface_device=interface)
elif self.device.facts.get('personality') not in ('MX', 'M', 'T'):
elif self.device.facts.get('personality') not in ('MX', 'M', 'PTX', 'T'):
lldp_table.get(interface_name=interface)
else:
lldp_table.get(interface_device=interface)
Expand Down

0 comments on commit 2aa6d44

Please sign in to comment.