было как, запускаешь 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. Довольно удобно, плейбуки "чище" получаются.
Обсуждают сегодня