diff --git a/update_machines.yml b/update_machines.yml index b582a39..64fb48b 100644 --- a/update_machines.yml +++ b/update_machines.yml @@ -2,25 +2,53 @@ - hosts: all become: true tasks: - - name: Update all servers - become: true + - name: Update all servers (Debian/Ubuntu) apt: upgrade: dist update_cache: yes + when: ansible_facts['os_family'] == "Debian" - - name: Make sure Zypper is installed - ansible.builtin.apt: - name: "zypper" - state: installed + - name: Make sure Zypper is installed (Debian/Ubuntu) + apt: + name: zypper + state: present + when: ansible_facts['os_family'] == "Debian" - - name: See if pct needs a reboot - ansible.builtin.shell: "needs-restarting -r > /dev/null; echo $?" - register: needsRestarting - - name: debug - ansible.builtin.apt: - msg: "{{ needsRestarting }}" + - name: See if a reboot is needed for Ubuntu/Debian pct + shell: "needs-restarting -r > /dev/null; echo $?" + register: needsRestartingDebian + changed_when: false + when: ansible_facts['os_family'] == "Debian" - - name: Reboot the Container - ansible.builtin.reboot: + - name: Debug needsRestartingDebian + debug: + msg: "Reboot needed: {{ needsRestartingDebian.stdout }}" + when: ansible_facts['os_family'] == "Debian" + + - name: Reboot the server if necessary (Debian/Ubuntu) + reboot: reboot_timeout: 600 - when: needsRestarting.stdout == "1" + when: needsRestartingDebian.stdout == "1" + + - name: Update all servers (Fedora) + dnf: + name: "*" + state: latest + when: ansible_facts['os_family'] == "RedHat" + + - name: See if a reboot is needed (Fedora) + shell: "needs-restarting -r > /dev/null; echo $?" + register: needsRestartingFedora + changed_when: false + when: ansible_facts['os_family'] == "RedHat" + + - name: Debug needsRestartingFedora + debug: + msg: "Reboot needed: {{ needsRestartingFedora.stdout }}" + when: ansible_facts['os_family'] == "RedHat" + + - name: Reboot the server if necessary (Fedora) + reboot: + reboot_timeout: 600 + when: needsRestartingFedora.stdout == "1" +