We are high-spirited to announce the release of: openstack-ansible-galera_server 14.0.0: Galera Server role for OpenStack-Ansible This release is part of the newton release series. Download the package from: https://tarballs.openstack.org/openstack-ansible-galera_server/ For more details, please see below. 14.0.0 ^^^^^^ New Features ************ * The "openstack-ansible-galera_server" role will now prevent deployers from changing the "galera_cluster_name" variable on clusters that already have a value set in a running galera cluster. You can set the new "galera_force_change_cluster_name" variable to "True" to force the "galera_cluster_name" variable to be changed. We recommend setting this by running the galera-install.yml playbook with "-e galera_force_change_cluster_name=True", to avoid changing the "galera_cluster_name" variable unintentionally. Use with caution, changing the "galera_cluster_name" value can cause your cluster to fail, as the nodes won't join if restarted sequentially. * CentOS 7 support has been added to the "galera_server" role. * Implemented support for Ubuntu 16.04 Xenial. percona-xtrabackup packages will be installed from distro repositories, instead of upstream percona repositories due to lack of available packages upstream at the time of implementing this feature. * The galera_server role now supports the ability to configure whether apt/yum tasks install the latest available package, or just ensure that the package is present. The default action is to ensure that the latest package is present. The action taken may be changed to only ensure that the package is present by setting "galera_server_package_state" to "present". Known Issues ************ * Deployments on ppc64le are limited to Ubuntu 16.04 for the Newton release of OpenStack-Ansible. Upgrade Notes ************* * The default database collation has changed from *utf8_unicode_ci* to *utf8_general_ci*. Existing databases and tables will need to be converted. * The MariaDB wait_timeout setting is decreased to 1h to match the SQL Alchemy pool recycle timeout, in order to prevent unnecessary database session buildups. * The variable "galera_pre_packages" has been renamed to "galera_server_required_distro_packages". * The variable "galera_packages" has been renamed to "galera_server_mariadb_distro_packages". * The galera_server role always checks whether the latest package is installed when executed. If a deployer wishes to change the check to only validate the presence of the package, the option "galera_server_package_state" should be set to "present". Deprecation Notes ***************** * galera_package_url changed to percona_package_url for clarity * galera_package_sha256 changed to percona_package_sha256 for clarity * galera_package_path changed to percona_package_path for clarity * galera_package_download_validate_certs changed to percona_package_download_validate_certs for clarity Bug Fixes ********* * Add architecture-specific locations for percona-xtrabackup and qpress, with alternate locations provided for ppc64el due to package inavailability from the current provider. * The "--compact" flag has been removed from xtrabackup options. This had been shown to cause crashes in some SST situations Other Notes *********** * Mariadb version upgrade gate checks removed. Changes in openstack-ansible-galera_server 13.0.0..14.0.0 --------------------------------------------------------- 636d7d9 Update signing key for percona packages c5e81bf Do not ignore_errors for fallback keyserver bd6271c Add tests/common to .gitignore db312c5 Remove 'ignore_errors: true' in favor of 'failed_when: false' 09276e4 Move systemd handler above restart handler 7632420 Allow mysql users to create triggers 3cc340c Set default for physical_host if it's undefined 91ab40e On single nodes use an empty cluster address 94dd58c Update tox.ini tests target for stable/newton 8575139 Update ansible-role-requirements to stable/newton df1bf84 Use centralised test scripts 7bd1175 Update UPPER_CONSTRAINTS_FILE for stable/newton 062f8c3 Update .gitreview for stable/newton 74ac0dc Force Ansible to use dynamic includes 7359513 Update homepage with developer documentation page 6c1422c Address ansible_ssh_* var deprecation 6029354 Update testing bits for consistency 21aaa7c Adjust file descriptor limit when systemd is used 8a9127e Prevent galera_cluster_name from changing. 23098ba Ansible 2.1.1 role testing 45f9c76 Compress test execution logs 352cbd1 Allow galera to listen on v4/v6 b1ed69f Fix arch-specific percona-xtrabackup and qpress a3bb3b7 Enable log collection after functional testing ece430a Work around Ansible vcpu fact bug on ppc64le 45a7ed4 Update qpress to use Xenial package 3df31ce Rename package lists (and related vars) appropriately 885aefa Remove apt update from Vagrantfile 1ac2047 Make all linting tests use upper-constraints 658c848 Added SNI support for galera_server role via OS packages 2e1cf58 Updated from global requirements ff22a68 Add apt-get update to run_tests 3eb2a89 [DOCS] - Removing tags: and category: 49006d7 Add python packages for SNI support in tests 1f0cfa2 remove compact option from xtrabackup a04ca29 Adding Vagrantfile for local testing f18654f Move other-requirements.txt to bindep.txt 50bcea1 [DOCS] Move example playbook to separate file 15310f1 Include ansible commands for ansible linting 54ca3be Add ability to change apt/yum package state 727189f Ensure that doc linting is included in the linters test a69a34f Change the repos to use upstream default 9f47da6 Use plugins repo version of the human_log callback plugin 1763be7 Updated from global requirements 35b1668 Remove duplicates from .gitignore bcd2b9d Implement doc8 checks for docs 4a8707f Update sphinx configuration 8e48a2e Update tox configuration ac3942d Change default collation to utf8_general_ci 4d25aeb Clean up container cache prep in tests 08ce66f Pin test-requirements to match OpenStack requirements 63e1d9f DOC - Adopting the common role documentation pattern db39fee Consistency for multi-os in the includes 5b23837 Add CentOS7 support to Galera Server 5136160 Implement Xenial Support 7bec84f Remove Mariadb Upgrade Check 090240e Use the apt_package_pinning role 05cdf7c Add .swp files to .gitignore ac3bbca Change pip install task state to 'latest' cca71a5 Add dependencies for paramiko 2.0 36c5d83 Ansible 2.x - Address deprecation warning of bare variables b8c1195 Remove Liberty releasenote index a1636b3 Decrease MariaDB wait timeout c8b8902 blacklist Ansible 1.9.6 b9a7361 ensure mysql defaults file is sourced 83556a7 Update min_ansible_version to 1.9 4cff43f Add reno scaffolding for release notes management 3aa680f Add executable bit to run_tests.sh a37735c Reorganize test playbooks a94f88d Fix handlers fac557b Remove dependency on python2_lxc git source 8245978 Add retry logic to mysql_upgrade ff665af removed duplicate key Diffstat (except docs and test files) ------------------------------------- .gitignore | 10 +- .gitreview | 1 + CONTRIBUTING.rst | 2 - README.rst | 23 +- Vagrantfile | 12 + bindep.txt | 41 +++ defaults/main.yml | 57 ++--- examples/playbook.yml | 7 + files/policy-rc.d | 3 +- handlers/main.yml | 16 +- library/mysql_status_facts | 12 +- manual-test.rc | 33 +++ meta/main.yml | 8 +- other-requirements.txt | 17 -- releasenotes/notes/.placeholder | 0 ...pecific-package-locations-e76512288aaf6fa0.yaml | 8 + .../change-default-collation-260d932780ef4553.yaml | 5 + ...riadb-waittimeout-setting-ddaae0f2e1d31ee1.yaml | 5 + ...force-cluster-name-change-b4ce1e225daa840c.yaml | 15 ++ ...implement-centos7-support-cf6b6ee0d606223f.yaml | 3 + .../implement-xenial-support-0de6444c53337d46.yaml | 12 + ...package-list-name-changes-7fcd5583f0db0eb6.yaml | 6 + .../notes/package-state-b7a3d3c242e2c3aa.yaml | 13 + ...emove-upgrade-gate-checks-3fbe339e06094681.yaml | 3 + ...trabackup-compact-disable-8ae9215207147ebc.yaml | 4 + releasenotes/source/_static/.placeholder | 0 releasenotes/source/_templates/.placeholder | 0 releasenotes/source/conf.py | 281 +++++++++++++++++++++ releasenotes/source/index.rst | 9 + releasenotes/source/mitaka.rst | 6 + releasenotes/source/unreleased.rst | 5 + setup.cfg | 2 +- setup.py | 11 +- tasks/galera_bootstrap.yml | 10 + tasks/galera_cluster_state.yml | 20 +- tasks/galera_install.yml | 17 +- tasks/galera_install_apt.yml | 144 +++++++++-- tasks/galera_install_yum.yml | 161 ++++++++++++ tasks/galera_post_install.yml | 67 ++++- tasks/galera_pre_install.yml | 124 ++------- tasks/galera_running_check.yml | 16 +- tasks/galera_setup.yml | 7 + tasks/galera_upgrade_check.yml | 38 +-- tasks/galera_upgrade_check_apt.yml | 51 ++++ tasks/galera_upgrade_check_yum.yml | 51 ++++ tasks/galera_upgrade_post.yml | 6 +- tasks/galera_upgrade_pre.yml | 4 +- tasks/main.yml | 14 + templates/cluster.cnf.j2 | 1 - templates/galera_pin.pref.j2 | 5 - templates/limits.conf.j2 | 4 - templates/my.cnf.j2 | 6 +- templates/mysql_defaults.j2 | 2 +- templates/systemd.limits.conf.j2 | 12 + templates/upstart.limits.conf.j2 | 4 + test-requirements.txt | 22 +- tox.ini | 153 ++++++----- vars/redhat-7.yml | 84 ++++++ vars/ubuntu-14.04.yml | 76 +++++- vars/ubuntu-16.04.yml | 113 +++++++++ 72 files changed, 1715 insertions(+), 750 deletions(-) Requirements updates -------------------- diff --git a/test-requirements.txt b/test-requirements.txt index a9a3fcc..8fdd8d8 100644 --- a/test-requirements.txt +++ b/test-requirements.txt @@ -1,4 +1,9 @@ -ansible-lint<=2.3.9 -ansible>=1.9.1,<2.0.0 -bashate -flake8 +# The order of packages is significant, because pip processes them in the order +# of appearance. Changing the order has an impact on the overall integration +# process, which may cause wedges in the gate later. +bashate>=0.2 # Apache-2.0 +flake8<2.6.0,>=2.5.4 # MIT +pyasn1 # BSD +pyOpenSSL>=0.14 # Apache-2.0 +requests>=2.10.0 # Apache-2.0 +ndg-httpsclient>=0.4.2;python_version<'3.0' # BSD @@ -7,5 +12,4 @@ flake8 -sphinx!=1.2.0,!=1.3b1,<1.3,>=1.1.2 -oslosphinx>=2.5.0 # Apache-2.0 - -# required by Ansible uri module -httplib2 +sphinx!=1.3b1,<1.3,>=1.2.1 # BSD +oslosphinx!=3.4.0,>=2.5.0 # Apache-2.0 +doc8 # Apache-2.0 +reno>=1.8.0 # Apache2