Doc PR for the netvisor platform (#53947)

* Doc PR for the netvisor platform

* Sanity issue fixes

* Changes requested by doc team

* Added netvisor in toctree
This commit is contained in:
rajaspachipulusu17 2019-03-20 21:23:41 +05:30 committed by Sandra McCann
parent 7afdc6c582
commit 6719e0abb6
2 changed files with 75 additions and 0 deletions

View file

@ -20,6 +20,7 @@ Some Ansible Network platforms support multiple connection types, privilege esca
platform_ios
platform_ironware
platform_junos
platform_netvisor
platform_nos
platform_nxos
platform_routeros
@ -77,6 +78,8 @@ Settings by Platform
+-------------------+-------------------------+-------------+---------+---------+----------+
| Nokia SR OS | ``sros`` | ✓ | | | ✓ |
+-------------------+-------------------------+-------------+---------+---------+----------+
| Pluribus Netvisor | ``netvisor`` | ✓ | | | |
+-------------------+-------------------------+-------------+---------+---------+----------+
| VyOS* | ``vyos`` | ✓ | | | ✓ |
+-------------------+-------------------------+-------------+---------+---------+----------+
| OS that supports | ``<network-os>`` | | ✓ | | ✓ |

View file

@ -0,0 +1,72 @@
.. _netvisor_platform_options:
**********************************
Pluribus NETVISOR Platform Options
**********************************
Pluribus NETVISOR Ansible modules only support CLI connections today. ``httpapi`` modules may be added in future.
This page offers details on how to use ``network_cli`` on NETVISOR in Ansible.
.. contents:: Topics
Connections Available
================================================================================
+---------------------------+-----------------------------------------------+
|.. | CLI |
+===========================+===============================================+
| **Protocol** | SSH |
+---------------------------+-----------------------------------------------+
| | **Credentials** | | uses SSH keys / SSH-agent if present |
| | | | accepts ``-u myuser -k`` if using password |
+---------------------------+-----------------------------------------------+
| **Indirect Access** | via a bastion (jump host) |
+---------------------------+-----------------------------------------------+
| | **Connection Settings** | | ``ansible_connection: network_cli`` |
| | | | |
| | | | |
| | | | |
| | | | |
+---------------------------+-----------------------------------------------+
| | **Enable Mode** | | not supported by NETVISOR |
| | (Privilege Escalation) | | |
+---------------------------+-----------------------------------------------+
| **Returned Data Format** | ``stdout[0].`` |
+---------------------------+-----------------------------------------------+
Pluribus NETVISOR does not support ``ansible_connection: local``. You must use ``ansible_connection: network_cli``.
Using CLI in Ansible
====================
Example CLI ``group_vars/netvisor.yml``
---------------------------------------
.. code-block:: yaml
ansible_connection: network_cli
ansible_network_os: netvisor
ansible_user: myuser
ansible_password: !vault...
ansible_ssh_common_args: '-o ProxyCommand="ssh -W %h:%p -q bastion01"'
- If you are using SSH keys (including an ssh-agent) you can remove the ``ansible_password`` configuration.
- If you are accessing your host directly (not through a bastion/jump host) you can remove the ``ansible_ssh_common_args`` configuration.
- If you are accessing your host through a bastion/jump host, you cannot include your SSH password in the ``ProxyCommand`` directive. To prevent secrets from leaking out (for example in ``ps`` output), SSH does not support providing passwords via environment variables.
Example CLI Task
----------------
.. code-block:: yaml
- name: Create access list
pn_access_list:
pn_name: "foo"
pn_scope: "local"
state: "present"
register: acc_list
when: ansible_network_os == 'netvisor'
.. include:: shared_snippets/SSH_warning.txt