Initial project commit
This commit is contained in:
47
tasks/check_boot_id.yml
Normal file
47
tasks/check_boot_id.yml
Normal file
@ -0,0 +1,47 @@
|
||||
---
|
||||
- name: Max check count reached
|
||||
ansible.builtin.fail:
|
||||
msg: "Max check count ({{ max_reboot_check }}) reached. Aborting after {{ reboot_check_count }} tries."
|
||||
when:
|
||||
- reboot_check_count | int >= max_reboot_check
|
||||
|
||||
- name: Increment check count
|
||||
ansible.builtin.set_fact:
|
||||
reboot_check_count: "{{ reboot_check_count | int + 1 }}"
|
||||
|
||||
- name: Current Iteration
|
||||
ansible.builtin.debug:
|
||||
msg: "{{ reboot_check_count }}"
|
||||
|
||||
- name: Wait for host to connect or try again
|
||||
block:
|
||||
- name: Wait for connection
|
||||
ansible.builtin.wait_for_connection:
|
||||
connect_timeout: 20
|
||||
sleep: 10
|
||||
delay: 70
|
||||
# delay: 10
|
||||
timeout: 1800
|
||||
# timeout: 10
|
||||
rescue:
|
||||
- name: Check again - RESCUE
|
||||
ansible.builtin.include_tasks: check_boot_id.yml
|
||||
|
||||
- name: Capture boot ID post reboot
|
||||
ansible.builtin.slurp:
|
||||
src: "{{ bootid_file }}"
|
||||
register: post_reboot_boot_id_raw
|
||||
|
||||
- name: Set post-reboot boot ID
|
||||
ansible.builtin.set_fact:
|
||||
post_reboot_boot_id: "{{ post_reboot_boot_id_raw['content'] | b64decode | trim }}"
|
||||
|
||||
- name: Debug boot IDs
|
||||
ansible.builtin.debug:
|
||||
msg: "{{ pre_reboot_boot_id }} == {{ post_reboot_boot_id }}"
|
||||
|
||||
- name: Check again
|
||||
ansible.builtin.include_tasks: check_boot_id.yml
|
||||
when:
|
||||
- pre_reboot_boot_id == post_reboot_boot_id
|
||||
- reboot_check_count | int < max_reboot_check
|
Reference in New Issue
Block a user