
Update repos and packages to install the server for MariaDB 10.1, the current stable release. Several improvements have been made to improve the upgrade process and an upgrade from 10.0 has been included in the test playbooks. Make use of the yum_repository module for installing on yum based systems and give the apt repository files consistent names, 'MariaDB' and 'Percona' for easier maintenance and handling of upgrades going forward. Depends-On: I8939703f26e5d8adc393b984266f4cad7a6e0b4c Change-Id: Ib6409f1fcf4a664b65dbe01372a19509d02d70a4
90 lines
2.2 KiB
YAML
90 lines
2.2 KiB
YAML
---
|
|
# Copyright 2016, 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: Set fact to ignore cluster state
|
|
set_fact:
|
|
galera_ignore_cluster_state: true
|
|
tags:
|
|
- galera-upgrade
|
|
|
|
- name: Stop MariaDB
|
|
service:
|
|
name: mysql
|
|
state: stopped
|
|
register: galera_restart_fall_back
|
|
until: galera_restart_fall_back | success
|
|
retries: 3
|
|
delay: 5
|
|
tags:
|
|
- galera-upgrade
|
|
|
|
# Stop through the init script in case the service
|
|
# was initially started outside of systemctl.
|
|
- name: Stop mysql
|
|
command: /etc/init.d/mysql stop
|
|
changed_when: false
|
|
tags:
|
|
- galera-upgrade
|
|
|
|
# TODO: Remove the following three tasks in Pike
|
|
# They're only required during upgrades transitioning to a
|
|
# statically named apt sources file.
|
|
- name: Find old sources
|
|
command: >
|
|
grep -rnil maria /etc/apt/sources.list.d/ --exclude MariaDB.list
|
|
changed_when: false
|
|
failed_when: false
|
|
register: old_sources
|
|
tags:
|
|
- galera-upgrade
|
|
- galera-apt-packages
|
|
|
|
- name: Remove old sources
|
|
file:
|
|
path: "{{ item }}"
|
|
state: absent
|
|
with_items: "{{ old_sources.stdout_lines | default([]) }}"
|
|
tags:
|
|
- galera-upgrade
|
|
- galera-apt-packages
|
|
|
|
- name: Update apt sources (Forced)
|
|
apt:
|
|
update_cache: yes
|
|
cache_valid_time: 0
|
|
register: apt_update
|
|
until: apt_update|success
|
|
retries: 5
|
|
delay: 2
|
|
when:
|
|
- ansible_pkg_mgr == 'apt'
|
|
tags:
|
|
- galera-upgrade
|
|
- galera-apt-packages
|
|
|
|
- name: UN-Install galera-server package
|
|
package:
|
|
name: "{{ item }}"
|
|
state: absent
|
|
with_items:
|
|
- "mariadb-galera-server*"
|
|
- "mariadb-server*"
|
|
- MariaDB-Galera-server
|
|
- MariaDB-server
|
|
- mysql-common
|
|
tags:
|
|
- galera-upgrade
|
|
- galera-apt-packages
|