CI: fix string templating for ansible devel (core 2.19, 12 beta) in tests (#713)
Some checks are pending
Plugins CI / Sanity (Ⓐdevel) (push) Waiting to run
Plugins CI / Sanity (Ⓐstable-2.16) (push) Waiting to run
Plugins CI / Sanity (Ⓐstable-2.17) (push) Waiting to run
Plugins CI / Sanity (Ⓐstable-2.18) (push) Waiting to run
Plugins CI / Integration (Ⓐdevel, DB: mariadb 11.4.5, connector: mysqlclient 2.0.1) (push) Waiting to run
Plugins CI / Integration (Ⓐdevel, DB: mariadb 11.4.5, connector: mysqlclient 2.0.3) (push) Waiting to run
Plugins CI / Integration (Ⓐdevel, DB: mariadb 11.4.5, connector: mysqlclient 2.1.1) (push) Waiting to run
Plugins CI / Integration (Ⓐdevel, DB: mysql 8.4.1, connector: mysqlclient 2.1.1) (push) Waiting to run
Plugins CI / Integration (Ⓐdevel, DB: mariadb 11.4.5, connector: pymysql 0.9.3) (push) Waiting to run
Plugins CI / Integration (Ⓐdevel, DB: mariadb 11.4.5, connector: pymysql 1.0.2) (push) Waiting to run
Plugins CI / Integration (Ⓐdevel, DB: mariadb 11.4.5, connector: pymysql 1.1.1) (push) Waiting to run
Plugins CI / Integration (Ⓐdevel, DB: mysql 8.4.1, connector: pymysql 1.1.1) (push) Waiting to run
Plugins CI / Integration (Ⓐstable-2.16, DB: mariadb 11.4.5, connector: mysqlclient 2.0.1) (push) Waiting to run
Plugins CI / Integration (Ⓐstable-2.16, DB: mysql 8.0.38, connector: mysqlclient 2.0.1) (push) Waiting to run
Plugins CI / Integration (Ⓐstable-2.16, DB: mariadb 10.11.8, connector: mysqlclient 2.0.3) (push) Waiting to run
Plugins CI / Integration (Ⓐstable-2.16, DB: mariadb 11.4.5, connector: mysqlclient 2.0.3) (push) Waiting to run
Plugins CI / Integration (Ⓐstable-2.16, DB: mysql 8.0.38, connector: mysqlclient 2.0.3) (push) Waiting to run
Plugins CI / Integration (Ⓐstable-2.16, DB: mariadb 10.11.8, connector: mysqlclient 2.1.1) (push) Waiting to run
Plugins CI / Integration (Ⓐstable-2.16, DB: mariadb 11.4.5, connector: mysqlclient 2.1.1) (push) Waiting to run
Plugins CI / Integration (Ⓐstable-2.16, DB: mysql 8.0.38, connector: mysqlclient 2.1.1) (push) Waiting to run
Plugins CI / Integration (Ⓐstable-2.16, DB: mysql 8.4.1, connector: mysqlclient 2.1.1) (push) Waiting to run
Plugins CI / Integration (Ⓐstable-2.16, DB: mariadb 10.11.8, connector: pymysql 0.10.1) (push) Waiting to run
Plugins CI / Integration (Ⓐstable-2.16, DB: mariadb 11.4.5, connector: pymysql 0.9.3) (push) Waiting to run
Plugins CI / Integration (Ⓐstable-2.16, DB: mysql 8.0.38, connector: pymysql 0.9.3) (push) Waiting to run
Plugins CI / Integration (Ⓐstable-2.16, DB: mariadb 11.4.5, connector: pymysql 1.0.2) (push) Waiting to run
Plugins CI / Integration (Ⓐstable-2.16, DB: mysql 8.0.38, connector: pymysql 1.0.2) (push) Waiting to run
Plugins CI / Integration (Ⓐstable-2.16, DB: mariadb 11.4.5, connector: pymysql 1.1.1) (push) Waiting to run
Plugins CI / Integration (Ⓐstable-2.16, DB: mysql 8.4.1, connector: pymysql 1.1.1) (push) Waiting to run
Plugins CI / Integration (Ⓐstable-2.17, DB: mariadb 11.4.5, connector: mysqlclient 2.0.1) (push) Waiting to run
Plugins CI / Integration (Ⓐstable-2.17, DB: mariadb 11.4.5, connector: mysqlclient 2.0.3) (push) Waiting to run
Plugins CI / Integration (Ⓐstable-2.17, DB: mariadb 11.4.5, connector: mysqlclient 2.1.1) (push) Waiting to run
Plugins CI / Integration (Ⓐstable-2.17, DB: mysql 8.4.1, connector: mysqlclient 2.1.1) (push) Waiting to run
Plugins CI / Integration (Ⓐstable-2.17, DB: mariadb 11.4.5, connector: pymysql 0.9.3) (push) Waiting to run
Plugins CI / Integration (Ⓐstable-2.17, DB: mariadb 11.4.5, connector: pymysql 1.0.2) (push) Waiting to run
Plugins CI / Integration (Ⓐstable-2.17, DB: mariadb 11.4.5, connector: pymysql 1.1.1) (push) Waiting to run
Plugins CI / Integration (Ⓐstable-2.17, DB: mysql 8.4.1, connector: pymysql 1.1.1) (push) Waiting to run
Plugins CI / Integration (Ⓐstable-2.18, DB: mariadb 11.4.5, connector: mysqlclient 2.0.1) (push) Waiting to run
Plugins CI / Integration (Ⓐstable-2.18, DB: mysql 8.0.38, connector: mysqlclient 2.0.1) (push) Waiting to run
Plugins CI / Integration (Ⓐstable-2.18, DB: mariadb 10.11.8, connector: mysqlclient 2.0.3) (push) Waiting to run
Plugins CI / Integration (Ⓐstable-2.18, DB: mariadb 11.4.5, connector: mysqlclient 2.0.3) (push) Waiting to run
Plugins CI / Integration (Ⓐstable-2.18, DB: mysql 8.0.38, connector: mysqlclient 2.0.3) (push) Waiting to run
Plugins CI / Integration (Ⓐstable-2.18, DB: mariadb 10.11.8, connector: mysqlclient 2.1.1) (push) Waiting to run
Plugins CI / Integration (Ⓐstable-2.18, DB: mariadb 11.4.5, connector: mysqlclient 2.1.1) (push) Waiting to run
Plugins CI / Integration (Ⓐstable-2.18, DB: mysql 8.0.38, connector: mysqlclient 2.1.1) (push) Waiting to run
Plugins CI / Integration (Ⓐstable-2.18, DB: mysql 8.4.1, connector: mysqlclient 2.1.1) (push) Waiting to run
Plugins CI / Integration (Ⓐstable-2.18, DB: mariadb 11.4.5, connector: pymysql 0.9.3) (push) Waiting to run
Plugins CI / Integration (Ⓐstable-2.18, DB: mysql 8.0.38, connector: pymysql 0.9.3) (push) Waiting to run
Plugins CI / Integration (Ⓐstable-2.18, DB: mariadb 11.4.5, connector: pymysql 1.0.2) (push) Waiting to run
Plugins CI / Integration (Ⓐstable-2.18, DB: mysql 8.0.38, connector: pymysql 1.0.2) (push) Waiting to run
Plugins CI / Integration (Ⓐstable-2.18, DB: mariadb 11.4.5, connector: pymysql 1.1.1) (push) Waiting to run
Plugins CI / Integration (Ⓐstable-2.18, DB: mysql 8.4.1, connector: pymysql 1.1.1) (push) Waiting to run
Plugins CI / Units (Ⓐdevel, Python3.10) (push) Waiting to run
Plugins CI / Units (Ⓐdevel, Python3.11) (push) Waiting to run
Plugins CI / Units (Ⓐstable-2.16, Python3.9) (push) Waiting to run
Plugins CI / Units (Ⓐstable-2.17, Python3.10) (push) Waiting to run
Plugins CI / Units (Ⓐstable-2.17, Python3.11) (push) Waiting to run
Plugins CI / Units (Ⓐstable-2.18, Python3.10) (push) Waiting to run
Plugins CI / Units (Ⓐstable-2.18, Python3.11) (push) Waiting to run
Plugins CI / Units (Ⓐstable-2.18, Python3.8) (push) Waiting to run
Plugins CI / Units (Ⓐstable-2.18, Python3.9) (push) Waiting to run

* fix string templating for ansible devel (core 2.19, 12 beta)

* fix order to prevent [ERROR]: Task failed: Module failed: 'Server_id'

* cut jinja templates from conditionals

* fix 'item' already in use
This commit is contained in:
Laurent Indermühle 2025-04-28 13:52:40 +02:00 committed by GitHub
parent da2dc9ab5d
commit d44f8f2039
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
13 changed files with 173 additions and 113 deletions

View file

@ -33,9 +33,9 @@
- name: assert that databases does not exist
assert:
that:
- "'{{ db1_name }}' not in mysql_result.stdout"
- "'{{ db2_name }}' not in mysql_result.stdout"
- "'{{ db3_name }}' not in mysql_result.stdout"
- db1_name not in mysql_result.stdout
- db2_name not in mysql_result.stdout
- db3_name not in mysql_result.stdout
# ==========================================================================
# Create multiple databases that does not exists (check mode)
@ -65,9 +65,9 @@
- name: assert that databases does not exist (since created via check mode)
assert:
that:
- "'{{ db1_name }}' not in mysql_result.stdout"
- "'{{ db2_name }}' not in mysql_result.stdout"
- "'{{ db3_name }}' not in mysql_result.stdout"
- db1_name not in mysql_result.stdout
- db2_name not in mysql_result.stdout
- db3_name not in mysql_result.stdout
# ==========================================================================
# Create multiple databases
@ -88,7 +88,7 @@
assert:
that:
- result is changed
- result.db_list == ['{{ db1_name }}', '{{ db2_name }}', '{{ db3_name }}']
- result.db_list == [db1_name, db2_name, db3_name]
- name: run command to list databases like specified database name
command: "{{ mysql_command }} \"-e show databases like 'database%'\""
@ -97,9 +97,9 @@
- name: assert that databases exist after creation
assert:
that:
- "'{{ db1_name }}' in mysql_result.stdout"
- "'{{ db2_name }}' in mysql_result.stdout"
- "'{{ db3_name }}' in mysql_result.stdout"
- db1_name in mysql_result.stdout
- db2_name in mysql_result.stdout
- db3_name in mysql_result.stdout
# =========================================================================
# Recreate already existing databases (check mode)
@ -129,9 +129,9 @@
- name: assert that databases exist (since performed recreation of existing databases via check mode)
assert:
that:
- "'{{ db1_name }}' in mysql_result.stdout"
- "'{{ db2_name }}' in mysql_result.stdout"
- "'{{ db3_name }}' in mysql_result.stdout"
- db1_name in mysql_result.stdout
- db2_name in mysql_result.stdout
- db3_name in mysql_result.stdout
# ==========================================================================
# Recreate same databases
@ -160,9 +160,9 @@
- name: assert that databases does priorly exist
assert:
that:
- "'{{ db1_name }}' in mysql_result.stdout"
- "'{{ db2_name }}' in mysql_result.stdout"
- "'{{ db3_name }}' in mysql_result.stdout"
- db1_name in mysql_result.stdout
- db2_name in mysql_result.stdout
- db3_name in mysql_result.stdout
# ==========================================================================
# Delete one of the databases (db2 here)
@ -189,9 +189,9 @@
- name: assert that only db2 database does not exist
assert:
that:
- "'{{ db1_name }}' in mysql_result.stdout"
- "'{{ db2_name }}' not in mysql_result.stdout"
- "'{{ db3_name }}' in mysql_result.stdout"
- db1_name in mysql_result.stdout
- db2_name not in mysql_result.stdout
- db3_name in mysql_result.stdout
# =========================================================================
# Recreate multiple databases in which few databases does not exists (check mode)
@ -221,9 +221,9 @@
- name: assert that recreated non existing databases does not exist (since created via check mode)
assert:
that:
- "'{{ db1_name }}' in mysql_result.stdout"
- "'{{ db2_name }}' not in mysql_result.stdout"
- "'{{ db3_name }}' in mysql_result.stdout"
- db1_name in mysql_result.stdout
- db2_name not in mysql_result.stdout
- db3_name in mysql_result.stdout
# ==========================================================================
# Create multiple databases
@ -252,9 +252,9 @@
- name: assert that databases exist
assert:
that:
- "'{{ db1_name }}' in mysql_result.stdout"
- "'{{ db2_name }}' in mysql_result.stdout"
- "'{{ db3_name }}' in mysql_result.stdout"
- db1_name in mysql_result.stdout
- db2_name in mysql_result.stdout
- db3_name in mysql_result.stdout
# ============================== DUMP TEST =================================
#
@ -293,9 +293,9 @@
- name: assert that databases exist (check mode)
assert:
that:
- "'{{ db1_name }}' in mysql_result.stdout"
- "'{{ db2_name }}' in mysql_result.stdout"
- "'{{ db3_name }}' in mysql_result.stdout"
- db1_name in mysql_result.stdout
- db2_name in mysql_result.stdout
- db3_name in mysql_result.stdout
- name: state dump - file name should not exist (since dumped via check mode)
file:
@ -332,10 +332,10 @@
- name: assert that databases exist (since check mode)
assert:
that:
- "'{{ db1_name }}' in mysql_result.stdout"
- "'{{ db2_name }}' in mysql_result.stdout"
- "'{{ db3_name }}' in mysql_result.stdout"
- "'{{ db4_name }}' not in mysql_result.stdout"
- db1_name in mysql_result.stdout
- db2_name in mysql_result.stdout
- db3_name in mysql_result.stdout
- db4_name not in mysql_result.stdout
- name: state dump - file name should not exist (since prior dump operation performed via check mode)
file:
@ -371,11 +371,11 @@
- name: assert that databases exist (since delete via check mode)
assert:
that:
- "'{{ db1_name }}' in mysql_result.stdout"
- "'{{ db2_name }}' in mysql_result.stdout"
- "'{{ db3_name }}' in mysql_result.stdout"
- "'{{ db4_name }}' not in mysql_result.stdout"
- "'{{ db5_name }}' not in mysql_result.stdout"
- db1_name in mysql_result.stdout
- db2_name in mysql_result.stdout
- db3_name in mysql_result.stdout
- db4_name not in mysql_result.stdout
- db5_name not in mysql_result.stdout
- name: state dump - file name should not exist (since prior dump operation performed via check mode)
file:
@ -403,7 +403,7 @@
assert:
that:
- dump_result is changed
- dump_result.db_list == ['{{ db1_name }}', '{{ db2_name }}', '{{ db3_name }}']
- dump_result.db_list == [db1_name, db2_name, db3_name]
- name: Run command to list databases like specified database name
command: "{{ mysql_command }} \"-e show databases like 'database%'\""
@ -412,9 +412,9 @@
- name: assert that databases exist
assert:
that:
- "'{{ db1_name }}' in mysql_result.stdout"
- "'{{ db2_name }}' in mysql_result.stdout"
- "'{{ db3_name }}' in mysql_result.stdout"
- db1_name in mysql_result.stdout
- db2_name in mysql_result.stdout
- db3_name in mysql_result.stdout
- name: State dump - file name should exist (dump1_file)
file:
@ -461,11 +461,11 @@
- name: assert that databases exist
assert:
that:
- "'{{ db1_name }}' in mysql_result.stdout"
- "'{{ db2_name }}' in mysql_result.stdout"
- "'{{ db3_name }}' in mysql_result.stdout"
- "'{{ db4_name }}' not in mysql_result.stdout"
- "'{{ db5_name }}' not in mysql_result.stdout"
- db1_name in mysql_result.stdout
- db2_name in mysql_result.stdout
- db3_name in mysql_result.stdout
- db4_name not in mysql_result.stdout
- db5_name not in mysql_result.stdout
- name: state dump - file name should exist (dump2_file)
file:
@ -501,8 +501,8 @@
- name: assert that databases exist even after deleting (since deleted via check mode)
assert:
that:
- "'{{ db2_name }}' in mysql_result.stdout"
- "'{{ db3_name }}' in mysql_result.stdout"
- db2_name in mysql_result.stdout
- db3_name in mysql_result.stdout
# ==========================================================================
# Delete multiple databases
@ -522,7 +522,7 @@
assert:
that:
- result is changed
- result.db_list == ['{{ db2_name }}', '{{ db3_name }}']
- result.db_list == [db2_name, db3_name]
- name: run command to list databases like specified database name
command: "{{ mysql_command }} \"-e show databases like 'database%'\""
@ -531,8 +531,8 @@
- name: assert that databases does not exist
assert:
that:
- "'{{ db2_name }}' not in mysql_result.stdout"
- "'{{ db3_name }}' not in mysql_result.stdout"
- db2_name not in mysql_result.stdout
- db3_name not in mysql_result.stdout
# ==========================================================================
# Delete non existing databases (check mode)
@ -561,8 +561,8 @@
- name: assert that databases does not exist since were deleted priorly (check mode)
assert:
that:
- "'{{ db2_name }}' not in mysql_result.stdout"
- "'{{ db4_name }}' not in mysql_result.stdout"
- db2_name not in mysql_result.stdout
- db4_name not in mysql_result.stdout
# ==========================================================================
# Delete already deleted databases
@ -590,8 +590,8 @@
- name: assert that databases does not exists
assert:
that:
- "'{{ db2_name }}' not in mysql_result.stdout"
- "'{{ db4_name }}' not in mysql_result.stdout"
- db2_name not in mysql_result.stdout
- db4_name not in mysql_result.stdout
# ==========================================================================
# Delete all databases
@ -622,11 +622,11 @@
- name: assert that specific databases does not exist
assert:
that:
- "'{{ db1_name }}' not in mysql_result.stdout"
- "'{{ db2_name }}' not in mysql_result.stdout"
- "'{{ db3_name }}' not in mysql_result.stdout"
- "'{{ db4_name }}' not in mysql_result.stdout"
- "'{{ db5_name }}' not in mysql_result.stdout"
- db1_name not in mysql_result.stdout
- db2_name not in mysql_result.stdout
- db3_name not in mysql_result.stdout
- db4_name not in mysql_result.stdout
- db5_name not in mysql_result.stdout
- name: state dump - dump 1 file name should be removed
file:

View file

@ -283,7 +283,7 @@
- name: Dump and Import | Assert that db_name2 database does not exist
assert:
that:
- "'{{ db_name2 }}' not in mysql_result.stdout"
- db_name2 not in mysql_result.stdout
- name: Dump and Import | Test state=import to restore a database from dumped file2 (check mode)
mysql_db:
@ -309,7 +309,7 @@
- name: Dump and Import | Assert that db_name2 database does not exist (check mode)
assert:
that:
- "'{{ db_name2 }}' not in mysql_result.stdout"
- db_name2 not in mysql_result.stdout
- name: Dump and Import | Test state=import to restore a database from multiple database dumped file2
mysql_db:
@ -326,7 +326,7 @@
assert:
that:
- import_result2 is changed
- import_result2.db_list == ['{{ db_name2 }}']
- import_result2.db_list == [db_name2]
- name: Dump and Import | Run command to list databases
command: "{{ mysql_command }} \"-e show databases like 'data%'\""
@ -335,7 +335,7 @@
- name: Dump and Import | Assert that db_name2 database does exist after import
assert:
that:
- "'{{ db_name2 }}' in mysql_result.stdout"
- db_name2 in mysql_result.stdout
- name: Dump and Import | Test state=dump to backup the database of type {{ format_type }} (expect changed=true)
mysql_db:
@ -487,18 +487,22 @@
login_password: '{{ mysql_password }}'
login_host: '{{ mysql_host }}'
login_port: '{{ mysql_primary_port }}'
name: '{{ item }}'
name: '{{ cleanup_db }}'
state: absent
loop:
- '{{ db_name }}'
- '{{ db_name2 }}'
loop_control:
loop_var: cleanup_db
- name: Dump and Import | Clean up files
file:
name: '{{ item }}'
name: '{{ cleanup_file }}'
state: absent
loop:
- '{{ db_file_name }}'
- '{{ wrong_sql_file }}'
- '{{ dump_file1 }}'
- '{{ dump_file2 }}'
loop_control:
loop_var: cleanup_file

View file

@ -41,8 +41,10 @@
assert:
that:
- result is changed
- result.db == '{{ db_name }}'
- result.executed_commands == ["CREATE DATABASE `{{ db_name }}`"]
- result.db == db_name
- result.executed_commands == expected_commands
vars:
expected_commands: ["CREATE DATABASE `{{ db_name }}`"]
- name: State Present Absent | Run command to test state=present for a database name (expect db_name in stdout)
command: "{{ mysql_command }} -e \"show databases like '{{ db_name | regex_replace(\"([%_\\\\])\", \"\\\\\\1\") }}'\""
@ -51,7 +53,7 @@
- name: State Present Absent | Assert database exist
assert:
that:
- "'{{ db_name }}' in result.stdout"
- db_name in result.stdout
# ============================================================
- name: State Present Absent | Test state=absent for a database name (expect changed=true)
@ -68,8 +70,10 @@
assert:
that:
- result is changed
- result.db == '{{ db_name }}'
- result.executed_commands == ["DROP DATABASE `{{ db_name }}`"]
- result.db == db_name
- result.executed_commands == expected_commands
vars:
expected_commands: ["DROP DATABASE `{{ db_name }}`"]
- name: State Present Absent | Run command to test state=absent for a database name (expect db_name not in stdout)
command: "{{ mysql_command }} -e \"show databases like '{{ db_name | regex_replace(\"([%_\\\\])\", \"\\\\\\1\") }}'\""
@ -78,7 +82,7 @@
- name: State Present Absent | Assert database does not exist
assert:
that:
- "'{{ db_name }}' not in result.stdout"
- db_name not in result.stdout
# ============================================================
- name: State Present Absent | Test mysql_db encoding param not valid - issue 8075
@ -116,7 +120,9 @@
assert:
that:
- result is changed
- result.executed_commands == ["CREATE DATABASE `en{{ db_name }}` CHARACTER SET 'utf8'"]
- result.executed_commands == expected_commands
vars:
expected_commands: ["CREATE DATABASE `en{{ db_name }}` CHARACTER SET 'utf8'"]
- name: State Present Absent | Test database was created
command: "{{ mysql_command }} -e \"SHOW CREATE DATABASE `en{{ db_name }}`\""
@ -152,7 +158,9 @@
assert:
that:
- result is changed
- result.executed_commands == ["CREATE DATABASE `en{{ db_name }}` CHARACTER SET 'binary'"]
- result.executed_commands == expected_commands
vars:
expected_commands: ["CREATE DATABASE `en{{ db_name }}` CHARACTER SET 'binary'"]
- name: State Present Absent | Run command to test database was created
command: "{{ mysql_command }} -e \"SHOW CREATE DATABASE `en{{ db_name }}`\""
@ -207,7 +215,7 @@
- name: State Present Absent | Assert database exist
assert:
that:
- "'{{ db_user1 }}' in result.stdout"
- db_user1 in result.stdout
# ============================================================
- name: State Present Absent | Create user2 to access database with privilege select only
@ -245,7 +253,7 @@
- name: State Present Absent | Assert database does not exist
assert:
that:
- "'{{ db_user2 }}' not in result.stdout"
- db_user2 not in result.stdout
# ============================================================
- name: State Present Absent | Delete database using user2 with no privilege to delete (expect failed=true)
@ -272,7 +280,7 @@
- name: State Present Absent | Assert database still exist
assert:
that:
- "'{{ db_user1 }}' in result.stdout"
- db_user1 in result.stdout
# ============================================================
- name: State Present Absent | Delete database using user1 with all privilege to delete a database (expect changed=true)
@ -290,7 +298,9 @@
assert:
that:
- result is changed
- result.executed_commands == ["DROP DATABASE `{{ db_user1 }}`"]
- result.executed_commands == expected_commands
vars:
expected_commands: ["DROP DATABASE `{{ db_user1 }}`"]
- name: State Present Absent | Run command to test database was deleted using user1
command: "{{ mysql_command }} -e \"show databases like '{{ db_name | regex_replace(\"([%_\\\\])\", \"\\\\\\1\") }}'\""
@ -299,4 +309,4 @@
- name: State Present Absent | Assert database does not exist
assert:
that:
- "'{{ db_user1 }}' not in result.stdout"
- db_user1 not in result.stdout

View file

@ -21,7 +21,9 @@
assert:
that:
- result is changed
- result.executed_queries == ['CREATE DATABASE {{ test_db }}']
- result.executed_queries == expected_queries
vars:
expected_queries: ['CREATE DATABASE {{ test_db }}']
- name: Create {{ test_table1 }}
mysql_query:
@ -34,8 +36,10 @@
assert:
that:
- result is changed
- result.executed_queries == ['CREATE TABLE {{ test_table1 }} (id int)']
- result.executed_queries == expected_queries
- result.execution_time_ms[0] > 0
vars:
expected_queries: ['CREATE TABLE {{ test_table1 }} (id int)']
- name: Insert test data
mysql_query:
@ -52,9 +56,14 @@
that:
- result is changed
- result.rowcount == [2, 1]
- result.executed_queries == ['INSERT INTO {{ test_table1 }} VALUES (1), (2)', 'INSERT INTO {{ test_table1 }} VALUES (3)']
- result.executed_queries == expected_queries
- result.execution_time_ms[0] > 0
- result.execution_time_ms[1] > 0
vars:
expected_queries: [
'INSERT INTO {{ test_table1 }} VALUES (1), (2)',
'INSERT INTO {{ test_table1 }} VALUES (3)',
]
- name: Check data in {{ test_table1 }}
mysql_query:
@ -67,11 +76,13 @@
assert:
that:
- result is not changed
- result.executed_queries == ['SELECT * FROM {{ test_table1 }}']
- result.executed_queries == expected_queries
- result.rowcount == [3]
- result.query_result[0][0].id == 1
- result.query_result[0][1].id == 2
- result.query_result[0][2].id == 3
vars:
expected_queries: ['SELECT * FROM {{ test_table1 }}']
- name: Check data in {{ test_table1 }} using positional args
mysql_query:
@ -86,9 +97,11 @@
assert:
that:
- result is not changed
- result.executed_queries == ["SELECT * FROM {{ test_table1 }} WHERE id = 1"]
- result.executed_queries == expected_queries
- result.rowcount == [1]
- result.query_result[0][0].id == 1
vars:
expected_queries: ["SELECT * FROM {{ test_table1 }} WHERE id = 1"]
- name: Check data in {{ test_table1 }} using named args
mysql_query:
@ -103,9 +116,11 @@
assert:
that:
- result is not changed
- result.executed_queries == ["SELECT * FROM {{ test_table1 }} WHERE id = 1"]
- result.executed_queries == expected_queries
- result.rowcount == [1]
- result.query_result[0][0].id == 1
vars:
expected_queries: ["SELECT * FROM {{ test_table1 }} WHERE id = 1"]
- name: Update data in {{ test_table1 }}
mysql_query:
@ -121,8 +136,10 @@
assert:
that:
- result is changed
- result.executed_queries == ['UPDATE {{ test_table1 }} SET id = 0 WHERE id = 1']
- result.executed_queries == expected_queries
- result.rowcount == [1]
vars:
expected_queries: ['UPDATE {{ test_table1 }} SET id = 0 WHERE id = 1']
- name: Check the prev update - row with value 1 does not exist anymore
mysql_query:
@ -137,8 +154,10 @@
assert:
that:
- result is not changed
- result.executed_queries == ['SELECT * FROM {{ test_table1 }} WHERE id = 1']
- result.executed_queries == expected_queries
- result.rowcount == [0]
vars:
expected_queries: ['SELECT * FROM {{ test_table1 }} WHERE id = 1']
- name: Check the prev update - row with value - exist
mysql_query:
@ -153,8 +172,10 @@
assert:
that:
- result is not changed
- result.executed_queries == ['SELECT * FROM {{ test_table1 }} WHERE id = 0']
- result.executed_queries == expected_queries
- result.rowcount == [1]
vars:
expected_queries: ['SELECT * FROM {{ test_table1 }} WHERE id = 0']
- name: Update data in {{ test_table1 }} again
mysql_query:
@ -170,8 +191,10 @@
assert:
that:
- result is not changed
- result.executed_queries == ['UPDATE {{ test_table1 }} SET id = 0 WHERE id = 1']
- result.executed_queries == expected_queries
- result.rowcount == [0]
vars:
expected_queries: ['UPDATE {{ test_table1 }} SET id = 0 WHERE id = 1']
- name: Delete data from {{ test_table1 }}
mysql_query:
@ -186,8 +209,10 @@
assert:
that:
- result is changed
- result.executed_queries == ['DELETE FROM {{ test_table1 }} WHERE id = 0', 'SELECT * FROM {{ test_table1 }} WHERE id = 0']
- result.executed_queries == expected_queries
- result.rowcount == [1, 0]
vars:
expected_queries: ['DELETE FROM {{ test_table1 }} WHERE id = 0', 'SELECT * FROM {{ test_table1 }} WHERE id = 0']
- name: Delete data from {{ test_table1 }} again
mysql_query:
@ -200,8 +225,10 @@
assert:
that:
- result is not changed
- result.executed_queries == ['DELETE FROM {{ test_table1 }} WHERE id = 0']
- result.executed_queries == expected_queries
- result.rowcount == [0]
vars:
expected_queries: ['DELETE FROM {{ test_table1 }} WHERE id = 0']
- name: Truncate {{ test_table1 }}
mysql_query:
@ -216,8 +243,10 @@
assert:
that:
- result is changed
- result.executed_queries == ['TRUNCATE {{ test_table1 }}', 'SELECT * FROM {{ test_table1 }}']
- result.executed_queries == expected_queries
- result.rowcount == [0, 0]
vars:
expected_queries: ['TRUNCATE {{ test_table1 }}', 'SELECT * FROM {{ test_table1 }}']
- name: Rename {{ test_table1 }}
mysql_query:
@ -230,8 +259,10 @@
assert:
that:
- result is changed
- result.executed_queries == ['RENAME TABLE {{ test_table1 }} TO {{ test_table2 }}']
- result.executed_queries == expected_queries
- result.rowcount == [0]
vars:
expected_queries: ['RENAME TABLE {{ test_table1 }} TO {{ test_table2 }}']
- name: Check the prev rename
mysql_query:
@ -398,7 +429,9 @@
assert:
that:
- result is changed
- result.executed_queries == ['DROP DATABASE {{ test_db }}']
- result.executed_queries == expected_queries
vars:
expected_queries: ['DROP DATABASE {{ test_db }}']
always:

View file

@ -75,7 +75,7 @@
- assert:
that:
- result is changed
- result.queries == result_query or result_query2
- result.queries in [result_query, result_query2]
vars:
result_query: ["START SLAVE FOR CHANNEL '{{ test_channel }}'"]
result_query2: ["START REPLICA FOR CHANNEL '{{ test_channel }}'"]

View file

@ -337,5 +337,6 @@
- name: Assert that stopslave returns expected error message
assert:
that:
- result.msg == "value of mode must be one of{{ ":" }} getprimary, getreplica, changeprimary, stopreplica, startreplica, resetprimary, resetreplica, resetreplicaall, changereplication, got{{ ":" }} stopslave"
-
"result.msg == 'value of mode must be one of: getprimary, getreplica, changeprimary, stopreplica, startreplica, resetprimary, resetreplica, resetreplicaall, changereplication, got: stopslave'"
- result is failed

View file

@ -55,5 +55,5 @@
- assert:
that:
- replica_status.SQL_Delay == {{ test_primary_delay }}
- replica_status.SQL_Delay == test_primary_delay
- replica_status is not changed

View file

@ -220,7 +220,7 @@
- name: Privs | Assert that 'GRANT' permission is present
assert:
that:
- mysql_info_about_users.users.localhost.{{ user_name_2 }}.Grant_priv == 'Y'
- mysql_info_about_users.users.localhost.db_user2.Grant_priv == 'Y'
- name: Privs | Test idempotency (expect ok)
mysql_user:
@ -246,7 +246,7 @@
- name: Privs | Assert that 'GRANT' permission is present (by host)
assert:
that:
- mysql_info_about_users.users.localhost.{{ user_name_2 }}.Grant_priv == 'Y'
- mysql_info_about_users.users.localhost.db_user2.Grant_priv == 'Y'
# ============================================================
- name: Privs | Update user with invalid privileges

View file

@ -45,7 +45,7 @@
- name: Plugin auth | Check that the expected plugin type is set (with hash string)
ansible.builtin.assert:
that:
- "'{{ test_plugin_type }}' in show_create_user.stdout"
- test_plugin_type in show_create_user.stdout
when: db_engine == 'mysql' or (db_engine == 'mariadb' and db_version is version('10.3', '>='))
- ansible.builtin.include_tasks: utils/assert_user.yml

View file

@ -17,5 +17,7 @@
- name: Utils | Assert user | Assert user has given privileges
ansible.builtin.assert:
that:
- "'GRANT {{ priv }} ON *.*' in result.stdout"
- expected_command in result.stdout
when: priv is defined
vars:
expected_command: "GRANT {{ priv }} ON *.*"

View file

@ -23,7 +23,7 @@
- name: Assert output message changed value
assert:
that:
- "output.changed | bool == changed | bool"
- output.changed | bool == changed | bool
- name: Run mysql command to show variable
command: "{{ mysql_command }} \"-e show variables like '{{ var_name }}'\""
@ -33,5 +33,5 @@
assert:
that:
- result is changed
- "'{{ var_name }}' in result.stdout"
- "'{{ var_value }}' in result.stdout"
- var_name | string in result.stdout
- var_value | string in result.stdout

View file

@ -22,7 +22,7 @@
- name: assert output message changed value
assert:
that:
- "output.changed | bool == changed | bool"
- output.changed | bool == changed | bool
- set_fact:
key_name: "{{ var_name }}"
@ -36,5 +36,5 @@
assert:
that:
- result is changed
- "key_name in result.stdout"
- "key_value in result.stdout"
- key_name in result.stdout
- key_value in result.stdout

View file

@ -92,7 +92,9 @@
- assert:
that:
- result.queries == ["SET GLOBAL `{{ set_name }}` = {{ set_value }}"]
- result.queries == expected_queries
vars:
expected_queries: ["SET GLOBAL `{{ set_name }}` = {{ set_value }}"]
- include_tasks: assert_var.yml
vars:
@ -291,9 +293,9 @@
# Bugfix https://github.com/ansible-collections/community.mysql/issues/652
- name: Get server version
register: result
mysql_info:
<<: *mysql_params
register: result
- name: Set variable name when running on MySQL
set_fact:
@ -316,7 +318,9 @@
assert:
that:
- result is changed or result.msg == "Variable is already set to requested value."
- result.msg == "Variable is already set to requested value." or result.queries == ["SET GLOBAL `{{ log_slow_statements }}` = ON"]
- result.msg == "Variable is already set to requested value." or result.queries == expected_queries
vars:
expected_queries: ["SET GLOBAL `{{ log_slow_statements }}` = ON"]
- name: Set a boolean value again using ON
mysql_variables:
@ -378,7 +382,9 @@
assert:
that:
- result is changed
- result.queries == ["SET GLOBAL `{{ log_slow_statements }}` = ON"]
- result.queries == expected_queries
vars:
expected_queries: ["SET GLOBAL `{{ log_slow_statements }}` = ON"]
#============================================================
# Verify mysql_variable fails with an incorrect login_password parameter
@ -452,7 +458,9 @@
- assert:
that:
- result.queries == ["SET PERSIST `{{ set_name }}` = {{ set_value }}"]
- result.queries == expected_queries
vars:
expected_queries: ["SET PERSIST `{{ set_name }}` = {{ set_value }}"]
- include_tasks: assert_var.yml
vars:
@ -494,7 +502,9 @@
- assert:
that:
- result is changed
- result.queries == ["SET PERSIST_ONLY `{{ set_name }}` = {{ set_value }}"]
- result.queries == expected_queries
vars:
expected_queries: ["SET PERSIST_ONLY `{{ set_name }}` = {{ set_value }}"]
- name: try to update mysql variable value (expect changed=false) in persist_only mode again
mysql_variables: