ansible中的flush_handlers的替代方法

时间:2018-11-20 19:51:38

标签: ansible ansible-2.x

我的剧本中有处理程序,我想立即触发这些通知。在不调用meta_handler = flush_handler的情况下如何实现? 在ansibel 2.5.6中可以正常工作,但是在此版本之后,显示警告,提示

 [WARNING]: flush_handlers task does not support when conditional

任何帮助将不胜感激。

1 个答案:

答案 0 :(得分:1)

这是meta: flush_handlers doesn't honor when clause #41313个未解决的问题。

引用我的comment

让我描述一个有效的情况(如下)。任务abc.yml完成之后和任务def.yml开始之前,需要“ flush_hadlers”。但是,只有OS为RH时,才会导入带有任务xyz.yml的文件。这里Ansible抱怨:

[WARNING]: flush_handlers task does not support when conditional

能够抑制警告会很好。

# cat xyz.yml
- include_tasks: abc.yml
- meta: flush_handlers
- include_tasks: def.yml

# cat playbook.yml
  ...
  tasks:
    - import_tasks: xyz.yml
      when: (ansible_os_family == "RedHat" )