Skip to content

Instantly share code, notes, and snippets.

@jtdub
Last active October 31, 2015 01:05
Show Gist options
  • Save jtdub/9fddec6d846585e03f00 to your computer and use it in GitHub Desktop.
Save jtdub/9fddec6d846585e03f00 to your computer and use it in GitHub Desktop.
sample playbook
---
- name: test command module as audit
hosts: netdevices
gather_facts: False
connection: local
tasks:
- name: gather facts
ntc_show_command:
connection: ssh
platform: "{{ platform }}"
username: "{{ username }}"
password: "{{ password }}"
host: "{{ inventory_hostname }}"
command: show ip interface brief
register: facts
- debug: var={{ item }}
with_items: facts.response
when: item.intf == 'Loopback0'
register: loopbacks
- debug: var="{{ loopbacks }}"
@jtdub
Copy link
Author

jtdub commented Oct 31, 2015


---
- name: test command module as audit
  hosts: netdevices
  gather_facts: False
  connection: local

  tasks:

  - name: gather facts
    ntc_show_command:
      connection: ssh
      platform: "{{ platform }}"
      username: "{{ username }}"
      password: "{{ password }}"
      host: "{{ inventory_hostname }}"
      command: show ip interface brief 
    register: facts

  - set_fact:
      loopbacks: "{{ item }}"
    with_items: facts.response 
    when: item.intf == 'Loopback0'

  - debug: var=loopbacks
(ntc)jtdub-macbook:ntc-ansible jtdub$ ansible-playbook -i test-hosts cmd-test.yml 

PLAY [test command module as audit] ******************************************* 

TASK: [gather facts] ********************************************************** 
ok: [darkstar]
ok: [core1a]

