mirror of https://github.com/ansible/ansible.git
Fix netconf plugin related to collections (#65718)
* Fix netconf plugin related to collections
Fixes #65655 (partly)
* Make netconf plugins configurable so that the
information of ncclient device handler
for give platform resides in the platform
specific netconf plugin.
* If the device handler value in ncclient is
different from the ansible_network_os value
the right value of `ncclient_device_handler`
should be set in the plugin documentation.
* Fix review comments
* Fix CI issue
* Fix review comment
(cherry picked from commit 1cfab26fab)
pull/66433/head
parent
5d16603b2e
commit
2d7819e75d
@ -0,0 +1,2 @@
|
|||||||
|
bugfixes:
|
||||||
|
- Make netconf plugin configurable to set ncclient device handler name in netconf plugin (https://github.com/ansible/ansible/pull/65718)
|
||||||
@ -0,0 +1,62 @@
|
|||||||
|
.. _netconf_plugins:
|
||||||
|
|
||||||
|
Netconf Plugins
|
||||||
|
===============
|
||||||
|
|
||||||
|
.. contents::
|
||||||
|
:local:
|
||||||
|
:depth: 2
|
||||||
|
|
||||||
|
Netconf plugins are abstactions over the Netconf interface to network devices. They provide a standard interface
|
||||||
|
for Ansible to execute tasks on those network devices.
|
||||||
|
|
||||||
|
These plugins generally correspond one-to-one to network device platforms. The appropriate netconf plugin will
|
||||||
|
thus be automatically loaded based on the ``ansible_network_os`` variable. If the platform supports standard
|
||||||
|
Netconf implementation as defined in the Netconf RFC specification the ``default`` netconf plugin will be used.
|
||||||
|
In case if the platform supports propriety Netconf RPC's in that case the interface can be defined in platform
|
||||||
|
specific netconf plugin.
|
||||||
|
|
||||||
|
.. _enabling_netconf:
|
||||||
|
|
||||||
|
Adding netconf plugins
|
||||||
|
-------------------------
|
||||||
|
|
||||||
|
You can extend Ansible to support other network devices by dropping a custom plugin into the ``netconf_plugins`` directory.
|
||||||
|
|
||||||
|
.. _using_netconf:
|
||||||
|
|
||||||
|
Using netconf plugins
|
||||||
|
------------------------
|
||||||
|
|
||||||
|
The netconf plugin to use is determined automatically from the ``ansible_network_os`` variable. There should be no reason to override this functionality.
|
||||||
|
|
||||||
|
Most netconf plugins can operate without configuration. A few have additional options that can be set to impact how
|
||||||
|
tasks are translated into netconf commands. A ncclient device specific handler name can be set in the netconf plugin
|
||||||
|
or else the value of ``default`` is used as per ncclient device handler.
|
||||||
|
|
||||||
|
|
||||||
|
Plugins are self-documenting. Each plugin should document its configuration options.
|
||||||
|
|
||||||
|
.. _netconf_plugin_list:
|
||||||
|
|
||||||
|
Plugin list
|
||||||
|
-----------
|
||||||
|
|
||||||
|
You can use ``ansible-doc -t netconf -l`` to see the list of available plugins.
|
||||||
|
Use ``ansible-doc -t netconf <plugin name>`` to see detailed documentation and examples.
|
||||||
|
|
||||||
|
|
||||||
|
.. toctree:: :maxdepth: 1
|
||||||
|
:glob:
|
||||||
|
|
||||||
|
netconf/*
|
||||||
|
|
||||||
|
|
||||||
|
.. seealso::
|
||||||
|
|
||||||
|
:ref:`Ansible for Network Automation<network_guide>`
|
||||||
|
An overview of using Ansible to automate networking devices.
|
||||||
|
`User Mailing List <https://groups.google.com/group/ansible-devel>`_
|
||||||
|
Have a question? Stop by the google group!
|
||||||
|
`irc.freenode.net <http://irc.freenode.net>`_
|
||||||
|
#ansible-network IRC chat channel
|
||||||
Loading…
Reference in New Issue