Я хотел бы иметь возможность запускать доступную задачу только в том случае, если хост текущей playbook не принадлежит к определенной группе. В полу псевдокоде:
- name: my command
command: echo stuff
when: "if {{ ansible_hostname }} not in {{ ansible_current_groups }}"
Как мне это сделать?
This one looks easy to fix. It seems that there is a value started with a quote, and the YAML parser is expecting to see the line ended with the same kind of quote.
when: inventory_hostname not in groups.certain_groups
inventory_hostname in groups['groupname']
в тех случаях, когда сам раствор не существует, Ansible выдаст ошибку типа «Убедитесь, что имя вашей переменной не содержит недопустимых символов, таких как '-': аргумент типа 'StrictUndefined' не повторяется»Вы можете установить управляющую переменную в файлах vars, расположенных внутри
group_vars/
или непосредственно в файле hosts, например так:И запускать такие задачи:
источник