diff --git a/leap-upgrades/upgrade-utilities/mariadb-repo-cleanup.yml b/leap-upgrades/upgrade-utilities/mariadb-repo-cleanup.yml
new file mode 100644
index 00000000..59657b34
--- /dev/null
+++ b/leap-upgrades/upgrade-utilities/mariadb-repo-cleanup.yml
@@ -0,0 +1,33 @@
+---
+# Copyright 2017, Rackspace US, Inc.
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+- name: MariaDB apt sources cleanup
+  hosts: all
+  max_fail_percentage: 100
+  gather_facts: false
+  user: root
+  tasks:
+    - name: Find old sources
+      find:
+        path: "/etc/apt/sources.list.d/"
+        patterns: "^(?!MariaDB)(.+)|(.+)(?<!MariaDB)\\.list$"
+        contains: "^.*maria.*$"
+        use_regex: true
+      register: old_sources
+    - name: Remove old sources
+      file:
+        path: "{{ item.path }}"
+        state: absent
+      with_items: "{{ old_sources.files | default([]) }}"
diff --git a/leap-upgrades/upgrade.sh b/leap-upgrades/upgrade.sh
index 8a1c6b4c..7fad31b4 100755
--- a/leap-upgrades/upgrade.sh
+++ b/leap-upgrades/upgrade.sh
@@ -129,6 +129,7 @@ if [[ ! -f "/opt/leap42/openstack-ansible-upgrade-hostupgrade.leap" ]]; then
     link_release "/opt/leap42/openstack-ansible-${NEWTON_RELEASE}"
     RUN_TASKS=()
     RUN_TASKS+=("${UPGRADE_UTILS}/pip-conf-purge.yml")
+    RUN_TASKS+=("${UPGRADE_UTILS}/mariadb-repo-cleanup.yml")
     RUN_TASKS+=("openstack-hosts-setup.yml")
     run_items "${REDEPLOY_OA_FOLDER}"
     tag_leap_success "upgrade-hostupgrade"