Перезагрузите динамический инвентарь Ansible
Я использую Ansible для настройки экземпляров EC2 и развертывания приложения. Есть скрипт hosts, который собирает информацию о тегах, относящихся к серверам и группам. Я хотел бы запустить эти действия как одну книгу, так
Новые экземпляры создаются при необходимостиСкрипт Hosts загружает инвентарь (включая факты серверов)Развертывание playbook работаетОднако инвентарь загружается заранее, поэтому нет данных о серверах / группах, если серверы созданы / обновлены во время воспроизведения. Я могу 1) разделить игровые книги по предоставлению и развертыванию 2) использовать трюк add_host для эмуляции динамического инвентаризации при обновлении серверов, но у этих подходов есть недостатки.
Могу ли я заставить Ansible перезагрузить инвентарь? Мои тестовые файлы:hosts
сценарий:
#!/bin/sh
echo `date` >> log.log
echo "{\"standalone\":[\"localhost\"]}"
Образецplaybook.yml
:
---
- hosts: all
tasks:
- name: show inventory_hostname
command: echo {{ inventory_hostname }}
Я бегуansible-playbook -i hosts playbook.yml -v
и посмотретьдва работает:
$> cat log.log
Thu Mar 12 09:43:16 SAMT 2015
Thu Mar 12 09:43:16 SAMT 2015
gt; cat log.log
Thu Mar 12 09:43:16 SAMT 2015
Thu Mar 12 09:43:16 SAMT 2015
но я не нашел команду удвоить ее.