Я работаю над ролью, которая должна собрать только один факт.
Производительность вызывает беспокойство, и я знаю, что сбор фактов требует много времени.
Я ищу способ отфильтровать gather_facts
внутри playbook, это позволит мне собрать только необходимые факты.
Это возможно с помощью основного модуля настройки:
ansible -m setup -a 'filter=ansible_hostname' my_host
10.200.0.127 | success >> {
"ansible_facts": {
"ansible_hostname": "my_host"
},
"changed": false
}
Можно ли использовать эту функцию внутри playbook? Что-то вроде этого?
- hosts: all
sudo: yes
gather_facts: True
filter: "filter=ansible_*"
PS: приведенный выше код вызывает синтаксическое исключение.
EDIT 1: если кому-то нужно получить имя хоста, есть еще одна полезная переменная inventory_hostname.