diff --git a/tasks/galera_install_zypper.yml b/tasks/galera_install_zypper.yml index ad60ecc3..8d15e786 100644 --- a/tasks/galera_install_zypper.yml +++ b/tasks/galera_install_zypper.yml @@ -13,14 +13,54 @@ # See the License for the specific language governing permissions and # limitations under the License. +- name: Update the local file system CRUD + file: + src: "{{ item.src|default(omit) }}" + path: "{{ item.path }}" + state: "{{ item.state }}" + force: "{{ item.force|default(omit) }}" + with_items: + - { path: "/etc/mysql", state: "directory" } + - { path: "/etc/mysql/conf.d", state: "directory" } + - { src: "/etc/mysql/conf.d", path: "/etc/my.cnf.d", state: "link", force: true } + - { src: "/etc/mysql/my.cnf", path: "/etc/my.cnf", state: "link", force: true } + +- name: Add galera gpg-keys + block: + - name: Add keys (primary keyserver) + rpm_key: + state: present + key: "{{ item.keyserver }}/{{ item.key_name }}" + register: add_keys + until: add_keys|success + retries: 5 + delay: 2 + with_items: "{{ galera_gpg_keys }}" + + rescue: + - name: Add keys (fallback keyserver) + rpm_key: + state: present + key: "{{ item.fallback_keyserver }}/{{ item.key_name }}" + register: add_keys + until: add_keys|success + retries: 5 + delay: 2 + with_items: "{{ galera_gpg_keys }}" + when: item.fallback_keyserver is defined + - name: Add galera repo zypper_repository: - refresh: yes - name: "{{ item.name }}" - repo: "{{ item.uri }}" - auto_import_keys: yes - register: zypper_repository_added - with_items: "{{ galera_repo }}" + name: "{{ galera_repo.name }}" + description: "{{ galera_repo.description }}" + repo: "{{ galera_repo.baseurl }}" + autorefresh: yes + auto_import_keys: no + enabled: yes + register: add_repos + until: add_repos | success + retries: 5 + delay: 2 - name: Install galera_server role remote packages (zypper) zypper: diff --git a/vars/suse-42.yml b/vars/suse-42.yml index a92fffa0..cae82633 100644 --- a/vars/suse-42.yml +++ b/vars/suse-42.yml @@ -13,50 +13,65 @@ # See the License for the specific language governing permissions and # limitations under the License. -_galera_repo: - - name: "OBS:server_database" - uri: "{{ galera_server_opensuse_mirror_obs_url | default('http://download.opensuse.org') }}/repositories/server:/database/openSUSE_Leap_{{ ansible_distribution_version }}" +# Galera GPG Keys +_galera_gpg_keys: + - key_name: 'RPM-GPG-KEY-MariaDB' + keyserver: 'https://yum.mariadb.org' + fallback_keyserver: 'https://yum.mariadb.org' # Default private device setting _galera_disable_privatedevices: yes galera_server_required_distro_packages: - - galera-3 + - galera - gpg2 - libaio-devel - libstdc++-devel - libgcrypt-devel - - libmysqlclient-devel - - mariadb-client - - qpress + - MariaDB-client + - MariaDB-devel - xinetd -galera_etc_conf_file: "/etc/my.cnf" -galera_etc_include_dir: "/etc/my.cnf.d" -galera_var_run_socket: "/var/run/mysql/mysql.sock" - -_galera_mariadb_server_package: "mariadb" +galera_etc_conf_file: "/etc/mysql/my.cnf" +galera_etc_include_dir: "/etc/mysql/conf.d" +galera_var_run_socket: "/var/lib/mysql/mysql.sock" -galera_server_upgrade_packages_remove: - - "{{ galera_mariadb_server_package }}" - - galera-3 - -galera_mariadb_service_name: "mysql" +_galera_mariadb_server_package: "MariaDB-server" galera_server_mariadb_distro_packages: - which - "{{ galera_mariadb_server_package }}" - - mariadb-galera - - percona-toolkit + - MariaDB-shared - rsync - socat +# Conflicting packages with those from the MariaDB repository +galera_server_mariadb_distro_packages_remove: + - libmariadb-devel + - mariadb + - mariadb-client + - mariadb-tools + +# The packages to uninstall during an upgrade from a previous version +galera_server_upgrade_packages_remove: + - MariaDB-Galera-server + - MariaDB-server + +galera_mariadb_service_name: "mariadb" + +_galera_repo_url: "http://yum.mariadb.org/{{ galera_major_version }}/sles/12/x86_64" +_galera_repo: + name: MariaDB + description: "MariaDB Repo" + baseurl: "{{ galera_repo_url }}" + gpgkey: "https://yum.mariadb.org/RPM-GPG-KEY-MariaDB" + galera_server_percona_distro_packages: - qpress - percona-toolkit - percona-xtrabackup -galera_wsrep_provider: "/usr/lib64/galera-3/libgalera_smm.so" +galera_wsrep_provider: "/usr/lib64/galera/libgalera_smm.so" _use_percona_upstream: yes # NOTE(hwoarang): The default one provided in vars/main.yml depends on