From ca2b5d233c09539c9d699b9998e43a4c973eefed Mon Sep 17 00:00:00 2001 From: kaushikpuneet07 Date: Fri, 7 Mar 2025 21:40:11 +0530 Subject: [PATCH 01/28] update in PXC revision --- VERSIONS | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/VERSIONS b/VERSIONS index cd6af046f..6bfdcff89 100644 --- a/VERSIONS +++ b/VERSIONS @@ -51,8 +51,8 @@ PXC57_REV="8f54dd2" PXC57_WSREP="3.65(rf47405c)" PXC80_VER="8.0.41-32" PXC80_INNODB="32" -PXC80_REV="a37acf4" -PXC80_WSREP="4.21(79eda49f)" +PXC80_REV="9cd31bf" +PXC80_WSREP="4.21(79eda49)" PROXYSQL_VER="1.4.16-percona-1.1" PROXYSQL2_VER="2.7.1-percona-1.2" PMP_VER="1.1.7" From 53a88a51271ec8c183b96cb62beddd2aa8f08654 Mon Sep 17 00:00:00 2001 From: kaushikpuneet07 Date: Wed, 20 Aug 2025 18:26:36 +0530 Subject: [PATCH 02/28] update --- VERSIONS | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/VERSIONS b/VERSIONS index 9f5fe74d6..289db65fc 100644 --- a/VERSIONS +++ b/VERSIONS @@ -33,12 +33,12 @@ PS56_VER="5.6.51-91.0" PS56_REV="b59139e" PS57_VER="5.7.44-54" PS57_REV="aeb2dcece84" -PS80_VER="8.0.42-33" -PS80_REV="9dc49998" +PS80_VER="8.0.43-34" +PS80_REV="a74dc227" PS84_VER="8.4.5-5" PS84_REV="3d3abca6" -PS80_PRO_VER="8.0.42-33" -PS80_PRO_REV="9dc49998" +PS80_PRO_VER="8.0.43-34" +PS80_PRO_REV="a74dc227" PS84_PRO_VER="8.4.5-5" PS84_PRO_REV="3d3abca6" PS81_VER="8.1.0-1" From 8465ae3edf31cc9e53d868b82fe75f40bfec34dc Mon Sep 17 00:00:00 2001 From: kaushikpuneet07 Date: Mon, 29 Sep 2025 18:05:00 +0530 Subject: [PATCH 03/28] update in tarball tests --- .../NON-PRO/test-pxc-binary-tarball.groovy | 34 +++++++++++++++++-- 1 file changed, 31 insertions(+), 3 deletions(-) diff --git a/binary-tarball-tests/pxc/NON-PRO/test-pxc-binary-tarball.groovy b/binary-tarball-tests/pxc/NON-PRO/test-pxc-binary-tarball.groovy index 88e59fc94..2e048298f 100644 --- a/binary-tarball-tests/pxc/NON-PRO/test-pxc-binary-tarball.groovy +++ b/binary-tarball-tests/pxc/NON-PRO/test-pxc-binary-tarball.groovy @@ -15,7 +15,7 @@ pipeline { stages { stage('Binary tarball test') { parallel { - /* stage('Ubuntu Noble') { + stage('Ubuntu Noble') { agent { label "min-noble-x64" } @@ -42,7 +42,7 @@ pipeline { junit 'package-testing/binary-tarball-tests/pxc/NON-PRO/report.xml' } } - } */ + } stage('Ubuntu Jammy') { agent { label "min-jammy-x64" @@ -211,6 +211,34 @@ pipeline { } } } + stage('RHEL-10') { + agent { + label "min-rhel-10-x64" + } + steps { + script { + currentBuild.displayName = "#${BUILD_NUMBER}-${PXC_VERSION}-${PXC_REVISION}" + } + withCredentials([usernamePassword(credentialsId: 'PS_PRIVATE_REPO_ACCESS', passwordVariable: 'PASSWORD', user> + sh ''' + echo "${BUILD_TYPE_MINIMAL}" + MINIMAL="" + if [ "${BUILD_TYPE_MINIMAL}" = "true" ]; then + MINIMAL="-minimal" + fi + TARBALL_NAME="Percona-XtraDB-Cluster_${PXC_VERSION}_Linux.x86_64.glibc2.35${MINIMAL}.tar.gz" + TARBALL_LINK="https://downloads.percona.com/downloads/TESTING/pxc-${PXC_VERSION_MAJOR}/" + rm -rf package-testing + sudo yum install -y git wget tar + git clone https://github.com/kaushikpuneet07/package-testing.git --branch rhel10-pxc --depth 1 + cd package-testing/binary-tarball-tests/pxc/NON-PRO + wget -q "${TARBALL_LINK}${TARBALL_NAME}" + ./run.sh || true + ''' + junit 'package-testing/binary-tarball-tests/pxc/NON-PRO/report.xml' + } + } + } } } } @@ -219,4 +247,4 @@ pipeline { cleanWs() } } -} \ No newline at end of file +} From 2892297a3675c214ba659fe7aecfeea9c8ad54ac Mon Sep 17 00:00:00 2001 From: kaushikpuneet07 Date: Fri, 31 Jul 2026 21:48:17 +0530 Subject: [PATCH 04/28] update --- molecule/pdmysql/pdps/tasks/main.yml | 103 ++++++++++----------------- 1 file changed, 39 insertions(+), 64 deletions(-) diff --git a/molecule/pdmysql/pdps/tasks/main.yml b/molecule/pdmysql/pdps/tasks/main.yml index 334dc34b9..8a6eb6ba5 100644 --- a/molecule/pdmysql/pdps/tasks/main.yml +++ b/molecule/pdmysql/pdps/tasks/main.yml @@ -40,7 +40,13 @@ command: percona-release enable-only pdps-{{ version }} {{ repo }} vars: repo: "{{ lookup('env', 'REPO') }}" - version: "{{ '84-lts' if '8.4' in lookup('env', 'VERSION') else '8.0' if '8.0.' in lookup('env', 'VERSION') else '8x-innovation' }}" + version: >- + {{ + '97-lts' if '9.7' in lookup('env', 'VERSION') + else '9x-innovation' if '9.' in lookup('env', 'VERSION') + else '84-lts' if '8.4' in lookup('env', 'VERSION') + else '8x-innovation' + }} when: major_repo - name: check the enabled repositories @@ -66,50 +72,15 @@ dnf makecache when: ansible_facts['distribution'] in ['RedHat','CentOS','OracleLinux','Amazon'] and ansible_facts['distribution_major_version'] | int >= 8 - - name: install Percona Server deb packages - apt: - name: "{{ packages }}" - update_cache: yes - state: latest - vars: - packages: - - percona-server-server - - percona-server-test - - percona-server-dbg - - percona-server-source - - percona-server-client - - percona-server-rocksdb - when: ansible_os_family == "Debian" - - - name: install Percona Server rpm packages with yum - yum: - name: "{{ packages }}" - state: latest - update_cache: yes - vars: - packages: - - percona-server-server - - percona-server-client - - percona-server-test - - percona-server-debuginfo - - percona-server-devel - - percona-server-rocksdb - when: ansible_facts['distribution'] in ['RedHat','CentOS','OracleLinux','Amazon'] and ansible_facts['distribution_major_version'] | int < 8 - - - name: install Percona Server rpm packages with dnf - dnf: - name: "{{ packages }}" - state: latest - update_cache: yes - vars: - packages: - - percona-server-server - - percona-server-client - - percona-server-test - - percona-server-debuginfo - - percona-server-devel - - percona-server-rocksdb - when: ansible_facts['distribution'] in ['RedHat','CentOS','OracleLinux','Amazon'] and ansible_facts['distribution_major_version'] | int >= 8 + - name: Install Percona Server packages + include_tasks: >- + {{ + '../tasks/install_ps97.yml' + if '9.7' in lookup('env', 'VERSION') + else '../tasks/install_ps84.yml' + if '8.4' in lookup('env', 'VERSION') + else '../tasks/install_ps_innovation.yml' + }} - name: install Percona XtraBackup {{ major_release_version }} packages include_tasks: ../../../tasks/install_pxb_innovation.yml @@ -117,33 +88,38 @@ # For 9x innovation, PXB packages are named percona-xtrabackup-91 (not 96) major_release_version: "{{ '91' if lookup('env', 'VERSION').split('.')[0] | default('0', true) | int == 9 else lookup('env', 'VERSION').split('.')[:2]|join('') }}" - - name: install proxysql new deb packages + - name: Set ProxySQL package name + set_fact: + proxysql_package: >- + {{ + 'proxysql3' + if lookup('env', 'PROXYSQL_VERSION').startswith('3.') + else 'proxysql2' + }} + + - name: Install ProxySQL deb package apt: - name: "{{ packages }}" - update_cache: yes + name: "{{ proxysql_package }}" state: latest - vars: - packages: - - proxysql2 + update_cache: yes when: ansible_os_family == "Debian" - - name: install proxysql new rpm packages with yum + - name: Install ProxySQL rpm package with yum yum: - name: "{{ packages }}" + name: "{{ proxysql_package }}" state: latest - vars: - packages: - - proxysql2 - when: ansible_facts['distribution'] in ['RedHat','CentOS','OracleLinux','Amazon'] and ansible_facts['distribution_major_version'] | int < 8 + when: + - ansible_facts['distribution'] in ['RedHat','CentOS','OracleLinux','Amazon'] + - ansible_facts['distribution_major_version'] | int < 8 - - name: install proxysql new rpm packages with dnf + - name: Install ProxySQL rpm package with dnf dnf: - name: "{{ packages }}" + name: "{{ proxysql_package }}" state: latest - vars: - packages: - - proxysql2 - when: ansible_facts['distribution'] in ['RedHat','CentOS','OracleLinux','Amazon'] and ansible_facts['distribution_major_version'] | int >= 8 + update_cache: yes + when: + - ansible_facts['distribution'] in ['RedHat','CentOS','OracleLinux','Amazon'] + - ansible_facts['distribution_major_version'] | int >= 8 #install initscripts-service manually on OL9 till DISTMYSQL-300 is fixed - name: install init scripts for OL9 @@ -215,7 +191,6 @@ - name: Verify telemetry version and package installation command: /package-testing/check_tel_ver_pack.sh - when: ansible_distribution_release != "focal" - name: set root password on centos command: /package-testing/setpass_57.sh From f09fd279dffd9fb267444d9a867047a5b15ce140 Mon Sep 17 00:00:00 2001 From: kaushikpuneet07 Date: Fri, 31 Jul 2026 22:12:15 +0530 Subject: [PATCH 05/28] update --- molecule/pdmysql/pdps/tasks/main.yml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/molecule/pdmysql/pdps/tasks/main.yml b/molecule/pdmysql/pdps/tasks/main.yml index 8a6eb6ba5..4e4653470 100644 --- a/molecule/pdmysql/pdps/tasks/main.yml +++ b/molecule/pdmysql/pdps/tasks/main.yml @@ -75,11 +75,11 @@ - name: Install Percona Server packages include_tasks: >- {{ - '../tasks/install_ps97.yml' + '../../../../tasks/install_ps97.yml' if '9.7' in lookup('env', 'VERSION') - else '../tasks/install_ps84.yml' + else '../../../../tasks/install_ps84.yml' if '8.4' in lookup('env', 'VERSION') - else '../tasks/install_ps_innovation.yml' + else '../../../../tasks/install_ps_innovation.yml' }} - name: install Percona XtraBackup {{ major_release_version }} packages From 75dc4a82fc73f1c39fbf3c8593ea01f5e21ea50a Mon Sep 17 00:00:00 2001 From: kaushikpuneet07 Date: Fri, 31 Jul 2026 22:17:41 +0530 Subject: [PATCH 06/28] update --- molecule/pdmysql/orchestrator/tasks/main.yml | 1 - 1 file changed, 1 deletion(-) diff --git a/molecule/pdmysql/orchestrator/tasks/main.yml b/molecule/pdmysql/orchestrator/tasks/main.yml index fe6207477..8d7c25705 100644 --- a/molecule/pdmysql/orchestrator/tasks/main.yml +++ b/molecule/pdmysql/orchestrator/tasks/main.yml @@ -24,7 +24,6 @@ packages: - percona-server-server - percona-server-test - - percona-server-dbg - percona-server-source - percona-server-client - percona-server-rocksdb From aa7a19c9ff2091b333cce475b1e3516ff915b181 Mon Sep 17 00:00:00 2001 From: kaushikpuneet07 Date: Fri, 31 Jul 2026 22:23:46 +0530 Subject: [PATCH 07/28] update --- molecule/pdmysql/pdps/tasks/main.yml | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/molecule/pdmysql/pdps/tasks/main.yml b/molecule/pdmysql/pdps/tasks/main.yml index 4e4653470..614ff30f5 100644 --- a/molecule/pdmysql/pdps/tasks/main.yml +++ b/molecule/pdmysql/pdps/tasks/main.yml @@ -82,11 +82,10 @@ else '../../../../tasks/install_ps_innovation.yml' }} - - name: install Percona XtraBackup {{ major_release_version }} packages + - name: Install Percona XtraBackup packages include_tasks: ../../../tasks/install_pxb_innovation.yml vars: - # For 9x innovation, PXB packages are named percona-xtrabackup-91 (not 96) - major_release_version: "{{ '91' if lookup('env', 'VERSION').split('.')[0] | default('0', true) | int == 9 else lookup('env', 'VERSION').split('.')[:2]|join('') }}" + major_release_version: "{{ lookup('env', 'VERSION').split('.')[:2] | join('') }}" - name: Set ProxySQL package name set_fact: From 76e114207d3ba489787e103180ee1e54079f3ae1 Mon Sep 17 00:00:00 2001 From: kaushikpuneet07 Date: Sat, 1 Aug 2026 03:00:44 +0530 Subject: [PATCH 08/28] updatye --- molecule/pdmysql/pdps/tasks/main.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/molecule/pdmysql/pdps/tasks/main.yml b/molecule/pdmysql/pdps/tasks/main.yml index 614ff30f5..8ad0028f6 100644 --- a/molecule/pdmysql/pdps/tasks/main.yml +++ b/molecule/pdmysql/pdps/tasks/main.yml @@ -57,8 +57,8 @@ debug: var: enabled_repos.stdout_lines - - name: install Percona Toolkit - include_tasks: ../../../tasks/install_pt.yml +# - name: install Percona Toolkit +# include_tasks: ../../../tasks/install_pt.yml - name: clean yum shell: | From a060e6667fc7270d37dc08f8e7d5cfece14b5a4e Mon Sep 17 00:00:00 2001 From: kaushikpuneet07 Date: Sat, 1 Aug 2026 13:13:15 +0530 Subject: [PATCH 09/28] update --- .../pdmysql/tests/test_common_proxysql2.py | 7 ++- molecule/pdmysql/tests/test_pdps_ps.py | 60 +++++++++++++++---- 2 files changed, 54 insertions(+), 13 deletions(-) diff --git a/molecule/pdmysql/tests/test_common_proxysql2.py b/molecule/pdmysql/tests/test_common_proxysql2.py index 3dacc2736..e876b5f34 100644 --- a/molecule/pdmysql/tests/test_common_proxysql2.py +++ b/molecule/pdmysql/tests/test_common_proxysql2.py @@ -9,9 +9,10 @@ VERSION = os.getenv("PROXYSQL_VERSION") def test_package_is_installed(host): - pkg = host.package('proxysql2') - assert pkg.is_installed - + assert ( + host.package("proxysql2").is_installed + or host.package("proxysql3").is_installed + ), "Neither proxysql2 nor proxysql3 is installed" def test_proxysql2_version(host): cmd = 'proxysql --version' diff --git a/molecule/pdmysql/tests/test_pdps_ps.py b/molecule/pdmysql/tests/test_pdps_ps.py index 9c7a870e7..7cfe765cc 100644 --- a/molecule/pdmysql/tests/test_pdps_ps.py +++ b/molecule/pdmysql/tests/test_pdps_ps.py @@ -19,15 +19,57 @@ testinfra_hosts = testinfra.utils.ansible_runner.AnsibleRunner( os.environ['MOLECULE_INVENTORY_FILE']).get_hosts('all') -DEBPACKAGES = ['percona-server-server', 'percona-server-test', - 'percona-server-dbg', 'percona-server-source', - 'percona-server-client', 'percona-server-rocksdb', - 'percona-mysql-router', 'percona-mysql-shell'] +PS_MAJOR = version.parse(VERSION.split('-')[0]).major -RPMPACKAGES = ['percona-server-server', 'percona-server-client', - 'percona-server-test', 'percona-server-debuginfo', - 'percona-server-devel', 'percona-server-rocksdb', - 'percona-mysql-router', 'percona-mysql-shell'] +if PS_MAJOR >= 9: + DEBPACKAGES = [ + 'percona-server-server', + 'percona-testsuite', + 'percona-server-test', + 'percona-server-source', + 'percona-server-core', + 'percona-mysql-rocksdb', + 'percona-mysql-shell', + 'percona-server-common', + 'percona-server-client-core', + 'percona-server-client-plugins', + 'percona-server-client', + 'percona-server-client-plugins', + 'percona-mysql-router', + ] + + RPMPACKAGES = [ + 'percona-server-server', + 'percona-server-client', + 'percona-server-client-plugins', + 'percona-server-debugsource', + 'percona-server-rocksdb', + 'percona-server-test', + 'percona-server-shared', + 'percona-server-devel', + 'percona-mysql-router', + 'percona-mysql-shell' + ] +else: + DEBPACKAGES = [ + 'percona-server-server', + 'percona-server-test', + 'percona-server-source', + 'percona-server-client', + 'percona-server-rocksdb', + 'percona-mysql-router', + 'percona-mysql-shell' + ] + + RPMPACKAGES = [ + 'percona-server-server', + 'percona-server-client', + 'percona-server-test', + 'percona-server-devel', + 'percona-server-rocksdb', + 'percona-mysql-router', + 'percona-mysql-shell' + ] # Define plugins amd components lists for PS8.0.X releases: if version.parse(VERSION) > version.parse("8.0.0") and version.parse(VERSION) < version.parse("8.1.0"): @@ -114,8 +156,6 @@ " connection_control SONAME 'connection_control.so';\"", "mysql -e \"INSTALL PLUGIN" " authentication_ldap_sasl SONAME 'authentication_ldap_sasl.so';\"", - "mysql -e \"INSTALL PLUGIN" - " connection_control_failed_login_attempts SONAME 'connection_control.so';\""] COMPONENTS = ['component_validate_password', 'component_log_sink_syseventlog', 'component_log_sink_json', 'component_log_filter_dragnet', 'component_audit_api_message_emit', 'component_binlog_utils_udf', From 5cd3a90b3703cc50d2cdc6b6d935f3b56c6ec81c Mon Sep 17 00:00:00 2001 From: kaushikpuneet07 Date: Sat, 1 Aug 2026 13:15:08 +0530 Subject: [PATCH 10/28] update --- molecule/pdmysql/tests/test_common_pxb_pt.py | 62 ++++++++++---------- 1 file changed, 31 insertions(+), 31 deletions(-) diff --git a/molecule/pdmysql/tests/test_common_pxb_pt.py b/molecule/pdmysql/tests/test_common_pxb_pt.py index b487fc756..b84f25bd8 100644 --- a/molecule/pdmysql/tests/test_common_pxb_pt.py +++ b/molecule/pdmysql/tests/test_common_pxb_pt.py @@ -84,36 +84,36 @@ def test_sources_pxb_version(host): assert result.rc == 0, (result.stderr, result.stdout) assert PXB_VERSION in result.stdout, result.stdout -def test_check_pt_deb_package(host): - dist = host.system_info.distribution - if dist.lower() in RHEL_DISTS: - pytest.skip("This test only for RHEL based platforms") - pkg = host.package('percona-toolkit') - assert pkg.is_installed - assert PT_VERSION in pkg.version, pkg.version - -def test_check_pt_rpm_package(host): - dist = host.system_info.distribution - if dist.lower() in DEB_DISTS: - pytest.skip("This test only for RHEL based platforms") - pkg = host.package('percona-toolkit') - assert pkg.is_installed - assert PT_VERSION in pkg.version, pkg.version +#def test_check_pt_deb_package(host): +# dist = host.system_info.distribution +# if dist.lower() in RHEL_DISTS: +# pytest.skip("This test only for RHEL based platforms") +# pkg = host.package('percona-toolkit') +# assert pkg.is_installed +# assert PT_VERSION in pkg.version, pkg.version -@pytest.mark.parametrize("pt_bin", PTBINS) -def test_pt_binaries(host, pt_bin): - cmd = '{} --version'.format(pt_bin) - result = host.run(cmd) - assert PT_VERSION in result.stdout, result.stdout +#def test_check_pt_rpm_package(host): +# dist = host.system_info.distribution +# if dist.lower() in DEB_DISTS: +# pytest.skip("This test only for RHEL based platforms") +# pkg = host.package('percona-toolkit') +# assert pkg.is_installed +# assert PT_VERSION in pkg.version, pkg.version +# +#@pytest.mark.parametrize("pt_bin", PTBINS) +#def test_pt_binaries(host, pt_bin): +# cmd = '{} --version'.format(pt_bin) +# result = host.run(cmd) +# assert PT_VERSION in result.stdout, result.stdout3 -@pytest.mark.pkg_source -def test_sources_pt_version(host): - if REPO == "testing" or REPO == "experimental": - pytest.skip("This test only for main repo") - dist = host.system_info.distribution - if dist.lower() in RHEL_DISTS: - pytest.skip("This test only for DEB distributions") - cmd = "apt-cache madison percona-toolkit | grep Source | grep \"{}\"".format(PT_VERSION) - result = host.run(cmd) - assert result.rc == 0, (result.stderr, result.stdout) - assert PT_VERSION in result.stdout, result.stdout +#@pytest.mark.pkg_source +#def test_sources_pt_version(host): +# if REPO == "testing" or REPO == "experimental": +# pytest.skip("This test only for main repo") +# dist = host.system_info.distribution +# if dist.lower() in RHEL_DISTS: +# pytest.skip("This test only for DEB distributions") +# cmd = "apt-cache madison percona-toolkit | grep Source | grep \"{}\"".format(PT_VERSION) +# result = host.run(cmd) +# assert result.rc == 0, (result.stderr, result.stdout) +# assert PT_VERSION in result.stdout, result.stdout From ad28a6421bbba42c0a929e35f4c5c952c32ba9f5 Mon Sep 17 00:00:00 2001 From: kaushikpuneet07 Date: Sat, 1 Aug 2026 18:36:49 +0530 Subject: [PATCH 11/28] update --- molecule/pdmysql/tests/test_pdps_ps.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/molecule/pdmysql/tests/test_pdps_ps.py b/molecule/pdmysql/tests/test_pdps_ps.py index 7cfe765cc..fa12b9bfb 100644 --- a/molecule/pdmysql/tests/test_pdps_ps.py +++ b/molecule/pdmysql/tests/test_pdps_ps.py @@ -155,7 +155,7 @@ "mysql -e \"INSTALL PLUGIN" " connection_control SONAME 'connection_control.so';\"", "mysql -e \"INSTALL PLUGIN" - " authentication_ldap_sasl SONAME 'authentication_ldap_sasl.so';\"", + " authentication_ldap_sasl SONAME 'authentication_ldap_sasl.so';\""] COMPONENTS = ['component_validate_password', 'component_log_sink_syseventlog', 'component_log_sink_json', 'component_log_filter_dragnet', 'component_audit_api_message_emit', 'component_binlog_utils_udf', From d06098e6fd575f584c765c69f2a711b154efbb46 Mon Sep 17 00:00:00 2001 From: kaushikpuneet07 Date: Sat, 1 Aug 2026 18:40:17 +0530 Subject: [PATCH 12/28] update --- molecule/pdmysql/orchestrator/tasks/main.yml | 22 ++++++++++++++++++++ 1 file changed, 22 insertions(+) diff --git a/molecule/pdmysql/orchestrator/tasks/main.yml b/molecule/pdmysql/orchestrator/tasks/main.yml index 8d7c25705..9599e4665 100644 --- a/molecule/pdmysql/orchestrator/tasks/main.yml +++ b/molecule/pdmysql/orchestrator/tasks/main.yml @@ -218,6 +218,28 @@ - name: Start mysql source shell: "mysqld_safe --defaults-file=/root/sandboxes/ci/master/my.sandbox.cnf &" + - name: Debug MySQL startup + shell: | + echo "=== mysqld processes ===" + ps -ef | grep mysqld | grep -v grep || true + + echo "=== listening ports ===" + ss -lntp | grep 10111 || true + + echo "=== config ===" + grep -Ei 'port|socket|pid|log|datadir' /root/sandboxes/ci/master/my.sandbox.cnf || true + + echo "=== error log ===" + find /root/sandboxes/ci/master -name "*.err" -exec cat {} \; || true + + echo "=== data directory ===" + ls -lah /root/sandboxes/ci/master/data + register: mysql_debug + failed_when: false + + - debug: + var: mysql_debug.stdout_lines + - name: Start mysql replica1 shell: "mysqld_safe --defaults-file=/root/sandboxes/ci/node1/my.sandbox.cnf &" From 422ac5d14f20aec2f7a4099541aae10a65f6766f Mon Sep 17 00:00:00 2001 From: kaushikpuneet07 Date: Sat, 1 Aug 2026 19:03:37 +0530 Subject: [PATCH 13/28] update --- tasks/install_ps97.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/tasks/install_ps97.yml b/tasks/install_ps97.yml index f10954a04..e010b2c5b 100644 --- a/tasks/install_ps97.yml +++ b/tasks/install_ps97.yml @@ -31,6 +31,7 @@ # - percona-server-client-plugins-dbgsym{{ pro_suf | default('') }} - percona-server-client{{ pro_suf | default('') }} - percona-mysql-router{{ pro_suf | default('') }} + - percona-server-rocksdb #- percona-mysql-router-dbgsym{{ pro_suf | default('') }} percona_server_js_pkg: "percona-server-js{{ pro_suf | default('') }}" packages: "{{ packages_base + (install_percona_server_js | default(true) | bool | ternary([percona_server_js_pkg], [])) }}" From 5d92d3cb404d612bd021da213c1610a821cbd008 Mon Sep 17 00:00:00 2001 From: kaushikpuneet07 Date: Sat, 1 Aug 2026 19:03:52 +0530 Subject: [PATCH 14/28] update --- molecule/pdmysql/tests/test_pdps_ps.py | 15 +++++++++++---- 1 file changed, 11 insertions(+), 4 deletions(-) diff --git a/molecule/pdmysql/tests/test_pdps_ps.py b/molecule/pdmysql/tests/test_pdps_ps.py index fa12b9bfb..8b7b2e5e1 100644 --- a/molecule/pdmysql/tests/test_pdps_ps.py +++ b/molecule/pdmysql/tests/test_pdps_ps.py @@ -27,7 +27,7 @@ 'percona-testsuite', 'percona-server-test', 'percona-server-source', - 'percona-server-core', + 'percona-server-server-core', 'percona-mysql-rocksdb', 'percona-mysql-shell', 'percona-server-common', @@ -36,6 +36,10 @@ 'percona-server-client', 'percona-server-client-plugins', 'percona-mysql-router', + 'percona-client', + 'percona-server', + 'percona-server-js', + 'percona-server-rocksdb' ] RPMPACKAGES = [ @@ -48,7 +52,8 @@ 'percona-server-shared', 'percona-server-devel', 'percona-mysql-router', - 'percona-mysql-shell' + 'percona-mysql-shell', + 'percona-server-js' ] else: DEBPACKAGES = [ @@ -58,7 +63,8 @@ 'percona-server-client', 'percona-server-rocksdb', 'percona-mysql-router', - 'percona-mysql-shell' + 'percona-mysql-shell', + 'percona-server-js' ] RPMPACKAGES = [ @@ -68,7 +74,8 @@ 'percona-server-devel', 'percona-server-rocksdb', 'percona-mysql-router', - 'percona-mysql-shell' + 'percona-mysql-shell', + 'percona-server-js' ] # Define plugins amd components lists for PS8.0.X releases: From f0c8df951a09cbbc8e0f4d658ab38539380583e6 Mon Sep 17 00:00:00 2001 From: kaushikpuneet07 Date: Sat, 1 Aug 2026 19:04:38 +0530 Subject: [PATCH 15/28] update --- molecule/pdmysql/pdps/tasks/main.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/molecule/pdmysql/pdps/tasks/main.yml b/molecule/pdmysql/pdps/tasks/main.yml index 8ad0028f6..ab2902ddf 100644 --- a/molecule/pdmysql/pdps/tasks/main.yml +++ b/molecule/pdmysql/pdps/tasks/main.yml @@ -188,8 +188,8 @@ branch: "{{ lookup('env', 'TESTING_BRANCH') }}" git_account: "{{ lookup('env', 'TESTING_GIT_ACCOUNT') | default('Percona-QA', true) }}" - - name: Verify telemetry version and package installation - command: /package-testing/check_tel_ver_pack.sh +# - name: Verify telemetry version and package installation +# command: /package-testing/check_tel_ver_pack.sh - name: set root password on centos command: /package-testing/setpass_57.sh From 9f2b78403d57e507ae5c21fe46ea550f0b835c94 Mon Sep 17 00:00:00 2001 From: kaushikpuneet07 Date: Sat, 1 Aug 2026 19:07:44 +0530 Subject: [PATCH 16/28] update --- molecule/pdmysql/pdps/tasks/main.yml | 19 ++++++++++--------- 1 file changed, 10 insertions(+), 9 deletions(-) diff --git a/molecule/pdmysql/pdps/tasks/main.yml b/molecule/pdmysql/pdps/tasks/main.yml index ab2902ddf..f0ec94933 100644 --- a/molecule/pdmysql/pdps/tasks/main.yml +++ b/molecule/pdmysql/pdps/tasks/main.yml @@ -103,14 +103,6 @@ update_cache: yes when: ansible_os_family == "Debian" - - name: Install ProxySQL rpm package with yum - yum: - name: "{{ proxysql_package }}" - state: latest - when: - - ansible_facts['distribution'] in ['RedHat','CentOS','OracleLinux','Amazon'] - - ansible_facts['distribution_major_version'] | int < 8 - - name: Install ProxySQL rpm package with dnf dnf: name: "{{ proxysql_package }}" @@ -118,7 +110,7 @@ update_cache: yes when: - ansible_facts['distribution'] in ['RedHat','CentOS','OracleLinux','Amazon'] - - ansible_facts['distribution_major_version'] | int >= 8 + - ansible_facts['distribution_major_version'] | int > 8 #install initscripts-service manually on OL9 till DISTMYSQL-300 is fixed - name: install init scripts for OL9 @@ -131,12 +123,21 @@ - name: start proxysql service command: service proxysql start + when: + - ansible_facts['distribution'] in ['RedHat','CentOS','OracleLinux','Amazon'] + - ansible_facts['distribution_major_version'] | int > 8 - name: stop proxysql service command: service proxysql stop + when: + - ansible_facts['distribution'] in ['RedHat','CentOS','OracleLinux','Amazon'] + - ansible_facts['distribution_major_version'] | int > 8 - name: start proxysql service command: service proxysql start + when: + - ansible_facts['distribution'] in ['RedHat','CentOS','OracleLinux','Amazon'] + - ansible_facts['distribution_major_version'] | int > 8 - name: install orchestrator new deb packages apt: From 5af38507b94b3f4693e34620e24dbd7174aa1424 Mon Sep 17 00:00:00 2001 From: kaushikpuneet07 Date: Sat, 1 Aug 2026 19:10:11 +0530 Subject: [PATCH 17/28] update --- .../pdmysql/tests/test_common_proxysql2.py | 34 ++++++++++++------- 1 file changed, 21 insertions(+), 13 deletions(-) diff --git a/molecule/pdmysql/tests/test_common_proxysql2.py b/molecule/pdmysql/tests/test_common_proxysql2.py index e876b5f34..3990d2bb0 100644 --- a/molecule/pdmysql/tests/test_common_proxysql2.py +++ b/molecule/pdmysql/tests/test_common_proxysql2.py @@ -1,33 +1,41 @@ import os +import pytest import testinfra.utils.ansible_runner + from .settings import * -import pytest testinfra_hosts = testinfra.utils.ansible_runner.AnsibleRunner( - os.environ['MOLECULE_INVENTORY_FILE']).get_hosts('all') + os.environ["MOLECULE_INVENTORY_FILE"] +).get_hosts("all") VERSION = os.getenv("PROXYSQL_VERSION") + def test_package_is_installed(host): assert ( host.package("proxysql2").is_installed or host.package("proxysql3").is_installed ), "Neither proxysql2 nor proxysql3 is installed" -def test_proxysql2_version(host): - cmd = 'proxysql --version' - result = host.run(cmd) + +def test_proxysql_version(host): + result = host.run("proxysql --version") assert result.rc == 0, result.stderr assert VERSION in result.stdout, result.stdout + @pytest.mark.pkg_source def test_sources_version(host): - if REPO == "testing" or REPO == "experimental": - pytest.skip("This test only for main repo") - dist = host.system_info.distribution - if dist.lower() in RHEL_DISTS: - pytest.skip("This test only for DEB distributions") - cmd = "apt-cache madison proxysql2 | grep Source | grep \"{}\"".format(VERSION) - result = host.run(cmd) - assert result.rc == 0, (result.stderr, result.stdout) + if REPO in ("testing", "experimental"): + pytest.skip("This test is only for the main repository") + + dist = host.system_info.distribution.lower() + major = int(host.system_info.release.split(".")[0]) + + # Run only on RHEL/Oracle Linux 9 and 10 + if dist not in ("redhat", "oracle") or major not in (9, 10): + pytest.skip("This test runs only on RHEL/Oracle Linux 9 and 10") + + result = host.run("rpm -qi proxysql3") + assert result.rc == 0, result.stderr assert VERSION in result.stdout, result.stdout From 7b565bb18b13c828dda421e2fe1032504b630c44 Mon Sep 17 00:00:00 2001 From: kaushikpuneet07 Date: Sat, 1 Aug 2026 19:23:18 +0530 Subject: [PATCH 18/28] update --- molecule/pdmysql/orchestrator/files/my.sandbox.cn_master | 8 ++++---- molecule/pdmysql/orchestrator/files/my.sandbox.cn_node1 | 8 ++++---- molecule/pdmysql/orchestrator/files/my.sandbox.cn_node2 | 8 ++++---- molecule/pdmysql/orchestrator/files/my.sandbox.cn_node3 | 8 ++++---- 4 files changed, 16 insertions(+), 16 deletions(-) diff --git a/molecule/pdmysql/orchestrator/files/my.sandbox.cn_master b/molecule/pdmysql/orchestrator/files/my.sandbox.cn_master index 380d93eb6..cd2b55e2f 100644 --- a/molecule/pdmysql/orchestrator/files/my.sandbox.cn_master +++ b/molecule/pdmysql/orchestrator/files/my.sandbox.cn_master @@ -12,7 +12,7 @@ socket = /tmp/mysql_sandbox10111.sock user = root port = 10111 socket = /tmp/mysql_sandbox10111.sock -basedir = /usr/bin +basedir = /usr datadir = /root/sandboxes/ci/master/data tmpdir = /root/sandboxes/ci/master/tmp pid-file = /root/sandboxes/ci/master/data/mysql_sandbox10111.pid @@ -47,6 +47,6 @@ performance_schema=0 innodb_buffer_pool_size=32M slave_net_timeout=2 read_only=1 -plugin-load-add=semisync_master.so -plugin-load-add=semisync_slave.so -rpl_semi_sync_master_timeout=60000 +plugin-load-add=semisync_source.so +plugin-load-add=semisync_replica.so +rpl_semi_sync_source_timeout=60000 diff --git a/molecule/pdmysql/orchestrator/files/my.sandbox.cn_node1 b/molecule/pdmysql/orchestrator/files/my.sandbox.cn_node1 index 2428c1bf4..b452c7098 100644 --- a/molecule/pdmysql/orchestrator/files/my.sandbox.cn_node1 +++ b/molecule/pdmysql/orchestrator/files/my.sandbox.cn_node1 @@ -12,7 +12,7 @@ socket = /tmp/mysql_sandbox10112.sock user = root port = 10112 socket = /tmp/mysql_sandbox10112.sock -basedir = /usr/bin +basedir = /usr datadir = /root/sandboxes/ci/node1/data tmpdir = /root/sandboxes/ci/node1/tmp pid-file = /root/sandboxes/ci/node1/data/mysql_sandbox10112.pid @@ -47,6 +47,6 @@ performance_schema=0 innodb_buffer_pool_size=32M slave_net_timeout=2 read_only=1 -plugin-load-add=semisync_master.so -plugin-load-add=semisync_slave.so -rpl_semi_sync_master_timeout=60000 +plugin-load-add=semisync_source.so +plugin-load-add=semisync_replica.so +rpl_semi_sync_source_timeout=60000 diff --git a/molecule/pdmysql/orchestrator/files/my.sandbox.cn_node2 b/molecule/pdmysql/orchestrator/files/my.sandbox.cn_node2 index d90967b49..ebf86d450 100644 --- a/molecule/pdmysql/orchestrator/files/my.sandbox.cn_node2 +++ b/molecule/pdmysql/orchestrator/files/my.sandbox.cn_node2 @@ -12,7 +12,7 @@ socket = /tmp/mysql_sandbox10113.sock user = root port = 10113 socket = /tmp/mysql_sandbox10113.sock -basedir = /usr/bin +basedir = /usr datadir = /root/sandboxes/ci/node2/data tmpdir = /root/sandboxes/ci/node2/tmp pid-file = /root/sandboxes/ci/node2/data/mysql_sandbox10113.pid @@ -47,6 +47,6 @@ performance_schema=0 innodb_buffer_pool_size=32M slave_net_timeout=2 read_only=1 -plugin-load-add=semisync_master.so -plugin-load-add=semisync_slave.so -rpl_semi_sync_master_timeout=60000 +plugin-load-add=semisync_source.so +plugin-load-add=semisync_replica.so +rpl_semi_sync_source_timeout=60000 diff --git a/molecule/pdmysql/orchestrator/files/my.sandbox.cn_node3 b/molecule/pdmysql/orchestrator/files/my.sandbox.cn_node3 index 0aeba65ef..8d15c4fa6 100644 --- a/molecule/pdmysql/orchestrator/files/my.sandbox.cn_node3 +++ b/molecule/pdmysql/orchestrator/files/my.sandbox.cn_node3 @@ -12,7 +12,7 @@ socket = /tmp/mysql_sandbox10114.sock user = root port = 10114 socket = /tmp/mysql_sandbox10114.sock -basedir = /usr/bin +basedir = /usr datadir = /root/sandboxes/ci/node3/data tmpdir = /root/sandboxes/ci/node3/tmp pid-file = /root/sandboxes/ci/node3/data/mysql_sandbox10114.pid @@ -47,6 +47,6 @@ performance_schema=0 innodb_buffer_pool_size=32M slave_net_timeout=2 read_only=1 -plugin-load-add=semisync_master.so -plugin-load-add=semisync_slave.so -rpl_semi_sync_master_timeout=60000 +plugin-load-add=semisync_source.so +plugin-load-add=semisync_replica.so +rpl_semi_sync_source_timeout=60000 From a73cdf87780ee1a40a916293cc4191bf3dda50eb Mon Sep 17 00:00:00 2001 From: kaushikpuneet07 Date: Sat, 1 Aug 2026 19:26:08 +0530 Subject: [PATCH 19/28] update --- molecule/pdmysql/tests/test_pdps_ps.py | 1 - tasks/install_ps97.yml | 1 + 2 files changed, 1 insertion(+), 1 deletion(-) diff --git a/molecule/pdmysql/tests/test_pdps_ps.py b/molecule/pdmysql/tests/test_pdps_ps.py index 8b7b2e5e1..79a79888f 100644 --- a/molecule/pdmysql/tests/test_pdps_ps.py +++ b/molecule/pdmysql/tests/test_pdps_ps.py @@ -28,7 +28,6 @@ 'percona-server-test', 'percona-server-source', 'percona-server-server-core', - 'percona-mysql-rocksdb', 'percona-mysql-shell', 'percona-server-common', 'percona-server-client-core', diff --git a/tasks/install_ps97.yml b/tasks/install_ps97.yml index e010b2c5b..fdd52d425 100644 --- a/tasks/install_ps97.yml +++ b/tasks/install_ps97.yml @@ -32,6 +32,7 @@ - percona-server-client{{ pro_suf | default('') }} - percona-mysql-router{{ pro_suf | default('') }} - percona-server-rocksdb + - percona-server #- percona-mysql-router-dbgsym{{ pro_suf | default('') }} percona_server_js_pkg: "percona-server-js{{ pro_suf | default('') }}" packages: "{{ packages_base + (install_percona_server_js | default(true) | bool | ternary([percona_server_js_pkg], [])) }}" From 3147ba545a4adbadefd99c1d090adb887cbfabf1 Mon Sep 17 00:00:00 2001 From: kaushikpuneet07 Date: Sat, 1 Aug 2026 19:29:07 +0530 Subject: [PATCH 20/28] update --- molecule/pdmysql/pdps/molecule/oracle-8/molecule.yml | 2 +- molecule/pdmysql/pdps/molecule/rhel-8/molecule.yml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/molecule/pdmysql/pdps/molecule/oracle-8/molecule.yml b/molecule/pdmysql/pdps/molecule/oracle-8/molecule.yml index 5e9d0b287..afc2828e9 100644 --- a/molecule/pdmysql/pdps/molecule/oracle-8/molecule.yml +++ b/molecule/pdmysql/pdps/molecule/oracle-8/molecule.yml @@ -8,7 +8,7 @@ platforms: region: us-west-2 image: ami-0c32e4ead7507bc6f vpc_subnet_id: subnet-0430e63d7cdbcd237 - instance_type: t2.small + instance_type: t2.medium ssh_user: ec2-user root_device_name: /dev/sda1 instance_tags: diff --git a/molecule/pdmysql/pdps/molecule/rhel-8/molecule.yml b/molecule/pdmysql/pdps/molecule/rhel-8/molecule.yml index 99bd63b30..43acf60e9 100644 --- a/molecule/pdmysql/pdps/molecule/rhel-8/molecule.yml +++ b/molecule/pdmysql/pdps/molecule/rhel-8/molecule.yml @@ -8,7 +8,7 @@ platforms: region: us-west-2 image: ami-08970fb2e5767e3b8 vpc_subnet_id: subnet-0430e63d7cdbcd237 - instance_type: t2.small + instance_type: t2.medium ssh_user: ec2-user root_device_name: /dev/sda1 instance_tags: From 6cb5c5644a85b3dd194bdbe0e28e26d3e7ccaf41 Mon Sep 17 00:00:00 2001 From: kaushikpuneet07 Date: Sat, 1 Aug 2026 22:18:34 +0530 Subject: [PATCH 21/28] update --- molecule/pdmysql/tests/test_common_proxysql2.py | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/molecule/pdmysql/tests/test_common_proxysql2.py b/molecule/pdmysql/tests/test_common_proxysql2.py index 3990d2bb0..83f50a203 100644 --- a/molecule/pdmysql/tests/test_common_proxysql2.py +++ b/molecule/pdmysql/tests/test_common_proxysql2.py @@ -10,6 +10,11 @@ VERSION = os.getenv("PROXYSQL_VERSION") +def is_rhel8(host): + dist = host.system_info.distribution.lower() + release = host.system_info.release.split(".")[0] + return dist in ("redhat", "rhel", "oracle", "ol") and release == "8" + def test_package_is_installed(host): assert ( From 3d1135f776d3110c70f00caa4ba55ce38956ced8 Mon Sep 17 00:00:00 2001 From: kaushikpuneet07 Date: Sat, 1 Aug 2026 22:20:31 +0530 Subject: [PATCH 22/28] update --- .../pdmysql/tests/test_common_proxysql2.py | 18 +++++++++++++++--- 1 file changed, 15 insertions(+), 3 deletions(-) diff --git a/molecule/pdmysql/tests/test_common_proxysql2.py b/molecule/pdmysql/tests/test_common_proxysql2.py index 83f50a203..71eb3a93a 100644 --- a/molecule/pdmysql/tests/test_common_proxysql2.py +++ b/molecule/pdmysql/tests/test_common_proxysql2.py @@ -10,10 +10,22 @@ VERSION = os.getenv("PROXYSQL_VERSION") -def is_rhel8(host): +def skip_proxysql_tests(host): dist = host.system_info.distribution.lower() - release = host.system_info.release.split(".")[0] - return dist in ("redhat", "rhel", "oracle", "ol") and release == "8" + major = host.system_info.release.split(".")[0] + + result = host.run("mysqld --version") + if result.rc != 0: + return False + + # mysqld Ver 9.7.1-1 ... + ps_major = int(result.stdout.split()[2].split(".")[0]) + + return ( + dist in ("redhat", "rhel", "oracle", "ol") + and major == "8" + and ps_major >= 9 + ) def test_package_is_installed(host): From 2052a3124a87e7fb034073ddd95df874aa89cd61 Mon Sep 17 00:00:00 2001 From: kaushikpuneet07 Date: Sun, 2 Aug 2026 12:35:30 +0530 Subject: [PATCH 23/28] update --- .../pdmysql/pdps_minor_upgrade/tasks/main.yml | 226 ++++++------------ .../pdmysql/tests/test_common_proxysql2.py | 22 +- 2 files changed, 87 insertions(+), 161 deletions(-) diff --git a/molecule/pdmysql/pdps_minor_upgrade/tasks/main.yml b/molecule/pdmysql/pdps_minor_upgrade/tasks/main.yml index 3b12780d1..52d9507e0 100644 --- a/molecule/pdmysql/pdps_minor_upgrade/tasks/main.yml +++ b/molecule/pdmysql/pdps_minor_upgrade/tasks/main.yml @@ -36,92 +36,47 @@ command: dnf module disable mysql -y when: ansible_facts['distribution'] in ['RedHat','CentOS','OracleLinux','Amazon'] and ansible_facts['distribution_major_version'] | int == 8 - - name: install Percona Server deb packages - apt: - name: "{{ packages }}" - update_cache: yes - state: latest - vars: - packages: - - percona-server-server - - percona-server-test - - percona-server-dbg - - percona-server-source - - percona-server-client - - percona-server-rocksdb - when: ansible_os_family == "Debian" - environment: - PERCONA_TELEMETRY_DISABLE: "1" - - - name: install Percona Server rpm packages with yum - yum: - name: "{{ packages }}" - state: latest -# disablerepo: "epel" - update_cache: yes - vars: - packages: - - percona-server-server - - percona-server-client - - percona-server-test - - percona-server-debuginfo - - percona-server-devel - - percona-server-rocksdb - when: ansible_facts['distribution'] in ['RedHat','CentOS','OracleLinux','Amazon'] and ansible_facts['distribution_major_version'] | int < 8 - environment: - PERCONA_TELEMETRY_DISABLE: "1" - - - name: install Percona Server rpm packages with dnf - dnf: - name: "{{ packages }}" - state: latest - update_cache: yes - vars: - packages: - - percona-server-server - - percona-server-client - - percona-server-test - - percona-server-debuginfo - - percona-server-devel - - percona-server-rocksdb - when: ansible_facts['distribution'] in ['RedHat','CentOS','OracleLinux','Amazon'] and ansible_facts['distribution_major_version'] | int >= 8 - environment: - PERCONA_TELEMETRY_DISABLE: "1" + - name: Install Percona Server packages + include_tasks: >- + {{ + '../../../../tasks/install_ps97.yml' + if '9.7' in lookup('env', 'VERSION') + else '../../../../tasks/install_ps84.yml' + if '8.4' in lookup('env', 'VERSION') + else '../../../../tasks/install_ps_innovation.yml' + }} # At this moment RHEL PXB packages do not support packages upgrade so we do not install them for major update on rhel. Re-check https://perconacorp.slack.com/archives/C047F39JKEW/p1700822258537029 - name: install Percona XtraBackup {{ major_release_version }} packages include_tasks: ../../../tasks/install_pxb_innovation.yml vars: - major_release_version: "{{ lookup('env', 'FROM_VERSION').split('.')[:2]|join('') }}" + major_release_version: "{{ lookup('env', 'VERSION').split('.')[:2] | join('') }}" when: ansible_os_family == "Debian" or (lookup('env', 'FROM_VERSION').split('.')[:2]|join('') == lookup('env', 'VERSION').split('.')[:2]|join('') and ansible_os_family == "RedHat") - - name: install proxysql new deb packages + - name: Set ProxySQL package name + set_fact: + proxysql_package: >- + {{ + 'proxysql3' + if lookup('env', 'PROXYSQL_VERSION').startswith('3.') + else 'proxysql2' + }} + + - name: Install ProxySQL deb package apt: - name: "{{ packages }}" - update_cache: yes + name: "{{ proxysql_package }}" state: latest - vars: - packages: - - proxysql2 + update_cache: yes when: ansible_os_family == "Debian" - - name: install proxysql new rpm packages with yum - yum: - name: "{{ packages }}" - state: latest - vars: - packages: - - proxysql2 - when: ansible_facts['distribution'] in ['RedHat','CentOS','OracleLinux','Amazon'] and ansible_facts['distribution_major_version'] | int < 8 - - - name: install proxysql new rpm packages with dnf + - name: Install ProxySQL rpm package with dnf dnf: - name: "{{ packages }}" + name: "{{ proxysql_package }}" state: latest - vars: - packages: - - proxysql2 - when: ansible_facts['distribution'] in ['RedHat','CentOS','OracleLinux','Amazon'] and ansible_facts['distribution_major_version'] | int >= 8 + update_cache: yes + when: + - ansible_facts['distribution'] in ['RedHat','CentOS','OracleLinux','Amazon'] + - ansible_facts['distribution_major_version'] | int > 8 #install initscripts-service manually on OL9 till DISTMYSQL-300 is fixed - name: install init scripts for OL9 @@ -134,12 +89,21 @@ - name: start proxysql service command: service proxysql start + when: + - ansible_facts['distribution'] in ['RedHat','CentOS','OracleLinux','Amazon'] + - ansible_facts['distribution_major_version'] | int > 8 - name: stop proxysql service command: service proxysql stop + when: + - ansible_facts['distribution'] in ['RedHat','CentOS','OracleLinux','Amazon'] + - ansible_facts['distribution_major_version'] | int > 8 - name: start proxysql service command: service proxysql start + when: + - ansible_facts['distribution'] in ['RedHat','CentOS','OracleLinux','Amazon'] + - ansible_facts['distribution_major_version'] | int > - name: install orchestrator new deb packages apt: @@ -265,102 +229,66 @@ - name: install Percona Toolkit new deb packages include_tasks: ../../../tasks/install_pt.yml - - name: install Percona Server deb packages - apt: - name: "{{ packages }}" - update_cache: yes - state: latest - vars: - packages: - - percona-server-server - - percona-server-test - - percona-server-dbg - - percona-server-source - - percona-server-client - - percona-server-rocksdb - when: ansible_os_family == "Debian" - environment: - PERCONA_TELEMETRY_DISABLE: "1" - - - name: install Percona Server rpm packages with yum - yum: - name: "{{ packages }}" - state: latest - update_cache: yes - vars: - packages: - - percona-server-server - - percona-server-client - - percona-server-test - - percona-server-debuginfo - - percona-server-devel - - percona-server-rocksdb - when: ansible_facts['distribution'] in ['RedHat','CentOS','OracleLinux','Amazon'] and ansible_facts['distribution_major_version'] | int < 8 - environment: - PERCONA_TELEMETRY_DISABLE: "1" - - - name: install Percona Server rpm packages with dnf - dnf: - name: "{{ packages }}" - state: latest - update_cache: yes - vars: - packages: - - percona-server-server - - percona-server-client - - percona-server-test - - percona-server-debuginfo - - percona-server-devel - - percona-server-rocksdb - when: ansible_facts['distribution'] in ['RedHat','CentOS','OracleLinux','Amazon'] and ansible_facts['distribution_major_version'] | int >= 8 - environment: - PERCONA_TELEMETRY_DISABLE: "1" + - name: Install Percona Server packages + include_tasks: >- + {{ + '../../../../tasks/install_ps97.yml' + if '9.7' in lookup('env', 'VERSION') + else '../../../../tasks/install_ps84.yml' + if '8.4' in lookup('env', 'VERSION') + else '../../../../tasks/install_ps_innovation.yml' + }} - name: Verify telemetry version and package installation command: /package-testing/check_tel_ver_pack.sh - when: ansible_distribution_release != "focal" - name: install Percona XtraBackup {{ major_release_version }} packages include_tasks: ../../../tasks/install_pxb_innovation.yml vars: - major_release_version: "{{ lookup('env', 'VERSION').split('.')[:2]|join('') }}" + major_release_version: "{{ lookup('env', 'VERSION').split('.')[:2] | join('') }}" - - name: install proxysql new deb packages + - name: Set ProxySQL package name + set_fact: + proxysql_package: >- + {{ + 'proxysql3' + if lookup('env', 'PROXYSQL_VERSION').startswith('3.') + else 'proxysql2' + }} + + - name: Install ProxySQL deb package apt: - name: "{{ packages }}" - update_cache: yes + name: "{{ proxysql_package }}" state: latest - vars: - packages: - - proxysql2 + update_cache: yes when: ansible_os_family == "Debian" - - name: install proxysql new rpm packages with yum - yum: - name: "{{ packages }}" - state: latest - vars: - packages: - - proxysql2 - when: ansible_facts['distribution'] in ['RedHat','CentOS','OracleLinux','Amazon'] and ansible_facts['distribution_major_version'] | int < 8 - - - name: install proxysql new rpm packages with dnf + - name: Install ProxySQL rpm package with dnf dnf: - name: "{{ packages }}" + name: "{{ proxysql_package }}" state: latest - vars: - packages: - - proxysql2 - when: ansible_facts['distribution'] in ['RedHat','CentOS','OracleLinux','Amazon'] and ansible_facts['distribution_major_version'] | int >= 8 + update_cache: yes + when: + - ansible_facts['distribution'] in ['RedHat','CentOS','OracleLinux','Amazon'] + - ansible_facts['distribution_major_version'] | int > 8 - name: start proxysql service - service: name=proxysql state=started + command: service proxysql start + when: + - ansible_facts['distribution'] in ['RedHat','CentOS','OracleLinux','Amazon'] + - ansible_facts['distribution_major_version'] | int > 8 - name: stop proxysql service - service: name=proxysql state=stopped + command: service proxysql stop + when: + - ansible_facts['distribution'] in ['RedHat','CentOS','OracleLinux','Amazon'] + - ansible_facts['distribution_major_version'] | int > 8 - name: start proxysql service - service: name=proxysql state=started + command: service proxysql start + when: + - ansible_facts['distribution'] in ['RedHat','CentOS','OracleLinux','Amazon'] + - ansible_facts['distribution_major_version'] | int > 8 - name: install orchestrator new deb packages apt: diff --git a/molecule/pdmysql/tests/test_common_proxysql2.py b/molecule/pdmysql/tests/test_common_proxysql2.py index 71eb3a93a..a700c0cd0 100644 --- a/molecule/pdmysql/tests/test_common_proxysql2.py +++ b/molecule/pdmysql/tests/test_common_proxysql2.py @@ -10,36 +10,34 @@ VERSION = os.getenv("PROXYSQL_VERSION") -def skip_proxysql_tests(host): +def should_skip(host): dist = host.system_info.distribution.lower() - major = host.system_info.release.split(".")[0] + rel = host.system_info.release.split(".")[0] result = host.run("mysqld --version") if result.rc != 0: return False - # mysqld Ver 9.7.1-1 ... ps_major = int(result.stdout.split()[2].split(".")[0]) - return ( - dist in ("redhat", "rhel", "oracle", "ol") - and major == "8" - and ps_major >= 9 - ) - + return dist in ("oracle", "ol", "redhat", "rhel") and rel == "8" and ps_major >= 9 def test_package_is_installed(host): + if should_skip(host): + pytest.skip("ProxySQL unsupported on OL8/RHEL8 with PS9+") + assert ( host.package("proxysql2").is_installed or host.package("proxysql3").is_installed - ), "Neither proxysql2 nor proxysql3 is installed" + ) def test_proxysql_version(host): + if should_skip(host): + pytest.skip("ProxySQL unsupported on OL8/RHEL8 with PS9+") + result = host.run("proxysql --version") assert result.rc == 0, result.stderr - assert VERSION in result.stdout, result.stdout - @pytest.mark.pkg_source def test_sources_version(host): From 55deb5520bdc3e64077c0a44b74db34a82228117 Mon Sep 17 00:00:00 2001 From: kaushikpuneet07 Date: Sun, 2 Aug 2026 13:33:08 +0530 Subject: [PATCH 24/28] update --- tasks/remove_pxb_innovation.yml | 42 +++++++++++++++++++++++++++++++++ 1 file changed, 42 insertions(+) create mode 100644 tasks/remove_pxb_innovation.yml diff --git a/tasks/remove_pxb_innovation.yml b/tasks/remove_pxb_innovation.yml new file mode 100644 index 000000000..e58606aea --- /dev/null +++ b/tasks/remove_pxb_innovation.yml @@ -0,0 +1,42 @@ +# +# This task removes Percona XtraBackup {{ major_release_version }} on CentOS and Debian/Ubuntu +# + +- name: Remove Percona XtraBackup deb packages for pxb-{{ major_release_version }} + apt: + name: "{{ packages }}" + state: absent + purge: yes + autoremove: yes + vars: + packages: + - percona-xtrabackup-{{ major_release_version }} + - percona-xtrabackup-test-{{ major_release_version }} + - percona-xtrabackup-dbg-{{ major_release_version }} + when: ansible_os_family == "Debian" + +- name: Remove Percona XtraBackup rpm packages for pxb-{{ major_release_version }} yum + yum: + name: "{{ packages }}" + state: absent + vars: + packages: + - percona-xtrabackup-{{ major_release_version }} + - percona-xtrabackup-test-{{ major_release_version }} + - percona-xtrabackup-{{ major_release_version }}-debuginfo + when: + - ansible_facts['distribution'] in ["RedHat", "CentOS", "OracleLinux", "Amazon", "Rocky"] + - ansible_facts['distribution_major_version'] | int <= 7 + +- name: Remove Percona XtraBackup rpm packages for pxb-{{ major_release_version }} dnf + dnf: + name: "{{ packages }}" + state: absent + vars: + packages: + - percona-xtrabackup-{{ major_release_version }} + - percona-xtrabackup-test-{{ major_release_version }} + - percona-xtrabackup-{{ major_release_version }}-debuginfo + when: + - ansible_facts['distribution'] in ["RedHat", "CentOS", "OracleLinux", "Amazon", "Rocky"] + - ansible_facts['distribution_major_version'] | int >= 8 From ba70ebaf3eefe45e7c59d22b1b0a986bdeabde09 Mon Sep 17 00:00:00 2001 From: kaushikpuneet07 Date: Sun, 2 Aug 2026 13:36:12 +0530 Subject: [PATCH 25/28] update --- molecule/pdmysql/pdps/playbooks/cleanup.yml | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/molecule/pdmysql/pdps/playbooks/cleanup.yml b/molecule/pdmysql/pdps/playbooks/cleanup.yml index a9b9aa632..86ec52d88 100644 --- a/molecule/pdmysql/pdps/playbooks/cleanup.yml +++ b/molecule/pdmysql/pdps/playbooks/cleanup.yml @@ -4,6 +4,11 @@ become: true become_method: sudo tasks: + - name: Remove Percona XtraBackup packages + include_tasks: ../../../tasks/remove_pxb_innovation.yml + vars: + major_release_version: "{{ lookup('env', 'VERSION').split('.')[:2] | join('') }}" + - name: remove PDPS deb packages apt: name: "{{ packages }}" From a61c07de56f1bf36b71670526504bb8fe42cf18b Mon Sep 17 00:00:00 2001 From: kaushikpuneet07 Date: Sun, 2 Aug 2026 13:48:13 +0530 Subject: [PATCH 26/28] update --- molecule/pdmysql/pdps/playbooks/cleanup.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/molecule/pdmysql/pdps/playbooks/cleanup.yml b/molecule/pdmysql/pdps/playbooks/cleanup.yml index 86ec52d88..0d86b9cdb 100644 --- a/molecule/pdmysql/pdps/playbooks/cleanup.yml +++ b/molecule/pdmysql/pdps/playbooks/cleanup.yml @@ -5,7 +5,7 @@ become_method: sudo tasks: - name: Remove Percona XtraBackup packages - include_tasks: ../../../tasks/remove_pxb_innovation.yml + include_tasks: ../../../../tasks/remove_pxb_innovation.yml vars: major_release_version: "{{ lookup('env', 'VERSION').split('.')[:2] | join('') }}" From 50abf63b679986338cb43a054eb2b81aa726621b Mon Sep 17 00:00:00 2001 From: kaushikpuneet07 Date: Wed, 5 Aug 2026 17:56:49 +0530 Subject: [PATCH 27/28] update --- molecule/pdmysql/pdps_setup/tasks/main.yml | 125 +++++++++------------ 1 file changed, 50 insertions(+), 75 deletions(-) diff --git a/molecule/pdmysql/pdps_setup/tasks/main.yml b/molecule/pdmysql/pdps_setup/tasks/main.yml index e65c55c08..7690b1161 100644 --- a/molecule/pdmysql/pdps_setup/tasks/main.yml +++ b/molecule/pdmysql/pdps_setup/tasks/main.yml @@ -31,15 +31,21 @@ version: "{{ lookup('env', 'VERSION').split('-')[0] }}" when: not major_repo - - name: setup the major pdps-{{ version }} {{ repo }} - command: percona-release enable pdps-{{ version }} {{ repo }} + - name: enable the major pdps-{{ version }} {{ repo }} + command: percona-release enable-only pdps-{{ version }} {{ repo }} vars: repo: "{{ lookup('env', 'REPO') }}" - version: "{{ '84-lts' if '8.4' in lookup('env', 'VERSION') else '8.0' if '8.0.' in lookup('env', 'VERSION') else '8x-innovation' }}" + version: >- + {{ + '97-lts' if '9.7' in lookup('env', 'VERSION') + else '9x-innovation' if '9.' in lookup('env', 'VERSION') + else '84-lts' if '8.4' in lookup('env', 'VERSION') + else '8x-innovation' + }} when: major_repo - - name: install Percona Toolkit new deb packages - include_tasks: ../../../tasks/install_pt.yml +# - name: install Percona Toolkit new deb packages +# include_tasks: ../../../tasks/install_pt.yml # revert order once pt issue(DISTMYSQL-400) is resolved for OL8 - name: disable the mysql module on RHEL/CentOS 8+ @@ -58,84 +64,45 @@ dnf makecache when: ansible_facts['distribution'] in ['RedHat','CentOS','OracleLinux','Amazon'] and ansible_facts['distribution_major_version'] | int >= 8 - - name: install Percona Server deb packages - apt: - name: "{{ packages }}" - update_cache: yes - state: latest - vars: - packages: - - percona-server-server - - percona-server-test - - percona-server-dbg - - percona-server-source - - percona-server-client - - percona-server-rocksdb - when: ansible_os_family == "Debian" - - - name: install Percona Server rpm packages with yum - yum: - name: "{{ packages }}" - state: latest -# disablerepo: "epel" - update_cache: yes - vars: - packages: - - percona-server-server - - percona-server-client - - percona-server-test - - percona-server-debuginfo - - percona-server-devel - - percona-server-rocksdb - when: ansible_facts['distribution'] in ['RedHat','CentOS','OracleLinux','Amazon'] and ansible_facts['distribution_major_version'] | int < 8 - - - name: install Percona Server rpm packages with dnf - dnf: - name: "{{ packages }}" - state: latest - update_cache: yes - vars: - packages: - - percona-server-server - - percona-server-client - - percona-server-test - - percona-server-debuginfo - - percona-server-devel - - percona-server-rocksdb - when: ansible_facts['distribution'] in ['RedHat','CentOS','OracleLinux','Amazon'] and ansible_facts['distribution_major_version'] | int >= 8 + - name: Install Percona Server packages + include_tasks: >- + {{ + '../../../../tasks/install_ps97.yml' + if '9.7' in lookup('env', 'VERSION') + else '../../../../tasks/install_ps84.yml' + if '8.4' in lookup('env', 'VERSION') + else '../../../../tasks/install_ps_innovation.yml' + }} - name: install Percona XtraBackup {{ major_release_version }} packages include_tasks: ../../../tasks/install_pxb_innovation.yml vars: - major_release_version: "{{ lookup('env', 'VERSION').split('.')[:2]|join('') }}" + major_release_version: "{{ lookup('env', 'VERSION').split('.')[:2] | join('') }}" + + - name: Set ProxySQL package name + set_fact: + proxysql_package: >- + {{ + 'proxysql3' + if lookup('env', 'PROXYSQL_VERSION').startswith('3.') + else 'proxysql2' + }} - - name: install proxysql new deb packages + - name: Install ProxySQL deb package apt: - name: "{{ packages }}" - update_cache: yes + name: "{{ proxysql_package }}" state: latest - vars: - packages: - - proxysql2 + update_cache: yes when: ansible_os_family == "Debian" - - name: install proxysql new rpm packages with yum - yum: - name: "{{ packages }}" - state: latest - vars: - packages: - - proxysql2 - when: ansible_facts['distribution'] in ['RedHat','CentOS','OracleLinux','Amazon'] and ansible_facts['distribution_major_version'] | int < 8 - - - name: install proxysql new rpm packages with dnf + - name: Install ProxySQL rpm package with dnf dnf: - name: "{{ packages }}" + name: "{{ proxysql_package }}" state: latest - vars: - packages: - - proxysql2 - when: ansible_facts['distribution'] in ['RedHat','CentOS','OracleLinux','Amazon'] and ansible_facts['distribution_major_version'] | int >= 8 + update_cache: yes + when: + - ansible_facts['distribution'] in ['RedHat','CentOS','OracleLinux','Amazon'] + - ansible_facts['distribution_major_version'] | int > 8 #install initscripts-service manually on OL9 till DISTMYSQL-300 is fixed @@ -149,12 +116,21 @@ - name: start proxysql service command: service proxysql start + when: + - ansible_facts['distribution'] in ['RedHat','CentOS','OracleLinux','Amazon'] + - ansible_facts['distribution_major_version'] | int > 8 - name: stop proxysql service command: service proxysql stop + when: + - ansible_facts['distribution'] in ['RedHat','CentOS','OracleLinux','Amazon'] + - ansible_facts['distribution_major_version'] | int > 8 - name: start proxysql service command: service proxysql start + when: + - ansible_facts['distribution'] in ['RedHat','CentOS','OracleLinux','Amazon'] + - ansible_facts['distribution_major_version'] | int > 8 - name: install orchestrator new deb packages apt: @@ -213,9 +189,8 @@ - name: restart mysql service service: name=mysql state=restarted - - name: Verify telemetry version and package installation - command: /package-testing/check_tel_ver_pack.sh - when: ansible_distribution_release != "focal" +# - name: Verify telemetry version and package installation +# command: /package-testing/check_tel_ver_pack.sh - name: install percona-mysql-shell package for RHEL/CentOS with yum yum: From 002488cac109a2453e13f0fc5a7ecea7c999b020 Mon Sep 17 00:00:00 2001 From: kaushikpuneet07 Date: Thu, 6 Aug 2026 10:58:36 +0530 Subject: [PATCH 28/28] update --- molecule/pdmysql/pdps_minor_upgrade/playbooks/cleanup.yml | 6 ++++++ molecule/pdmysql/pdps_setup/playbooks/cleanup.yml | 6 ++++++ 2 files changed, 12 insertions(+) diff --git a/molecule/pdmysql/pdps_minor_upgrade/playbooks/cleanup.yml b/molecule/pdmysql/pdps_minor_upgrade/playbooks/cleanup.yml index a9b9aa632..37948298e 100644 --- a/molecule/pdmysql/pdps_minor_upgrade/playbooks/cleanup.yml +++ b/molecule/pdmysql/pdps_minor_upgrade/playbooks/cleanup.yml @@ -4,6 +4,12 @@ become: true become_method: sudo tasks: + + - name: Remove Percona XtraBackup packages + include_tasks: ../../../../tasks/remove_pxb_innovation.yml + vars: + major_release_version: "{{ lookup('env', 'VERSION').split('.')[:2] | join('') }}" + - name: remove PDPS deb packages apt: name: "{{ packages }}" diff --git a/molecule/pdmysql/pdps_setup/playbooks/cleanup.yml b/molecule/pdmysql/pdps_setup/playbooks/cleanup.yml index a9b9aa632..37948298e 100644 --- a/molecule/pdmysql/pdps_setup/playbooks/cleanup.yml +++ b/molecule/pdmysql/pdps_setup/playbooks/cleanup.yml @@ -4,6 +4,12 @@ become: true become_method: sudo tasks: + + - name: Remove Percona XtraBackup packages + include_tasks: ../../../../tasks/remove_pxb_innovation.yml + vars: + major_release_version: "{{ lookup('env', 'VERSION').split('.')[:2] | join('') }}" + - name: remove PDPS deb packages apt: name: "{{ packages }}"