Sto lavorando a un ruolo che deve solo raccogliere un singolo fatto.Ansible - Raccolta di fatti con filtro all'interno di un Playbook
Prestazioni è una preoccupazione e so che raccogliendo i fatti è tempo che richiede.
Sto cercando un modo per filtrare gather_facts
all'interno di un playbook, questo mi permetterà di raccogliere solo i fatti richiesti.
Ciò è possibile utilizzando il modulo principale di configurazione:
ansible -m setup -a 'filter=ansible_hostname' my_host
10.200.0.127 | success >> {
"ansible_facts": {
"ansible_hostname": "my_host"
},
"changed": false
}
È possibile utilizzare questa funzionalità all'interno del playbook? Qualcosa come questo?
- hosts: all
sudo: yes
gather_facts: True
filter: "filter=ansible_*"
PS: Il codice precedente genera un'eccezione sintassi.
EDIT 1: Se qualcuno ha bisogno di ottenere il nome dell'host c'è anche un'altra variabile utile inventory_hostname.