在我的vars文件中,我有一个有时会设置的变量,而其他时候我想动态设置它。例如,我有一个要安装的RPM。我可以将位置手动存储在变量中,或者如果我没有特定的位置,我想从Jenkins获取最新信息。我的问题是,如何检查变量是否未定义或为空,如果是,仅使用Jenkins的默认值(已存储在var中)?
这是我的想法:
...code which gets host_vars[jenkins_rpm]
- hosts: "{{ host }}"
tasks:
- name: Set Facts
set_fact:
jenkins_rpm: "{{ hostvars['localhost']['jenkins_rpm'] }}"
- name: If my_rpm is empty or not defined, just use the jenkins_rpm
set_fact: my_rpm=jenkins_rpm
when: !my_rpm | my_rpm == ""
Run Code Online (Sandbox Code Playgroud)
有default过滤器:
- set_fact:
my_rpm: "{{ my_rpm | default(jenkins_rpm) }}"
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
7195 次 |
| 最近记录: |