--- - name: install aptitude apt: name=aptitude state=installed become: true become_user: root when: ansible_os_family=="Debian" #- name: apt-get upgrade # apt: upgrade=safe # become: true # when: ansible_os_family=="Debian" - name: yum remove yum: name=ipa-client-common state=absent become: true become_user: root when: ansible_os_family=="RedHat" - name: yum upgrade yum: name=* state=latest disablerepo={{ yumdisablerepo|join(',') }} enablerepo={{ yumenablerepo|join(',') }} become: true become_user: root when: ansible_os_family=="RedHat" and yumdisablerepo is defined - name: Clear yum pending transaction command: yum-complete-transaction --cleanup-only become: true become_user: root when: ansible_os_family == 'RedHat' register: yumtransactioncleanup changed_when: "'No unfinished transactions left.' not in yumtransactioncleanup.stdout" - name: yum upgrade yum: name=* state=latest become: true become_user: root when: ansible_os_family=="RedHat" and yumdisablerepo is undefined - name: install kernel-devel yum: name=kernel-devel state=latest disablerepo={{ yumdisablerepo|join(',') }} enablerepo={{ yumenablerepo|join(',') }} become: true become_user: root when: ansible_os_family=="RedHat" and yumdisablerepo is defined - name: install kernel-devel yum: name=kernel-devel state=latest become: true become_user: root when: ansible_os_family=="RedHat" and yumdisablerepo is undefined - name: get kernel-devel version shell: rpm -q kernel-devel | cut -f 3,4 -d "-" | sort | tail -n 1 register: rpm_q_output when: ansible_os_family=="RedHat" check_mode: no changed_when: False args: warn: False - name: get kernel-devel version shell: dpkg -l linux-image* | grep "^ii" | grep "linux-image-[0-9]" | sed 's/\ \ */ /g' | cut -f 2 -d " " | cut -f 3-5 -d "-" register: dpkg_l_output when: ansible_os_family=="Debian" check_mode: no changed_when: False - name: get kernel version shell: uname -r register: uname_r_output check_mode: no changed_when: False - name: default dont reboot set_fact: reboot_now: false - name: debug1 debug: var=rpm_q_output - name: debug2 debug: var=uname_r_output - name: set reboot when kernel has changed set_fact: reboot_now: true when: ansible_os_family=="RedHat" and not uname_r_output.stdout in rpm_q_output.stdout - name: set reboot when kernel has changed set_fact: reboot_now: true when: ansible_os_family=="Debian" and not uname_r_output.stdout in dpkg_l_output.stdout - name: debug3 debug: var=reboot_now - name: restart machine shell: "sleep 5; sudo shutdown -r now" async: 2 poll: 1 ignore_errors: true become: true become_user: root when: reboot_now - name: waiting for server to come back wait_for_connection: sleep=60 timeout=600 delay=60 when: reboot_now