ansible.builtin.napalm (v2.9.27) — connection

Provides persistent connection using NAPALM

| "added in version" 2.8 of ansible.builtin"

Authors: Ansible Networking Team

Install Ansible via pip

Install with pip install ansible==2.9.27

Description

This connection plugin provides connectivity to network devices using the NAPALM network device abstraction library. This library requires certain features to be enabled on network devices depending on the destination device operating system. The connection plugin requires C(napalm) to be installed locally on the Ansible controller.


Requirements

Inputs

    
host:
    default: inventory_hostname
    description:
    - Specifies the remote device FQDN or IP address to establish the SSH connection to.
    vars:
    - name: ansible_host

port:
    default: 22
    description:
    - Specifies the port on the remote device that listens for connections when establishing
      the SSH connection.
    env:
    - name: ANSIBLE_REMOTE_PORT
    ini:
    - key: remote_port
      section: defaults
    type: int
    vars:
    - name: ansible_port

timeout:
    default: 120
    description:
    - Sets the connection time, in seconds, for communicating with the remote device.  This
      timeout is used as the default timeout value for commands when issuing a command
      to the network CLI.  If the command does not return in timeout seconds, an error
      is generated.
    type: int

password:
    description:
    - Configures the user password used to authenticate to the remote device when first
      establishing the SSH connection.
    vars:
    - name: ansible_password
    - name: ansible_ssh_pass
    - name: ansible_ssh_password

network_os:
    description:
    - Configures the device platform network operating system.  This value is used to
      load a napalm device abstraction.
    vars:
    - name: ansible_network_os

remote_user:
    description:
    - The username used to authenticate to the remote device when the SSH connection is
      first established.  If the remote_user is not specified, the connection will use
      the username of the logged in user.
    - Can be configured from the CLI via the C(--user) or C(-u) options.
    env:
    - name: ANSIBLE_REMOTE_USER
    ini:
    - key: remote_user
      section: defaults
    vars:
    - name: ansible_user

private_key_file:
    description:
    - The private SSH key or certificate file used to authenticate to the remote device
      when first establishing the SSH connection.
    env:
    - name: ANSIBLE_PRIVATE_KEY_FILE
    ini:
    - key: private_key_file
      section: defaults
    vars:
    - name: ansible_private_key_file

host_key_auto_add:
    default: false
    description:
    - By default, Ansible will prompt the user before adding SSH keys to the known hosts
      file. By enabling this option, unknown host keys will automatically be added to
      the known hosts file.
    - Be sure to fully understand the security implications of enabling this option on
      production systems as it could create a security vulnerability.
    env:
    - name: ANSIBLE_HOST_KEY_AUTO_ADD
    ini:
    - key: host_key_auto_add
      section: paramiko_connection
    type: boolean

persistent_command_timeout:
    default: 30
    description:
    - Configures, in seconds, the amount of time to wait for a command to return from
      the remote device.  If this timer is exceeded before the command returns, the connection
      plugin will raise an exception and close.
    env:
    - name: ANSIBLE_PERSISTENT_COMMAND_TIMEOUT
    ini:
    - key: command_timeout
      section: persistent_connection
    type: int
    vars:
    - name: ansible_command_timeout

persistent_connect_timeout:
    default: 30
    description:
    - Configures, in seconds, the amount of time to wait when trying to initially establish
      a persistent connection.  If this value expires before the connection to the remote
      device is completed, the connection will fail.
    env:
    - name: ANSIBLE_PERSISTENT_CONNECT_TIMEOUT
    ini:
    - key: connect_timeout
      section: persistent_connection
    type: int
    vars:
    - name: ansible_connect_timeout