78 lines
2.7 KiB
YAML
78 lines
2.7 KiB
YAML
---
|
|
# ASA / Min-Facts
|
|
# ===============
|
|
# Collects minimum facts from ASA in single or clustered mode
|
|
#
|
|
# 2023-08-26 stefan init
|
|
#
|
|
- name: "Block: Min-Facts Firewall-Single"
|
|
block:
|
|
|
|
- name: "Firewall-Single: Get Min-Facts"
|
|
cisco.asa.asa_command:
|
|
commands:
|
|
- show run | include hostname
|
|
- show version
|
|
- show inventory
|
|
register: asa_vars
|
|
|
|
- name: "Firewall-Single: Extract Min-Facts"
|
|
set_fact:
|
|
ansible_net_hostname: "{{ asa_vars.stdout[0].split()[1] }}"
|
|
ansible_net_version: "{{ asa_vars.stdout[1].split('\n')[0].split()[6] }}"
|
|
ansible_net_model: "{{ asa_vars.stdout[2].split('\n')[1].split()[1] }}"
|
|
ansible_net_serialnum: "{{ asa_vars.stdout[2].split('\n')[1].split()[7] }}"
|
|
|
|
- name: "Firewall-Single: Display Min-Facts"
|
|
debug:
|
|
msg: "Device: {{ ansible_net_hostname }} is model: {{ ansible_net_model }} with serial: {{ ansible_net_serialnum }} and version: {{ ansible_net_version }}"
|
|
|
|
when: role == "Firewall-Single"
|
|
|
|
|
|
|
|
- name: "Block: Min-Facts Firewall-Cluster"
|
|
block:
|
|
|
|
- name: "Firewall-Cluster: Get Min-Facts Primary"
|
|
cisco.asa.asa_command:
|
|
commands:
|
|
- show run | include hostname
|
|
- show version
|
|
- show inventory
|
|
register: asa_vars_primary
|
|
|
|
- name: "Firewall-Cluster: Get Min-Facts Failover"
|
|
cisco.asa.asa_command:
|
|
commands:
|
|
- failover exec mate show run | include hostname
|
|
- failover exec mate show version
|
|
- failover exec mate show inventory
|
|
register: asa_vars_failover
|
|
ignore_errors: yes
|
|
|
|
- name: "Firewall-Cluster: Extract Min-Facts Hostname/Version"
|
|
set_fact:
|
|
ansible_net_hostname: "{{ asa_vars_primary.stdout[0].split()[1] }}"
|
|
ansible_net_version: "{{ asa_vars_primary.stdout[1].split('\n')[0].split()[6] }}"
|
|
|
|
- name: "Firewall-Cluster: Extract Min-Facts Stacked Models"
|
|
set_fact:
|
|
ansible_net_stacked_models:
|
|
- "{{ asa_vars_primary.stdout[2].split('\n')[1].split()[1] }}"
|
|
- "{{ asa_vars_failover.stdout[2].split('\n')[1].split()[1] }}"
|
|
ignore_errors: yes
|
|
|
|
- name: "Firewall-Cluster: Extract Min-Facts Stacked Serials"
|
|
set_fact:
|
|
ansible_net_stacked_serialnums:
|
|
- "{{ asa_vars_primary.stdout[2].split('\n')[1].split()[7] }}"
|
|
- "{{ asa_vars_failover.stdout[2].split('\n')[1].split()[7] }}"
|
|
ignore_errors: yes
|
|
|
|
- name: "Firewall-Cluster: Display Min-Facts"
|
|
debug:
|
|
msg: "Device: {{ ansible_net_hostname }} is model: {{ ansible_net_stacked_models }} with serial: {{ ansible_net_stacked_serialnums }} and version: {{ ansible_net_version }}"
|
|
|
|
when: role == "Firewall-Cluster"
|