Ansible yum更新并重新启动
我刚开始使用Ansible,我的目标是更新多个linux发行版,并在更改后重新启动。此时,当我尝试检查2个不同的linux发行版时,系统将不会重新启动。当我试图只检查一个发行版(so 1 register:task_result)时,系统将重新启动并正常工作。以下是剧本代码:Ansible yum更新并重新启动,ansible,centos7,redhat,Ansible,Centos7,Redhat,我刚开始使用Ansible,我的目标是更新多个linux发行版,并在更改后重新启动。此时,当我尝试检查2个不同的linux发行版时,系统将不会重新启动。当我试图只检查一个发行版(so 1 register:task_result)时,系统将重新启动并正常工作。以下是剧本代码: --- - hosts: servers become: true tasks: - name: Upgrade all installed packages for RedHat yum:
---
- hosts: servers
become: true
tasks:
- name: Upgrade all installed packages for RedHat
yum:
name: '*'
state: latest
when: ansible_distribution == 'Red Hat Enterprise Linux' or ansible_distribution == 'RedHat'
register: task_result
- name: Upgrade all installed packages for CentOS
yum:
name: '*'
state: latest
when: ansible_distribution == 'CentOS'
register: task_result
- name: Reboot when there is a change
shell: "sleep 5 && reboot"
async: 1
poll: 0
when: task_result is changed
...
剧本的结果:
正如您所看到的,系统在重新启动时被跳过。有什么建议吗?我在您编写的时候测试了它,它在Centos 7的2.9版上运行正常。 您可以添加如下调试语句:
- 名称:打印任务结果 调试: var:task_结果