如何在将include_tasks与不存在的目录一起使用时禁止显示警告?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何在将include_tasks与不存在的目录一起使用时禁止显示警告?相关的知识,希望对你有一定的参考价值。
鉴于以下剧本(使用Ansible 2.4.3):
- name: foo
hosts: foo
connection: local
tasks:
- include_tasks: "{{item}}"
with_fileglob: "foodir/*.yml"
当foodir
目录不存在时,Ansible会输出警告。
TASK [include_tasks] ****************************
[WARNING]: Unable to find 'foodir' in expected paths.
即使在添加when: false
时,此警告也会被打印出来,因此即使检查目录是否存在,它也会被打印出来。
如何抑制此警告?
(显然,在包含任务之前确保目录存在是一种简单的解决方法)
答案
此警告由fileglob
查找插件生成(由find_file_in_search_path
的LookupBase
更精确)。所以在你点击任何when
声明之前就已经发生了。
因此,您要么检查路径是否存在,并且不要尝试运行with_fileglob
(通过将其分成另一个文件,我猜)。
或补丁插件here设置ignore_missing=True
。
以上是关于如何在将include_tasks与不存在的目录一起使用时禁止显示警告?的主要内容,如果未能解决你的问题,请参考以下文章