Я сижу перед довольно сложным проектом Ansible, который мы используем для настройки наших локальных сред разработки (несколько виртуальных машин), и там есть одна роль, которая использует факты, собранные Ansible для настройки файла /etc/hosts
на каждой виртуальной машине. К сожалению, если вы хотите запустить playbook только для одного хоста (используя параметр -limit), факты с других хостов (очевидно) отсутствуют.
Есть ли способ заставить Ansible собирать факты на всех хостах, даже если вы ограничиваете Playbook одним конкретным хостом?
Мы попытались добавить игру в учебник для сбора фактов со всех хостов, но, конечно, это также ограничивается одним хостом, заданным параметром -limit. Если бы был способ заставить эту игру работать на всех хостах до того, как будет играть другая, это будет идеально.
Я немного искал Google и нашел решение с кэшированием фактов с помощью redis, но так как наша playbook используется локально, я хотел избежать необходимости в дополнительном программном обеспечении. Я знаю, это неважно, но я просто искал "более чистого", единственного решения и интересовался, если бы это существовало.