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 commands
  hosts: all
  gather_facts: no
  connection: network_cli
  become: no
  become_method: enable
  tasks:

   - name: Get the config
     cli_command:
      command: "{{ item }}"
     register: result

     with_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

Comments

Popular posts from this blog

Filtering Routes in BGP using Route-maps and Prefix-list

Export or Backup Azure Virtual Networks or Subnet information into CSV using PowerShell

Ansible Playbook for Network OS Upgrade with pre and post checks

Ansible-playbook for backing up running config of Cisco IOS

Cisco ASA Active/Active Failover Configuration

VMware NSX Traffic Flow — East-West & North-South

Export or Backup Azure Route Table into CSV using PowerShell

Export or Backup Azure Network Security Groups into CSV using PowerShell

IKEv1 Remote Access VPN on Cisco ASA for Legacy VPN Client