1
0
Fork 0
mirror of https://github.com/ansible-collections/community.mysql.git synced 2026-02-04 07:11:49 +00:00

Remove testing against mysqlclient (#736)

* Remove testing against mysqlclient

* Fix

* Update TESTING.md
This commit is contained in:
Andrew Klychkov 2025-09-16 09:56:04 +02:00 committed by GitHub
parent fed5f30203
commit 04b663b3b7
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
8 changed files with 8 additions and 77 deletions

View file

@ -58,14 +58,10 @@ jobs:
- '11.4.5' - '11.4.5'
connector_name: connector_name:
- pymysql - pymysql
- mysqlclient
connector_version: connector_version:
- '0.9.3' - '0.9.3'
- '1.0.2' - '1.0.2'
- '1.1.1' - '1.1.1'
- '2.0.1'
- '2.0.3'
- '2.1.1'
include: include:
@ -98,24 +94,6 @@ jobs:
- db_engine_name: mariadb - db_engine_name: mariadb
db_engine_version: '8.4.1' db_engine_version: '8.4.1'
- connector_name: pymysql
connector_version: '2.0.1'
- connector_name: pymysql
connector_version: '2.0.3'
- connector_name: pymysql
connector_version: '2.1.1'
- connector_name: mysqlclient
connector_version: '0.9.3'
- connector_name: mysqlclient
connector_version: '1.0.2'
- connector_name: mysqlclient
connector_version: '1.1.1'
- db_engine_version: '8.0.38' - db_engine_version: '8.0.38'
ansible: stable-2.17 ansible: stable-2.17
@ -128,24 +106,12 @@ jobs:
- db_engine_version: '10.11.8' - db_engine_version: '10.11.8'
ansible: devel ansible: devel
- db_engine_version: '8.4.1'
connector_version: '0.9.3'
- db_engine_version: '8.4.1'
connector_version: '1.0.2'
- db_engine_version: '8.4.1' - db_engine_version: '8.4.1'
connector_version: '2.0.1' connector_version: '2.0.1'
- db_engine_version: '8.4.1' - db_engine_version: '8.4.1'
connector_version: '2.0.3' connector_version: '2.0.3'
- db_engine_version: '10.11.8'
connector_version: '0.9.3'
- db_engine_version: '10.11.8'
connector_version: '1.0.2'
- db_engine_version: '10.11.8' - db_engine_version: '10.11.8'
connector_version: '2.0.1' connector_version: '2.0.1'
@ -158,12 +124,6 @@ jobs:
- db_engine_version: '8.4.1' - db_engine_version: '8.4.1'
ansible: stable-2.15 ansible: stable-2.15
- connector_version: '1.1.1'
db_engine_version: '8.0.38'
- connector_version: '1.1.1'
db_engine_version: '10.11.8'
services: services:
db_primary: db_primary:
image: docker.io/library/${{ matrix.db_engine_name }}:${{ matrix.db_engine_version }} image: docker.io/library/${{ matrix.db_engine_name }}:${{ matrix.db_engine_version }}

View file

@ -73,7 +73,6 @@ The Makefile accept the following options
- Mandatory: true - Mandatory: true
- Choices: - Choices:
- "pymysql" - "pymysql"
- "mysqlclient"
- Description: The python package of the connector to use. In addition to selecting the test container, this value is also used for tests filtering: `when: connector_name == 'pymysql'`. - Description: The python package of the connector to use. In addition to selecting the test container, this value is also used for tests filtering: `when: connector_name == 'pymysql'`.
- `connector_version` - `connector_version`
@ -118,7 +117,7 @@ make ansible="stable-2.16" db_engine_name="mysql" db_engine_version="8.0.31" con
# Keep databases and ansible tests containers alives # Keep databases and ansible tests containers alives
# A single target and continue on errors # A single target and continue on errors
make ansible="stable-2.17" db_engine_name="mysql" db_engine_version="8.0.31" connector_name="mysqlclient" connector_version="2.0.3" target="test_mysql_query" keep_containers_alive=1 continue_on_errors=1 make ansible="stable-2.17" db_engine_name="mysql" db_engine_version="8.0.31" connector_name="pymysql" connector_version="1.0.2" target="test_mysql_query" keep_containers_alive=1 continue_on_errors=1
# If your system has an usupported version of Python: # If your system has an usupported version of Python:
make local_python_version="3.10" ansible="stable-2.17" db_engine_name="mariadb" db_engine_version="11.4.5" connector_name="pymysql" connector_version="1.0.2" make local_python_version="3.10" ansible="stable-2.17" db_engine_name="mariadb" db_engine_version="11.4.5" connector_name="pymysql" connector_version="1.0.2"

View file

@ -0,0 +1,2 @@
breaking_changes:
- collection - stop testing against mysqlclient connector as its support was deprecated in this collection - use PyMySQL connector instead! It'll stop working in 5.0.0 when we remove all related code (https://github.com/ansible-collections/community.mysql/issues/654).

View file

@ -33,14 +33,6 @@
when: when:
- connector_name == 'pymysql' - connector_name == 'pymysql'
- name: Assert that mysql_info module used the expected version of mysqlclient
assert:
that:
- primary_info.connector_name == 'MySQLdb'
- primary_info.connector_version == connector_version
when:
- connector_name == 'mysqlclient'
- name: Get the python version in use - name: Get the python version in use
ansible.builtin.shell: ansible.builtin.shell:
cmd: echo $( $(command -v python || command -v python3) -V ) cmd: echo $( $(command -v python || command -v python3) -V )

View file

@ -404,20 +404,15 @@
- connector_version is version('0.10.0', '<') - connector_version is version('0.10.0', '<')
# Issue https://github.com/ansible-collections/community.mysql/issues/268 # Issue https://github.com/ansible-collections/community.mysql/issues/268
- name: Assert that create table IF NOT EXISTS is changed with mysqlclient - name: Assert that create table IF NOT EXISTS is changed
assert: assert:
that: that:
# Mysqlclient 2.0.1 and pymysql 0.10.0+ drivers throws no warning, # pymysql 0.10.0+ drivers throw no warning,
# so it's impossible to figure out if the state was changed or not. # so it's impossible to figure out if the state was changed or not.
# We assume that it was for DDL queries by default in the code # We assume that it was for DDL queries by default in the code
- result is changed - result is changed
when: when:
- > - connector_name == 'pymysql' and connector_version is version('0.10.0', '>')
connector_name == 'mysqlclient'
or (
connector_name == 'pymysql'
and connector_version is version('0.10.0', '>')
)
- name: Drop db {{ test_db }} - name: Drop db {{ test_db }}
mysql_query: mysql_query:

View file

@ -278,7 +278,7 @@
fail_on_error: true fail_on_error: true
register: result register: result
# mysqlclient 2.0.1 and pymysql 0.10.0+ always return "changed" # pymysql 0.10.0+ always returns "changed"
- name: Assert that startreplica is not changed - name: Assert that startreplica is not changed
assert: assert:
that: that:
@ -306,7 +306,7 @@
timeout: 2 timeout: 2
# Test stopreplica mode: # Test stopreplica mode:
# mysqlclient 2.0.1 and pymysql 0.10.0+ always return "changed" # pymysql 0.10.0+ always returns "changed"
- name: Stop replica that is no longer running - name: Stop replica that is no longer running
mysql_replication: mysql_replication:
<<: *mysql_params <<: *mysql_params

View file

@ -60,13 +60,6 @@
when: when:
- connector_name == 'pymysql' - connector_name == 'pymysql'
- name: Assert that result is success for mysqlclient
ansible.builtin.assert:
that:
- result is succeeded
when:
- connector_name != 'pymysql'
- name: attempt connection with newly created user ignoring hostname - name: attempt connection with newly created user ignoring hostname
community.mysql.mysql_variables: community.mysql.mysql_variables:
variable: '{{ set_name }}' variable: '{{ set_name }}'

View file

@ -184,16 +184,6 @@
register: oor_result register: oor_result
ignore_errors: true ignore_errors: true
- include_tasks: assert_var.yml
vars:
changed: true
output: "{{ oor_result }}"
var_name: max_connect_errors
var_value: 1
when:
- connector_name == 'mysqlclient'
- db_engine == 'mysql' # mysqlclient returns "changed" with MariaDB
- include_tasks: assert_fail_msg.yml - include_tasks: assert_fail_msg.yml
vars: vars:
output: "{{ oor_result }}" output: "{{ oor_result }}"