Files
openstack-ansible-galera_se…/tasks/galera_install.yml
Markos Chandras 9ab9dd30dc Avoid mixing pip and distribution packages.
The hosts may end up in a rather messed up state when mixing
distribution and pip packages. The python MySQL bindings are already
provided in the distro repositories so we can simply use these in order
to keep the host as clean as possible.

Implements: blueprint openstack-distribution-packages
Change-Id: Ic8c7f642378536d79d763625451ec267c2a108fd
2018-04-18 16:39:10 +01:00

53 lines
1.9 KiB
YAML

---
# Copyright 2014, 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: Prepare the package list
set_fact:
galera_packages_list: |-
{% set packages = galera_server_required_distro_packages + galera_server_mariadb_distro_packages %}
{% if ansible_architecture == 'x86_64' %}
{% set _ = packages.extend(galera_server_percona_distro_packages) %}
{% endif %}
{% if ansible_architecture == 'ppc64le' and ansible_distribution == 'Ubuntu' %}
{% for extra_package in galera_server_percona_distro_packages_alt_arch['ansible_architecture'] %}
{% set _package_path = galera_server_extra_package_path ~ '/' ~ ansible_architecture %}
{% set _ = packages.append(_package_path ~ '/' ~ extra_package['url'] | basename) %}
{% endfor %}
{% endif %}
{{ packages }}
- name: Download the extra packages
include_tasks: galera_install_download_extra_packages.yml
when:
- ansible_architecture == 'ppc64le'
- name: Remove conflicting distro packages
package:
name: "{{ galera_server_mariadb_distro_packages_remove | default([]) }}"
state: absent
- include_tasks: "galera_install_{{ ansible_pkg_mgr }}.yml"
- name: Record galera has been deployed
ini_file:
dest: "/etc/ansible/facts.d/openstack_ansible.fact"
section: galera
option: deployed
value: true
- name: Set the galera existing cluster fact
set_fact:
galera_deployed: true