LINUX.ORG.RU
решено ФорумAdmin

Ansible: как сделать чтобы роль выполнила только таски с определенным тегом в файле site.yml?

 


0

2

Что-то типа такого, только тут к роли присваеватся тег, а нужно чтобы роль выполнила только таски с тегом.

И не передавая параметр --tags в ansible-playbook

- hosts: somehost
  remote_user: '{{ user }}'
  roles:
    - { role: somerole, tags: 'some_tag' }

тэги одинакового названия? попробуй новую фичи второй ветки

- block

в чём проблема передать --tags?

anton_jugatsu ★★★★ ()
Ответ на: комментарий от anton_jugatsu

Один тег. Не понял как мне может помочь «block».

Вариант с ключом "--tags" не подходит по причине что в «site.yml» две роли. К тому же «site.yml» используется в других «site.yml».

Disova ()
Ответ на: комментарий от Disova

я твою юзкэйс не совсем понял. что ты хочешь сделать?

site.yml по бэст практисам должен быть один, он инклудит уже другие кукбуки.

опиши конкретно чего хочешь добиться.

block'ом можно объядинять таски.

anton_jugatsu ★★★★ ()
Ответ на: комментарий от anton_jugatsu

site.yml по бэст практисам должен быть один, он инклудит уже другие кукбуки.

Ну суть, «site.yml» это просто имя файла для примера, он может называться «test1.yml», если так понятней. Кукбуки это из другой кухни.

опиши конкретно чего хочешь добиться.

Указывать "--tags" внутри «site.yml», ожидаемый результат - роль выполняет только таски с тегом , а не все таски.

- hosts: somehost
  remote_user: someuser
  roles:
    - { role: somerole, only-with-tags: 'sometag' }
Disova ()
Последнее исправление: Disova (всего исправлений: 1 )
Ответ на: комментарий от Disova

плейбуки конечно)

насколько я знаю такого нет. Эта роль делает какую-то оркастрацию/деплой софта?

тогда только дробить на более мелкие роли. я не сторонник ставить тэги на тасках, только на ролях.

- { role: app_prep_host, tags: 'role::app:prephost' }

- { role: app_deploy, tags: 'role::app:deploy' }

anton_jugatsu ★★★★ ()

Вот что мне ответил один из разрабов.

The functionality does not current exist to select a tag on role import.

Disova ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.