# (c) 2014, James Tanner # This file is part of Ansible # # Ansible is free software: you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation, either version 3 of the License, or # (at your option) any later version. # # Ansible is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License # along with Ansible. If not, see . - include: 'apt.yml' when: ansible_distribution in ('Ubuntu', 'Debian') - include: 'apt-multiarch.yml' when: ansible_distribution in ('Ubuntu', 'Debian') and ansible_userspace_architecture != apt_foreign_arch - include: 'apt-builddep.yml' when: ansible_distribution in ('Ubuntu', 'Debian') - include: upgrade.yml upgrade_type=dist when: ansible_distribution in ('Ubuntu', 'Debian') - name: Check if aptitude is installed command: dpkg-query --show --showformat='${db:Status-Abbrev}' aptitude register: aptitude_status when: ansible_distribution in ('Ubuntu', 'Debian') - debug: var=aptitude_status.stdout - name: Remove aptitude, if installed, to test fall-back to apt-get apt: pkg: aptitude state: absent when: - aptitude_status.stdout.find('ii') != -1 - include: "upgrade.yml aptitude_present={{ False | bool }} upgrade_type={{ item.upgrade_type }} force_apt_get={{ item.force_apt_get }}" when: - ansible_distribution in ('Ubuntu', 'Debian') with_items: - { upgrade_type: safe, force_apt_get: False } - { upgrade_type: full, force_apt_get: False } - { upgrade_type: safe, force_apt_get: True } - { upgrade_type: full, force_apt_get: True } - name: (Re-)Install aptitude, run same tests again apt: pkg: aptitude state: present - include: upgrade.yml upgrade_type={{ item.upgrade_type }} force_apt_get={{ item.force_apt_get }} when: - ansible_distribution in ('Ubuntu', 'Debian') with_items: - { upgrade_type: safe, force_apt_get: False } - { upgrade_type: full, force_apt_get: False } - { upgrade_type: safe, force_apt_get: True } - { upgrade_type: full, force_apt_get: True } - name: Remove aptitude if not originally present apt: pkg: aptitude state: absent when: - aptitude_status.stdout.find('ii') == -1