2016-12-09 5 views
1

В настоящее время я передам параметр для включения и использования этой переменной в другом файле для проверки условно, какой блок выполнить.Как отфильтровать задачи из инструкции include

например,

- include: tasks/common.yml param=dns 

задачи/common.yml:

--- 
- block: 
    - name: do something interesting 
    when: param == "dns" 
- block: 
    - name: do another thing 
    when: param == "ip" 

Этот метод работает, однако в моем выходе все те задачи, которые не соответствуют условию отображаются как пропуск. Поскольку у меня есть десятки задач и вы пытаетесь повторно использовать некоторые из них, я вижу много пропущенных задач.

Есть ли лучший способ сделать это? Использование ansible 2.2

ответ

0

В этой книге нет поддержки в игровой книге или в недоступных параметрах. Один из способов заключается в том, чтобы настроить вашу возможность не показывать пропущенные задачи.

См: stdout_callback

Новое в версии 2.0.

Этот параметр позволяет переопределить стандартный вывод по умолчанию обратного вызова для анзибль-пьес:

stdout_callback = Скиппи

Редактировать ваш анзибль конфигурационный файл (обычно /etc/ansible/ansible.cfg) и добавьте эту строку под defaults разделе

stdout_callback = skippy 

, который сообщает, что невозможно отображать пропущенные задачи.

Перед установкой в ​​skippy

TASK [Run scripts] ************************************************************* 
changed: [localhost] => (item=1) 
skipping: [localhost] => (item=2) 

После установки в skippy

TASK [Run scripts] ************************************************************* 
changed: [localhost] => (item=1)