--- - name: update repo-cache for debian/ubuntu become: true apt: update_cache: true cache_valid_time: 3600 when: ansible_os_family == 'Debian' - name: update repo-cache for debian/ubuntu become: true dnf: update_cache: true when: - ansible_os_family == 'RedHat' and ansible_distribution_version | float >= 8 - name: install base packages for all operating systems become: true package: name: "{{ base__packages }}" state: "{{ base__package_state }}" - name: install python3 for all non-legacy systems become: true package: name: "{{ base__python3_packages }}" state: "{{ base__package_state }}" when: | ansible_distribution == 'Ubuntu' and ansible_distribution_version | float >= 16.0 or ansible_os_family == 'RedHat' and ansible_distribution_version | float >= 7 or ansible_distribution == 'Debian' and ansible_distribution_version | float >= 7 - name: install python for systems where python3 packages are renamed to python become: true package: name: "{{ base__python_packages }}" state: "{{ base__package_state }}" when: ansible_os_family == 'Archlinux' - name: install packages for all non-legacy systems become: true package: name: "{{ base__modern_packages }}" state: "{{ base__package_state }}" when: | ansible_distribution == 'Ubuntu' and ansible_distribution_version | float >= 16.0 or ansible_os_family == 'RedHat' and ansible_distribution_version | float >= 7 or ansible_distribution == 'Debian' and ansible_distribution_version | float >= 8 or ansible_os_family == 'Archlinux' - name: install packages for all non-legacy Debian/Ububntu systems become: true package: name: "{{ base__debian_packages }}" state: "{{ base__package_state }}" when: | ansible_distribution == 'Ubuntu' and ansible_distribution_version | float >= 16.0 or ansible_distribution == 'Debian' and ansible_distribution_version | float >= 8 - name: install packages for all reasonable non-legacy systems become: true package: name: "{{ base__linux_packages }}" state: "{{ base__package_state }}" when: | ansible_distribution == 'Ubuntu' and ansible_distribution_version | float >= 18.0 or ansible_distribution == 'Fedora' and ansible_distribution_version | float >= 32 or ansible_distribution == 'Debian' and ansible_distribution_version | float >= 9 or ansible_os_family == 'Archlinux'