ansible自定义变量在when中判断
2024-11-26 09:44:35 阅读次数:21
ansible
1、hosts和-e中定义
在hosts自定义模块中新添加了一个字段
vi hosts
[test]
10.10.10.10 iswar=true
[all:vars]
ansible_ssh_port=22
ansible_ssh_user=root
ansible_ssh_pass=123456
在命令行传递参数
ansible-playbook test.yaml -i hosts -e "iswar=true"
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不能有"",如果有""则不判断
其他方式几乎都不判断
版权声明:本文内容来自第三方投稿或授权转载,原文地址:https://blog.51cto.com/u_13236892/5714631,作者:哭泣的馒头,版权归原作者所有。本网站转在其作品的目的在于传递更多信息,不拥有版权,亦不承担相应法律责任。如因作品内容、版权等问题需要同本网站联系,请发邮件至ctyunbbs@chinatelecom.cn沟通。
上一篇:MATLAB求解微分方程和微分方程组的详细分析
下一篇:CentOS 入门必备基础知识