Skip to content

Instantly share code, notes, and snippets.

@rubot
Forked from fia5000/ansible-reboot.yaml
Created January 10, 2020 14:42
Show Gist options
  • Save rubot/e78b3f285c6b99ea1c3b74db124e21b4 to your computer and use it in GitHub Desktop.
Save rubot/e78b3f285c6b99ea1c3b74db124e21b4 to your computer and use it in GitHub Desktop.
ansible waiting for reboot, really really works!
- name: 'check if reboot is required'
shell: if [ $(readlink -f /vmlinuz) != /boot/vmlinuz-$(uname -r) ]; then echo 'yes'; else echo 'no'; fi
ignore_errors: true
register: reboot
- name: 'reboot...'
shell: nohup bash -c 'sleep 2 && shutdown -r now "Ansible kernel update applied"' &
async: 0
poll: 0
ignore_errors: true
when: reboot.stdout.find('yes') != -1
register: rebooting
- name: 'waiting...'
local_action: wait_for host={{ ansible_host | default(inventory_hostname,boolean=True) }} search_regex='OpenSSH' port=22 state='started' delay=30 timeout=300
become: no
when: rebooting|changed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment