From f939bf150fae4fe4a908d5a742396f04d4a7b471 Mon Sep 17 00:00:00 2001
From: Jesse Pretorius <jesse.pretorius@rackspace.co.uk>
Date: Wed, 8 Mar 2017 13:27:17 +0000
Subject: [PATCH] Upgrade: Make removal list distribution-specific

When trying to execute an upgrade the removal fails
if packages in the list are included that cannot be
found in one of the repositories configured.

This patch endeavours to only remove packages that
will be found.

Change-Id: I67cc225b25fca005cdba3bf67793b4f23d6ae82a
---
 tasks/galera_upgrade_pre.yml | 6 +-----
 vars/redhat-7.yml            | 5 +++++
 vars/ubuntu-16.04.yml        | 5 +++++
 3 files changed, 11 insertions(+), 5 deletions(-)

diff --git a/tasks/galera_upgrade_pre.yml b/tasks/galera_upgrade_pre.yml
index 5d02600e..48b55ba2 100644
--- a/tasks/galera_upgrade_pre.yml
+++ b/tasks/galera_upgrade_pre.yml
@@ -79,11 +79,7 @@
     name: "{{ item }}"
     state: absent
   with_items:
-    - "mariadb-galera-server*"
-    - "mariadb-server*"
-    - MariaDB-Galera-server
-    - MariaDB-server
-    - mysql-common
+    - "{{ galera_server_upgrade_packages_remove }}"
   tags:
     - galera-upgrade
     - galera-apt-packages
diff --git a/vars/redhat-7.yml b/vars/redhat-7.yml
index cbd76e34..212aafbd 100644
--- a/vars/redhat-7.yml
+++ b/vars/redhat-7.yml
@@ -39,6 +39,11 @@ galera_server_mariadb_distro_packages:
   - rsync
   - socat
 
+# The packages to uninstall during an upgrade from a previous version
+galera_server_upgrade_packages_remove:
+  - MariaDB-Galera-server
+  - MariaDB-server
+
 _galera_repo_url: "http://yum.mariadb.org/10.1/centos/7/x86_64"
 galera_repo:
   name: MariaDB
diff --git a/vars/ubuntu-16.04.yml b/vars/ubuntu-16.04.yml
index 33c35213..019d5e99 100644
--- a/vars/ubuntu-16.04.yml
+++ b/vars/ubuntu-16.04.yml
@@ -58,6 +58,11 @@ galera_server_mariadb_distro_packages:
   - rsync
   - socat
 
+# The packages to uninstall during an upgrade from a previous version
+galera_server_upgrade_packages_remove:
+  - mariadb-server
+  - mysql-common
+
 galera_debconf_items:
   - question: "mysql-server/root_password"
     name: "{{ galera_mariadb_server_package }}"