以下ansible代码的含义是退出并发送当机器是生产服务器时我们无法重新启动的消息
生产服务器可以通过机器主机名中的“prod”一词来识别
hostname
server109.prod.domain.com
但如果机器名称包含实验室,如下所示
server109.lab.domain.com
然后我们不想退出
- name: exit if reboot needed
fail:
msg: after kernel update need reboot but reboot will not be on production machines
when: res.reboot_required
所以我的问题是如何更新“何时”,以防当机器名称包含“实验室”时我们不想退出
答案1
根据你的例子和 Ansible发现变量:事实和神奇变量这ansible_facts
将会
ansible_hostname: "server109"
ansible_domain: "lab.domain.com"
因此有条件的应该
when: (results.reboot_required) and (ansible_domain == "lab.domain.com")
或者
when: (results.reboot_required) and ("lab" in ansible_domain)
谢谢