我有一些输出变量。大约有 4 种不同类型的错误条件可能存在,并且有一个成功条件,我使用
when
条件进行检查。但它更像是一个 if else if else if else 条件。如果第一个条件成立,我什至不想检查第二个、第三个和第四个条件并跳到最终的摘要任务。
如何实施。
Ansible 是一种配置管理工具,您可以使用它声明状态,理想情况下是幂等。
以及一个成功的条件,我使用when条件进行检查。
由于存在一种正确的状态,因此只能在剧本中定义该状态。那就不需要检查了。
除此之外,还有 条件
为了实现你的目标,你应该看看 turn ... if then 逻辑为布尔表达式。
此外,这里有很多Q&A,已经回答了你的问题。
if
else
构建If
else
语法If
else
if
else
基于收集事实的条件这个具有多个
if
条件的示例可能会对您有所帮助:
- name: Example playbook
hosts: 127.0.0.1
connection: local
vars_prompt:
- name: env
prompt: Enter environment name.
private: false
tasks:
- name: Debug
ansible.builtin.debug:
msg: "{{ 'This is stage' if env == 'stage' else 'This is prod' if env == 'prod' }}"