diff options
Diffstat (limited to 'resources/tools/testbed-setup/ansible/roles/cleanup/tasks/remove_package.yaml')
-rw-r--r-- | resources/tools/testbed-setup/ansible/roles/cleanup/tasks/remove_package.yaml | 31 |
1 files changed, 31 insertions, 0 deletions
diff --git a/resources/tools/testbed-setup/ansible/roles/cleanup/tasks/remove_package.yaml b/resources/tools/testbed-setup/ansible/roles/cleanup/tasks/remove_package.yaml new file mode 100644 index 0000000000..8f5ec8fefe --- /dev/null +++ b/resources/tools/testbed-setup/ansible/roles/cleanup/tasks/remove_package.yaml @@ -0,0 +1,31 @@ +--- +# file: roles/cleanup/tasks/remove_package.yaml + +- name: Remove package - Fix corrupted apt + shell: 'dpkg --configure -a' + when: > + ansible_distribution == 'Ubuntu' + tags: remove-package + +- name: Remove package - Check if {{ package }} is installed + shell: > + "dpkg-query -W -f='${Status}' {{ package }} | grep 'install ok installed'" + register: package_is_installed + failed_when: no + changed_when: no + when: > + ansible_distribution == 'Ubuntu' + tags: remove-package + +- name: Remove package - {{ package }} + apt: + name: '{{ package }}' + force: yes + purge: yes + state: absent + when: > + package is defined and + package != '' and + package_is_installed.rc == 0 and + ansible_distribution|lower == 'ubuntu' + tags: remove-package |