diff --git a/test.yml b/test.yml index 20f6c02..a8e6844 100644 --- a/test.yml +++ b/test.yml @@ -2,7 +2,105 @@ - hosts: all become: true tasks: - - name: API Package Updater + - name: Update all servers (Debian/Ubuntu) apt: - upgrade: yes - update_cache: yes \ No newline at end of file + upgrade: dist + update_cache: yes + when: ansible_facts['os_family'] == "Debian" + + - name: Make sure Zypper is installed (Debian/Ubuntu) + apt: + name: zypper + state: present + when: ansible_facts['os_family'] == "Debian" + + - name: Install Docker (Debian/Ubuntu) + apt: + name: + - apt-transport-https + - ca-certificates + - curl + - gnupg-agent + - software-properties-common + state: present + when: ansible_facts['os_family'] == "Debian" + + - name: Add Docker GPG key (Debian/Ubuntu) + apt_key: + url: https://download.docker.com/linux/ubuntu/gpg + state: present + when: ansible_facts['os_family'] == "Debian" + + - name: Add Docker repository (Debian/Ubuntu) + apt_repository: + repo: deb [arch=amd64] https://download.docker.com/linux/ubuntu {{ ansible_distribution_release }} stable + state: present + when: ansible_facts['os_family'] == "Debian" + + - name: Install Docker (Debian/Ubuntu) + apt: + name: + - docker-ce + - docker-ce-cli + - containerd.io + state: present + when: ansible_facts['os_family'] == "Debian" + + - name: Install Docker Compose (Debian/Ubuntu) + get_url: + url: https://github.com/docker/compose/releases/download/1.29.2/docker-compose-Linux-x86_64 + dest: /usr/local/bin/docker-compose + mode: '0755' + when: ansible_facts['os_family'] == "Debian" + + - 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: 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: ansible_facts['os_family'] == "Debian" and needsRestartingDebian.stdout == "1" + + - name: Update all servers (Fedora) + dnf: + name: "*" + state: latest + when: ansible_facts['os_family'] == "RedHat" + + - name: Make sure dnf-utils is installed + dnf: + name: dnf-utils + state: present + when: ansible_facts['os_family'] == "RedHat" + + - name: Install Docker and Docker Compose (Fedora) + dnf: + name: + - docker + - docker-compose + state: present + 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: ansible_facts['os_family'] == "RedHat" and needsRestartingFedora.stdout == "1" \ No newline at end of file