使用first_found执行Ansible查找并跳过

时间:2017-09-08 22:53:01

标签: ansible

我想使用first_found及其skip选项在Ansible中执行查找。我已经创建了以下游戏:

- name: Include group playbooks
  include: "{{lookup('first_found', dict=(files=[item + '.yml', 'empty.yml'], skip=true))}}"
  with_items: "{{group_names}}"

我收到此错误,但是:

ERROR! Unexpected Exception: '_raw_params'

如何通过skip选项?

1 个答案:

答案 0 :(得分:1)

首先,我怀疑你的dict=参数是否通过。请参阅我的other答案以获得正确的电话。

关于您的错误:first_found使用skip选项查找如果找不到任何内容则返回空列表 - 但include语句要求filename为自由格式参数。

你可以像这样解决它:

- name: Include group playbooks
  include: "{{ filename }}"
  when: filename is string
  vars:
    filename: "{{ lookup('first_found', dict(files=[item + '.yml', 'empty.yml'], skip=true)) }}"
  with_items: "{{group_names}}"