ae9c1167e4
* Fixes due to branch being renamed (#71115) The ansible collection repository correctly renamed their default branch from `master` to `main`, which has caused a number for broken urls. This PR fixes those urls. (cherry picked from commitfb9c9570d5
) * Docs: Fix typo (#71119) (cherry picked from commitcb9336ab6d
) * remove network for 2.10 base porting guide (#71158) (cherry picked from commit56748a8060
) * Updating Getting Started with Resources section #68962 (#71102) * Updating Getting Started with Resources section #68962 * Add links, including Workshops URL #68962 (cherry picked from commit5f8b45a70e
) * start of 'data manipulation' examples (#46979) Co-authored-by: Klaus Frank <agowa338@users.noreply.github.com> Co-authored-by: Felix Fontein <felix@fontein.de> Co-authored-by: Abhijeet Kasurde <akasurde@redhat.com> (cherry picked from commitf46b124d65
) * toml: Clarify about inventory examples (#71180) Add a note in toml inventory plugin about three different inventory examples. Fixes: #67003 Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com> (cherry picked from commitedac065bd2
) * filters: minor doc fix (#71178) Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com> (cherry picked from commit0a7ab396c7
) * docs: 'ansible_play_hosts' lists active hosts, not limited by serial (#71116) ansible_play_batch lists the currently targeted host(s) in the serial/batch, while ansible_play_hosts lists all the hosts which will be targeted by the play. (cherry picked from commite72e12aa27
) * Fix references to Ansible Collections Overview (#71227) (cherry picked from commit19589db10c
) * add another resource module example (#71162) * Update docs/docsite/rst/network/user_guide/network_resource_modules.rst Co-authored-by: Nilashish Chakraborty <nilashishchakraborty8@gmail.com> (cherry picked from commitf4388de14d
) * Adds fest link (#71241) (cherry picked from commitae3b8eec12
) * Update release page for ansible and ansible-base (#71229) * [docs] 2.7 is EOL, add 2.10 which is almost out - Remove 2.7 support from the maintenance schedule - Add 2.10 which is in RC and will be out soon enough. Signed-off-by: Rick Elrod <rick@elrod.me> * Update docs/docsite/rst/reference_appendices/release_and_maintenance.rst, fix table and separate ansible-base from ansible, fix rstcheck errors, clean up sections, explain the two packages Co-authored-by: Sandra McCann <samccann@redhat.com> Co-authored-by: Rick Elrod <rick@elrod.me> (cherry picked from commit553ccedcd3
) Co-authored-by: Daniel Finneran <dan@thebsdbox.co.uk> Co-authored-by: Liviu Chircu <liviu@opensips.org> Co-authored-by: kshitijcode <ikshitijsharma@gmail.com> Co-authored-by: Brian Coca <bcoca@users.noreply.github.com> Co-authored-by: Abhijeet Kasurde <akasurde@redhat.com> Co-authored-by: Håkon Solbjørg <hakon@solbj.org> Co-authored-by: Andrew Klychkov <aaklychkov@mail.ru> Co-authored-by: Alicia Cozine <879121+acozine@users.noreply.github.com>
76 lines
2.6 KiB
ReStructuredText
76 lines
2.6 KiB
ReStructuredText
.. _httpapi_plugins:
|
|
|
|
Httpapi Plugins
|
|
===============
|
|
|
|
.. contents::
|
|
:local:
|
|
:depth: 2
|
|
|
|
.. warning::
|
|
|
|
Links on this page may not point to the most recent versions of plugins. In preparation for the release of 2.10, many plugins and modules have migrated to Collections on `Ansible Galaxy <https://galaxy.ansible.com>`_. For the current development status of Collections and FAQ see `Ansible Collections Community Guide <https://github.com/ansible-collections/overview/blob/master/README.rst>`_.
|
|
|
|
Httpapi plugins tell Ansible how to interact with a remote device's HTTP-based API and execute tasks on the
|
|
device.
|
|
|
|
Each plugin represents a particular dialect of API. Some are platform-specific (Arista eAPI, Cisco NXAPI), while
|
|
others might be usable on a variety of platforms (RESTCONF).
|
|
|
|
.. _enabling_httpapi:
|
|
|
|
Adding httpapi plugins
|
|
-------------------------
|
|
|
|
You can extend Ansible to support other APIs by dropping a custom plugin into the ``httpapi_plugins`` directory. See :ref:`developing_plugins_httpapi` for details.
|
|
|
|
.. _using_httpapi:
|
|
|
|
Using httpapi plugins
|
|
------------------------
|
|
|
|
The httpapi plugin to use is determined automatically from the ``ansible_network_os`` variable.
|
|
|
|
Most httpapi plugins can operate without configuration. Additional options may be defined by each plugin.
|
|
|
|
Plugins are self-documenting. Each plugin should document its configuration options.
|
|
|
|
|
|
The following sample playbook shows the httpapi plugin for an Arista network device, assuming an inventory variable set as ``ansible_network_os=eos`` for the httpapi plugin to trigger off:
|
|
|
|
.. code-block:: yaml
|
|
|
|
- hosts: leaf01
|
|
connection: httpapi
|
|
gather_facts: false
|
|
tasks:
|
|
|
|
- name: type a simple arista command
|
|
eos_command:
|
|
commands:
|
|
- show version | json
|
|
register: command_output
|
|
|
|
- name: print command output to terminal window
|
|
debug:
|
|
var: command_output.stdout[0]["version"]
|
|
|
|
See the full working example at https://github.com/network-automation/httpapi.
|
|
|
|
.. _httpapi_plugin_list:
|
|
|
|
Plugin List
|
|
-----------
|
|
|
|
These plugins have migrated to a collection. Updates on where to find and how to use them will be coming soon.
|
|
|
|
.. seealso::
|
|
|
|
:ref:`Ansible for Network Automation<network_guide>`
|
|
An overview of using Ansible to automate networking devices.
|
|
:ref:`Developing network modules<developing_modules_network>`
|
|
How to develop network modules.
|
|
`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
|