Ansible-Playbook to display output of multiple show commands (using stdout_lines with Loop)
In this playbook, we we'll see how we can get display of multiple show commands in stdout_lines format. We can make use of loops (or with_items) for submitting multiple commands, but debug output with stdout_lines does not gives the formatted result as it would give for single command. So in case of multiple commands, we can debug the output of each command separately in stdout_lines format.
#Ansible-Playbook to display Output of multiple show commands- name: Display Output of multiple show commandshosts: allgather_facts: noconnection: network_clibecome: nobecome_method: enabletasks:- name: Get the configcli_command:command: "{{ item }}"register: resultwith_items:- show ip access-lists TestACL-1 | include 150- show ip access-lists TestACL-2 | include 250- show run | include file|bgp- show snmp user | i snmp-user- debug:msg:- "{{ result.results[0].stdout_lines }}"- "{{ result.results[1].stdout_lines }}"- "{{ result.results[2].stdout_lines }}"- "{{ result.results[3].stdout_lines }}"# Debug output can also be displayed using following lines# - debug:# msg: "{{ item.stdout_lines }}"# with_item
This comment has been removed by the author.
ReplyDeleteThank you for sharing amazing and useful information with everyone. Ansible Playbook captures show output from multiple show commands on a Cisco router and then stores the output in a text file that is the hostname of the device and runbook also helps. Runbooks Vs playbooks are tools best used in tandem. But also build your organization towards a greater goal of removing human toil altogether by embracing practices that have been built into development workflows for years.
ReplyDelete