2016-09-17 1 views
2

Я хотел бы использовать следующую задачу в сборник пьес:Как использовать 'skip: true' с 'with_first_found'?

- include: "{{ prerequisites_file }}" 
    with_first_found: 
    - "prerequisites-{{ ansible_distribution }}.yml" 
    - "prerequisites-{{ ansible_os_family }}.yml" 
    loop_control: 
    loop_var: prerequisites_file 

Я хотел бы, чтобы просто пройти, если не было найдено ни одного файла, соответствующие архитектуры.

При запуске, как есть, в таком случае, она выдает ошибку:

TASK [ansible-playbook : include] ***************************************
fatal: [ansible-playbook]: FAILED! => {"failed": true, "msg": "No file was found when using with_first_found. Use the 'skip: true' option to allow this task to be skipped if no files are found"}

Я знаю, что я могу добавить фиктивный файл в конце, но если бы я должен был следовать советам, как это я Предполагалось добавить здесь skip: true?

Это, безусловно, не является аргументом include модуля, он должен быть каким-то образом связан с with_first_found п ...

ответ

6

with_first_found имеет много вариаций параметров.
Взгляните на first_found.py - в начале файла есть несколько примеров.

Отвечая на Ваш вопрос:

- include: "{{ prerequisites_file }}" 
    with_first_found: 
    - files: 
     - "prerequisites-{{ ansible_distribution }}.yml" 
     - "prerequisites-{{ ansible_os_family }}.yml" 
     skip: true 
    loop_control: 
    loop_var: prerequisites_file 
Смежные вопросы