From 25a993c7a766b43d36bdda48813218d8e5b9a27e Mon Sep 17 00:00:00 2001 From: DeveloperDurp Date: Fri, 21 Oct 2022 17:12:26 -0500 Subject: [PATCH] added updates --- roles/update/tasks/main.yml | 39 +++++++++++++++++++++++++++++++++++++ update.yml | 6 ++++++ 2 files changed, 45 insertions(+) create mode 100644 roles/update/tasks/main.yml create mode 100644 update.yml diff --git a/roles/update/tasks/main.yml b/roles/update/tasks/main.yml new file mode 100644 index 0000000..9d663de --- /dev/null +++ b/roles/update/tasks/main.yml @@ -0,0 +1,39 @@ +- name: check packages for updates + shell: yum list updates | awk 'f;/Updated Packages/{f=1;}' | awk '{ print $1 }' + changed_when: updates.stdout_lines | length > 0 + args: + warn: false + register: updates +- name: display count + debug: + msg: "Found {{ updates.stdout_lines | length }} packages to be updated:\n\n{{ updates.stdout }}" +- when: updates.stdout_lines | length > 0 + block: + - name: install updates using yum + yum: + name: "*" + state: latest + - name: install yum-utils + package: + name: yum-utils + - name: check if reboot is required + shell: needs-restarting -r + failed_when: false + register: reboot_required + changed_when: false +- when: updates.stdout_lines | length > 0 and reboot_required.rc != 0 + block: + - name: reboot the server if required + shell: sleep 3; reboot + ignore_errors: true + changed_when: false + async: 1 + poll: 0 + - name: wait for server to come back after reboot + wait_for_connection: + timeout: 600 + delay: 20 + register: reboot_result + - name: reboot time + debug: + msg: "The system rebooted in {{ reboot_result.elapsed }} seconds." \ No newline at end of file diff --git a/update.yml b/update.yml new file mode 100644 index 0000000..9cc93e9 --- /dev/null +++ b/update.yml @@ -0,0 +1,6 @@ +--- +- hosts: all + gather_facts: yes + become: yes + roles: + - update \ No newline at end of file