我想使用远程环境变量进行一些检查,可以从这样的格式读取
{{ ansible_env.NGINX_HOME }}
Run Code Online (Sandbox Code Playgroud)
这个"路径"或环境变量可能不存在,这也就是检查的目的.
但Ansible将此视为致命错误,显示错误消息
一个或多个未定义的变量:'dict object'没有属性'NGINX_HOME'
我该怎么办才能跳过这个?
jar*_*arv 12
如果变量未定义,使用Jinja过滤器可以指定默认值:
{{ ansible_env.NGINX_HOME|default('') }}
Run Code Online (Sandbox Code Playgroud)
如果该值不存在,则将该值默认为空字符串.
另一个选项是,如果您在任务中使用该var,则只有在定义了var时才能有条件地运行任务:
- shell: echo {{ ansible_env.NGINX_HOME}}
when: "'NGINX_HOME' in ansible_env"
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
4946 次 |
| 最近记录: |