gpt4 book ai didi

ansible - 如果为空或未使用 ansible 定义,则设置变量

转载 作者:行者123 更新时间:2023-12-02 16:51:41 25 4
gpt4 key购买 nike

在我的 ansible 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 == ""

最佳答案

有一个默认过滤器:

- set_fact:
my_rpm: "{{ my_rpm | default(jenkins_rpm) }}"

关于ansible - 如果为空或未使用 ansible 定义,则设置变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44655267/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com