Это мой инвентарь:
[servers1]
ubuntu-vm1
ubuntu-vm2
ubuntu-vm3
[servers2]
centos-vm1
centos-vm2
centos-vm3
Что делает моя книга игр, так это проверяет необходимость перезагрузки сервера (я выяснил эту часть, поэтому я не буду публиковать ее здесь, это часть переменная reboot_stat
). Теперь я хочу добавить строку ansible_hostname
(имя сервера в инвентаре) в файл на моем локальном хосте, когда будет выполнено условие, что сервер должен быть перезагружен.
Вот как это выглядит сейчас:
- name: add to file what server needs a reboot
lineinfile:
path: /root/reboot-servers
line: '{{ inventory_hostname }}'
delegate_to: localhost
when: reboot_stat.stat.exists
Допустим, файл root/reboot-servers
выглядит следующим образом:
[servers1]
[servers2]
И, скажем, только ubuntu-vm1 и centos-vm2 требуется перезагрузка. Я хочу, чтобы при запуске playbook он добавлял строку под своей переменной hostname, чтобы файл выглядел следующим образом:
[servers1]
ubuntu-vm1
[servers2]
centos-vm2