было как, запускаешь ansible-playbook playbook.yml --tags service1 и запускалась нужная роль
playbook.yml
- include_role:
name: service1
tags:
- service1
roles/service1/tasks/main.yml (без каких-либо тэгов)
- name: Some task
....
В новой же версии это сломалось (может и раньше)
Решение этому есть как описано в тикете (https://github.com/ansible/ansible/issues/35459), добавить такой же тэг к каждой таске, но это очень проблемно.
Может мне кто-нибудь объяснить новую политику партии на этот счет и есть ли какая-нибудь возможность обойти (кроме отката на предыдущую версию) ?
А почему include_role, а не просто role? roles: - role: service1 tags: - service1
Вообще, для некоторых своих ролей я делал так, в role_name/tasks/main.yml пишешь: - import_tasks: main_payload.yml tags: - role_name Ну и всю логику перекладываешь в role_name/tasks/main_payload.yml. Довольно удобно, плейбуки "чище" получаются.
Обсуждают сегодня