У меня есть файл hosts, в котором указан сервер, принадлежащий нескольким группам:
[web]
192.168.45.37
[integration]
192.168.45.37
[database]
192.168.45.37
В пьесе к разным группам применяются разные роли:
- hosts: all
roles:
- { role: base, tags: ['base'] }
- { role: logstash, tags: ['logstash'] }
- hosts: database
roles:
- { role: mysql, tags: ['database', 'mysql'] }
- { role: mysql-backup, tags: ['database', 'mysql', 'backup'] }
- hosts: web
roles:
- { role: nginx, tags: ['web', 'nginx'] }
- { role: ssl-certs, tags: ['web', 'ssl-certs'] }
- hosts: integration
roles:
- { role: jetty, tags: ['integration', 'jetty'] }
Моя проблема в том, что когда я запускаю playbook, пытаясь ограничить его только «ролями», необходимыми, указав «группу» с аргументом «--limit», например.
ansible-playbook -i hosts site.yml -l integration
В итоге он запускает все игры против сервера. Почему это происходит? Могу ли я заставить его просто запускать набор игр/ролей, связанных с этой конкретной группой серверов?