From 6719e0abb6e042955507496dd58c8e3765298c54 Mon Sep 17 00:00:00 2001 From: rajaspachipulusu17 Date: Wed, 20 Mar 2019 21:23:41 +0530 Subject: [PATCH] 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 --- .../rst/network/user_guide/platform_index.rst | 3 + .../network/user_guide/platform_netvisor.rst | 72 +++++++++++++++++++ 2 files changed, 75 insertions(+) create mode 100644 docs/docsite/rst/network/user_guide/platform_netvisor.rst diff --git a/docs/docsite/rst/network/user_guide/platform_index.rst b/docs/docsite/rst/network/user_guide/platform_index.rst index 01184065aa8..16df681906c 100644 --- a/docs/docsite/rst/network/user_guide/platform_index.rst +++ b/docs/docsite/rst/network/user_guide/platform_index.rst @@ -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 | ```` | | ✓ | | ✓ | diff --git a/docs/docsite/rst/network/user_guide/platform_netvisor.rst b/docs/docsite/rst/network/user_guide/platform_netvisor.rst new file mode 100644 index 00000000000..c00d537d63f --- /dev/null +++ b/docs/docsite/rst/network/user_guide/platform_netvisor.rst @@ -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