Refactor filtering of tasks using connector's vars sets during setup

This commit is contained in:
Laurent Indermuehle 2022-08-11 15:00:36 +02:00
commit 4a87771a77
No known key found for this signature in database
GPG key ID: 93FA944C9F34DD09
11 changed files with 54 additions and 45 deletions

View file

@ -11,27 +11,40 @@
- name: Add fake port to config file
shell: 'echo "port = {{ fake_port }}" >> {{ config_file }}'
- name: Get pymysql version
shell: pip show pymysql | awk '/Version/ {print $2}'
register: pymysql_version
- name: Add blank line
shell: 'echo "" >> {{ config_file }}'
when: (pymysql_version.stdout | default('1000', true)) is version('0.9.3', '>=')
when:
- >
connector_name is not search('pymysql')
or (
connector_name is search('pymysql')
and connector_ver is version('0.9.3', '>=')
)
- name: Create include_dir
file:
path: '{{ include_dir }}'
state: directory
mode: '0777'
when: (pymysql_version.stdout | default('1000', true)) is version('0.9.3', '>=')
when:
- >
connector_name is not search('pymysql')
or (
connector_name is search('pymysql')
and connector_ver is version('0.9.3', '>=')
)
- name: Add include_dir
lineinfile:
path: '{{ config_file }}'
line: '!includedir {{ include_dir }}'
insertafter: EOF
when: (pymysql_version.stdout | default('1000', true)) is version('0.9.3', '>=')
when:
- >
connector_name is not search('pymysql')
or (
connector_name is search('pymysql')
and connector_ver is version('0.9.3', '>=')
)
- name: Create database using fake port to connect to, must fail
mysql_db:

View file

@ -9,8 +9,6 @@
block:
# ============================================================
- shell: pip show pymysql | awk '/Version/ {print $2}'
register: pymysql_version
- name: get server certificate
copy:
@ -49,12 +47,12 @@
- assert:
that:
- result is failed
when: pymysql_version.stdout != ""
when: connector_name is search('pymysql')
- assert:
that:
- result is succeeded
when: pymysql_version.stdout == ""
when: connector_name is not search('pymysql')
- name: attempt connection with newly created user ignoring hostname
mysql_db:

View file

@ -9,8 +9,6 @@
block:
# ============================================================
- shell: pip show pymysql | awk '/Version/ {print $2}'
register: pymysql_version
- name: get server certificate
copy:
@ -47,12 +45,12 @@
- assert:
that:
- result is failed
when: pymysql_version.stdout != ""
when: connector_name is search('pymysql')
- assert:
that:
- result is succeeded
when: pymysql_version.stdout == ""
when: connector_name is not search('pymysql')
- name: attempt connection with newly created user ignoring hostname
mysql_info:

View file

@ -9,8 +9,6 @@
block:
# ============================================================
- shell: pip show pymysql | awk '/Version/ {print $2}'
register: pymysql_version
- name: get server certificate
copy:
@ -47,12 +45,12 @@
- assert:
that:
- result is failed
when: pymysql_version.stdout != ""
when: connector_name is search('pymysql')
- assert:
that:
- result is succeeded
when: pymysql_version.stdout == ""
when: connector_name is not search('pymysql')
- name: attempt connection with newly created user ignoring hostname
mysql_query:

View file

@ -9,8 +9,6 @@
block:
# ============================================================
- shell: pip show pymysql | awk '/Version/ {print $2}'
register: pymysql_version
- name: get server certificate
copy:
@ -48,12 +46,12 @@
- assert:
that:
- result is failed
when: pymysql_version.stdout != ""
when: connector_name is search('pymysql')
- assert:
that:
- result is succeeded
when: pymysql_version.stdout == ""
when: connector_name is not search('pymysql')
- name: attempt connection with newly created user ignoring hostname
mysql_replication:

View file

@ -199,9 +199,6 @@
- replica_status.Exec_Source_Log_Pos != mysql_primary_status.Position
when: mysql8022_and_higher == true
- shell: pip show pymysql | awk '/Version/ {print $2}'
register: pymysql_version
- name: Start replica that is already running
mysql_replication:
<<: *mysql_params
@ -212,8 +209,14 @@
- assert:
that:
- result is not changed
when: (pymysql_version.stdout | default('1000', true)) is version('0.9.3', '<=')
- result is not changed
when:
- >
connector_name is not search('pymysql')
or (
connector_name is search('pymysql')
and connector_ver is version('0.9.3', '<=')
)
# Test stopreplica mode:
- name: Stop replica using deprecated stopslave choice
@ -239,5 +242,11 @@
- assert:
that:
- result is not changed
when: (pymysql_version.stdout | default('1000', true)) is version('0.9.3', '<=')
- result is not changed
when:
- >
connector_name is not search('pymysql')
or (
connector_name is search('pymysql')
and connector_ver is version('0.9.3', '<=')
)

View file

@ -9,8 +9,6 @@
block:
# ============================================================
- shell: pip show pymysql | awk '/Version/ {print $2}'
register: pymysql_version
- name: get server certificate
copy:

View file

@ -9,8 +9,6 @@
block:
# ============================================================
- shell: pip show pymysql | awk '/Version/ {print $2}'
register: pymysql_version
- name: get server certificate
copy:
@ -50,12 +48,12 @@
- assert:
that:
- result is failed
when: pymysql_version.stdout != ""
when: connector_name is search('pymysql')
- assert:
that:
- result is succeeded
when: pymysql_version.stdout == ""
when: connector_name is not search('pymysql')
- name: attempt connection with newly created user ignoring hostname
mysql_user:

View file

@ -334,12 +334,15 @@
# plugins that are loaded by default are sha2*, but these aren't compatible with pymysql < 0.9, so skip these tests
# for those versions.
#
- name: Get pymysql version
shell: pip show pymysql | awk '/Version/ {print $2}'
register: pymysql_version
- name: Test plugin auth switching which doesn't work on pymysql < 0.9
when: pymysql_version.stdout == "" or (pymysql_version.stdout != "" and pymysql_version.stdout is version('0.9', '>='))
when:
- >
connector_name is not search('pymysql')
or (
connector_name is search('pymysql')
and connector_ver is version('0.9', '>=')
)
block:
- name: Create user with plugin auth (empty auth string)

View file

@ -9,8 +9,6 @@
block:
# ============================================================
- shell: pip show pymysql | awk '/Version/ {print $2}'
register: pymysql_version
- name: get server certificate
copy:

View file

@ -151,8 +151,6 @@
# ============================================================
# Verify mysql_variable fails when setting an incorrect value (out of range)
#
- shell: pip show pymysql | awk '/Version/ {print $2}'
register: pymysql_version
- name: set mysql variable value to a number out of range
mysql_variables: