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>
This commit is contained in:
parent
e72e12aa27
commit
f4388de14d
1 changed files with 44 additions and 0 deletions
|
@ -150,6 +150,50 @@ The following playbook uses the :ref:`eos_l3_interfaces <eos_l3_interfaces_modul
|
||||||
assert:
|
assert:
|
||||||
that: not result.changed
|
that: not result.changed
|
||||||
|
|
||||||
|
Example: Acquiring and updating VLANs on a network device
|
||||||
|
==========================================================
|
||||||
|
|
||||||
|
This example shows how you can use resource modules to:
|
||||||
|
|
||||||
|
#. Retrieve the current configuration on a network device.
|
||||||
|
#. Save that configuration locally.
|
||||||
|
#. Update that configuration and apply it to the network device.
|
||||||
|
|
||||||
|
This example uses the ``cisco.ios.ios_vlans`` resource module to retrieve and update the VLANs on an IOS device.
|
||||||
|
|
||||||
|
1. Retrieve the current IOS VLAN configuration:
|
||||||
|
|
||||||
|
.. code-block:: yaml
|
||||||
|
|
||||||
|
- name: Gather VLAN information as structured data
|
||||||
|
cisco.ios.ios_facts:
|
||||||
|
gather_subset:
|
||||||
|
- '!all'
|
||||||
|
- '!min'
|
||||||
|
gather_network_resources:
|
||||||
|
- 'vlans'
|
||||||
|
|
||||||
|
2. Store the VLAN configuration locally:
|
||||||
|
|
||||||
|
.. code-block:: yaml
|
||||||
|
|
||||||
|
- name: Store VLAN facts to host_vars
|
||||||
|
copy:
|
||||||
|
content: "{{ ansible_network_resources | to_nice_yaml }}"
|
||||||
|
dest: "{{ playbook_dir }}/host_vars/{{ inventory_hostname }}"
|
||||||
|
|
||||||
|
3. Modify the stored file to update the VLAN configuration locally.
|
||||||
|
|
||||||
|
4. Merge the updated VLAN configuration with the existing configuration on the device:
|
||||||
|
|
||||||
|
.. code-block:: yaml
|
||||||
|
|
||||||
|
- name: Make VLAN config changes by updating stored facts on the controller.
|
||||||
|
cisco.ios.ios_vlans:
|
||||||
|
config: "{{ vlans }}"
|
||||||
|
state: merged
|
||||||
|
tags: update_config
|
||||||
|
|
||||||
.. seealso::
|
.. seealso::
|
||||||
|
|
||||||
`Network Features in Ansible 2.9 <https://www.ansible.com/blog/network-features-coming-soon-in-ansible-engine-2.9>`_
|
`Network Features in Ansible 2.9 <https://www.ansible.com/blog/network-features-coming-soon-in-ansible-engine-2.9>`_
|
||||||
|
|
Loading…
Reference in a new issue