Update ansible/roles/update/tasks/main.yml

This commit is contained in:
2022-11-05 12:31:08 +00:00
parent 2489ce00d8
commit 920bb6e95e

View File

@@ -4,31 +4,38 @@
args: args:
warn: false warn: false
register: updates register: updates
- name: display count - name: display count
debug: debug:
msg: "Found {{ updates.stdout_lines | length }} packages to be updated:\n\n{{ updates.stdout }}" msg: "Found {{ updates.stdout_lines | length }} packages to be updated:\n\n{{ updates.stdout }}"
- when: updates.stdout_lines | length > 0 - when: updates.stdout_lines | length > 0
block: block:
- name: install updates using yum - name: install updates using yum
yum: yum:
name: "*" name: "*"
state: latest state: latest
- name: install yum-utils - name: install yum-utils
package: package:
name: yum-utils name: yum-utils
- name: check if reboot is required - name: check if reboot is required
shell: needs-restarting -r shell: needs-restarting -r
failed_when: false failed_when: false
register: reboot_required register: reboot_required
changed_when: false changed_when: false
- when: updates.stdout_lines | length > 0 and reboot_required.rc != 0 - when: updates.stdout_lines | length > 0 and reboot_required.rc != 0
block: block:
- name: reboot the server if required - name: reboot the server if required
shell: sleep 3; reboot shell: sleep 3; reboot
ignore_errors: true ignore_errors: true
changed_when: false changed_when: false
async: 1 async: 1
poll: 0 poll: 0
- name: wait for server to come back after reboot - name: wait for server to come back after reboot
wait_for_connection: wait_for_connection:
timeout: 600 timeout: 600
@@ -36,4 +43,4 @@
register: reboot_result register: reboot_result
- name: reboot time - name: reboot time
debug: debug:
msg: "The system rebooted in {{ reboot_result.elapsed }} seconds." msg: "The system rebooted in {{ reboot_result.elapsed }} seconds."