TASK: [set_fact ] ************************************************************* 
skipping: [darkstar] => (item={u'status': u'down', u'intf': u'Async1', u'ipaddr': u'unassigned', u'proto': u'down'})
skipping: [core1a] => (item={u'status': u'administratively down', u'intf': u'Vlan1', u'ipaddr': u'unassigned', u'proto': u'down'})
skipping: [darkstar] => (item={u'status': u'up', u'intf': u'FastEthernet0', u'ipaddr': u'70.121.134.31', u'proto': u'up'})
skipping: [core1a] => (item={u'status': u'up', u'intf': u'Vlan2', u'ipaddr': u'172.16.0.65', u'proto': u'down'})
skipping: [darkstar] => (item={u'status': u'up', u'intf': u'FastEthernet1', u'ipaddr': u'172.16.0.34', u'proto': u'up'})
skipping: [core1a] => (item={u'status': u'up', u'intf': u'Vlan3', u'ipaddr': u'172.16.1.129', u'proto': u'up'})
skipping: [darkstar] => (item={u'status': u'up', u'intf': u'FastEthernet2', u'ipaddr': u'unassigned', u'proto': u'up'})
skipping: [core1a] => (item={u'status': u'up', u'intf': u'Vlan50', u'ipaddr': u'172.16.1.1', u'proto': u'up'})
skipping: [darkstar] => (item={u'status': u'up', u'intf': u'FastEthernet3', u'ipaddr': u'unassigned', u'proto': u'up'})
skipping: [core1a] => (item={u'status': u'up', u'intf': u'Vlan51', u'ipaddr': u'172.16.1.65', u'proto': u'down'})
skipping: [darkstar] => (item={u'status': u'up', u'intf': u'FastEthernet4', u'ipaddr': u'unassigned', u'proto': u'down'})
skipping: [core1a] => (item={u'status': u'up', u'intf': u'Vlan52', u'ipaddr': u'172.16.1.193', u'proto': u'down'})
skipping: [darkstar] => (item={u'status': u'up', u'intf': u'FastEthernet5', u'ipaddr': u'unassigned', u'proto': u'down'})
skipping: [darkstar] => (item={u'status': u'up', u'intf': u'FastEthernet6', u'ipaddr': u'unassigned', u'proto': u'down'})
skipping: [core1a] => (item={u'status': u'up', u'intf': u'FastEthernet1/0/1', u'ipaddr': u'172.16.0.33', u'proto': u'up'})
skipping: [darkstar] => (item={u'status': u'up', u'intf': u'FastEthernet7', u'ipaddr': u'unassigned', u'proto': u'up'})
skipping: [core1a] => (item={u'status': u'up', u'intf': u'FastEthernet1/0/2', u'ipaddr': u'unassigned', u'proto': u'up'})
skipping: [darkstar] => (item={u'status': u'up', u'intf': u'FastEthernet8', u'ipaddr': u'unassigned', u'proto': u'down'})
skipping: [core1a] => (item={u'status': u'up', u'intf': u'FastEthernet1/0/3', u'ipaddr': u'unassigned', u'proto': u'up'})
skipping: [darkstar] => (item={u'status': u'up', u'intf': u'FastEthernet9', u'ipaddr': u'unassigned', u'proto': u'down'})
skipping: [core1a] => (item={u'status': u'down', u'intf': u'FastEthernet1/0/4', u'ipaddr': u'unassigned', u'proto': u'down'})
skipping: [core1a] => (item={u'status': u'up', u'intf': u'FastEthernet1/0/5', u'ipaddr': u'unassigned', u'proto': u'up'})
ok: [darkstar] => (item={u'status': u'up', u'intf': u'Loopback0', u'ipaddr': u'172.16.0.2', u'proto': u'up'})
skipping: [core1a] => (item={u'status': u'down', u'intf': u'FastEthernet1/0/6', u'ipaddr': u'unassigned', u'proto': u'down'})
skipping: [darkstar] => (item={u'status': u'up', u'intf': u'NVI0', u'ipaddr': u'172.16.0.2', u'proto': u'up'})
skipping: [core1a] => (item={u'status': u'down', u'intf': u'FastEthernet1/0/7', u'ipaddr': u'unassigned', u'proto': u'down'})
skipping: [darkstar] => (item={u'status': u'up', u'intf': u'Tunnel0', u'ipaddr': u'172.16.0.34', u'proto': u'up'})
skipping: [core1a] => (item={u'status': u'down', u'intf': u'FastEthernet1/0/8', u'ipaddr': u'unassigned', u'proto': u'down'})
skipping: [darkstar] => (item={u'status': u'up', u'intf': u'Vlan1', u'ipaddr': u'unassigned', u'proto': u'down'})
skipping: [core1a] => (item={u'status': u'down', u'intf': u'FastEthernet1/0/9', u'ipaddr': u'unassigned', u'proto': u'down'})
skipping: [darkstar] => (item={u'status': u'up', u'intf': u'Vlan2', u'ipaddr': u'172.16.2.1', u'proto': u'up'})
skipping: [core1a] => (item={u'status': u'down', u'intf': u'FastEthernet1/0/10', u'ipaddr': u'unassigned', u'proto': u'down'})
skipping: [darkstar] => (item={u'status': u'up', u'intf': u'Vlan3', u'ipaddr': u'172.16.2.33', u'proto': u'up'})
skipping: [core1a] => (item={u'status': u'down', u'intf': u'FastEthernet1/0/11', u'ipaddr': u'unassigned', u'proto': u'down'})
skipping: [darkstar] => (item={u'status': u'up', u'intf': u'Vlan4', u'ipaddr': u'172.16.2.129', u'proto': u'down'})
skipping: [core1a] => (item={u'status': u'down', u'intf': u'FastEthernet1/0/12', u'ipaddr': u'unassigned', u'proto': u'down'})
skipping: [core1a] => (item={u'status': u'down', u'intf': u'FastEthernet1/0/13', u'ipaddr': u'unassigned', u'proto': u'down'})
skipping: [core1a] => (item={u'status': u'down', u'intf': u'FastEthernet1/0/14', u'ipaddr': u'unassigned', u'proto': u'down'})
skipping: [core1a] => (item={u'status': u'down', u'intf': u'FastEthernet1/0/15', u'ipaddr': u'unassigned', u'proto': u'down'})
skipping: [core1a] => (item={u'status': u'down', u'intf': u'FastEthernet1/0/16', u'ipaddr': u'unassigned', u'proto': u'down'})
skipping: [core1a] => (item={u'status': u'down', u'intf': u'FastEthernet1/0/17', u'ipaddr': u'unassigned', u'proto': u'down'})
skipping: [core1a] => (item={u'status': u'down', u'intf': u'FastEthernet1/0/18', u'ipaddr': u'unassigned', u'proto': u'down'})
skipping: [core1a] => (item={u'status': u'down', u'intf': u'FastEthernet1/0/19', u'ipaddr': u'unassigned', u'proto': u'down'})
skipping: [core1a] => (item={u'status': u'down', u'intf': u'FastEthernet1/0/20', u'ipaddr': u'unassigned', u'proto': u'down'})
skipping: [core1a] => (item={u'status': u'down', u'intf': u'FastEthernet1/0/21', u'ipaddr': u'unassigned', u'proto': u'down'})
skipping: [core1a] => (item={u'status': u'down', u'intf': u'FastEthernet1/0/22', u'ipaddr': u'unassigned', u'proto': u'down'})
skipping: [core1a] => (item={u'status': u'up', u'intf': u'FastEthernet1/0/23', u'ipaddr': u'unassigned', u'proto': u'up'})
skipping: [core1a] => (item={u'status': u'up', u'intf': u'FastEthernet1/0/24', u'ipaddr': u'unassigned', u'proto': u'up'})
skipping: [core1a] => (item={u'status': u'down', u'intf': u'GigabitEthernet1/0/1', u'ipaddr': u'unassigned', u'proto': u'down'})
skipping: [core1a] => (item={u'status': u'down', u'intf': u'GigabitEthernet1/0/2', u'ipaddr': u'unassigned', u'proto': u'down'})
skipping: [core1a] => (item={u'status': u'up', u'intf': u'Port-channel11', u'ipaddr': u'unassigned', u'proto': u'up'})
ok: [core1a] => (item={u'status': u'up', u'intf': u'Loopback0', u'ipaddr': u'172.16.0.1', u'proto': u'up'})

TASK: [debug var=loopbacks] *************************************************** 
ok: [darkstar] => {
    "loopbacks": {
        "intf": "Loopback0", 
        "ipaddr": "172.16.0.2", 
        "proto": "up", 
        "status": "up"
    }
}
ok: [core1a] => {
    "loopbacks": {
        "intf": "Loopback0", 
        "ipaddr": "172.16.0.1", 
        "proto": "up", 
        "status": "up"
    }
}

PLAY RECAP ******************************************************************** 
core1a                     : ok=3    changed=0    unreachable=0    failed=0   
darkstar                   : ok=3    changed=0    unreachable=0    failed=0 

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment