如何在'with_first_found'中使用'skip:true'?

tec*_*raf 2 ansible ansible-playbook

我想在剧本中使用以下任务:

- include: "{{ prerequisites_file }}"
  with_first_found:
    - "prerequisites-{{ ansible_distribution }}.yml"
    - "prerequisites-{{ ansible_os_family }}.yml"
  loop_control:
    loop_var: prerequisites_file
Run Code Online (Sandbox Code Playgroud)

如果找不到与架构匹配的文件,我希望它能够通过.

当按原样运行时,在这种情况下,它会产生错误:

任务[ansible-playbook:include]***************************************
致命:[ ansible-playbook]:失败了!=> {"failed":true,"msg":"使用with_first_found时未找到文件.如果没有找到文件,请使用'skip:true'选项跳过此任务"}

我知道我最后可以添加一个虚拟文件,但如果我按照建议,我该如何在skip: true这里添加选项?

它绝对不是include模块的参数,它应该以某种方式绑定到with_first_found子句......

Kon*_*rov 10

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
Run Code Online (Sandbox Code Playgroud)