ansible自定义变量在when中判断
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ansible自定义变量在when中判断相关的知识,希望对你有一定的参考价值。
1、hosts中定义
在hosts自定义模块中新添加了一个字段
vi hosts
[test]
10.10.10.10 iswar=true
[all:vars]
ansible_ssh_port=22
ansible_ssh_user=root
ansible_ssh_pass=123456
iswar这个变量想在yaml中进行when判断
方法一:
when: " iswar == true"
这个样子可以使用,但是会报一个warning
"[WARNING] when statements should not include jinja2 templating delimiters such as or % %. Found: iswar == true"
方法二:
when: iswar == "true"
但是下面两种方式就不行,这两种都不会进行判断
when: iswar == true
when: "iswar == true"
2、在vars_files中定义
cat test_module/test_module.yaml
iswar: true
vars_files: test_module/test_module.yaml
iswar这个变量想在yaml中进行when判断
方法一:
when: " iswar == true"
还是会报那个warning
方法二:
when: iswar == true
#注意此处true不能有"",如果有""则不判断
其他方式几乎都不判断
以上是关于ansible自定义变量在when中判断的主要内容,如果未能解决你的问题,请参考以下文章