diff --git a/molecule/cluster/molecule.yml b/molecule/cluster/molecule.yml index 4ec5970..2b6867f 100644 --- a/molecule/cluster/molecule.yml +++ b/molecule/cluster/molecule.yml @@ -56,8 +56,8 @@ provisioner: node3: mariadb_server_id: 3 env: - ANSIBLE_DISPLAY_OK_HOSTS: "false" ANSIBLE_DISPLAY_SKIPPED_HOSTS: false + ANSIBLE_EXECUTABLE: /bin/bash ANSIBLE_FORCE_COLOR: true ANSIBLE_GATHERING: explicit ANSIBLE_ROLES_PATH: ../../.. diff --git a/molecule/cluster/verify.yml b/molecule/cluster/verify.yml index 249a2a7..71ec861 100644 --- a/molecule/cluster/verify.yml +++ b/molecule/cluster/verify.yml @@ -22,12 +22,16 @@ tasks: - name: Check that test db exist (created only on primary node) ansible.builtin.shell: | + set -o errexit + set -o pipefail mariadb -Bse 'SHOW DATABASES' | grep -q '^{{ item }}$' loop: - db - name: Get replica status ansible.builtin.shell: | + set -o errexit + set -o pipefail mariadb -Bse 'SHOW SLAVE STATUS\G' register: replica_status diff --git a/molecule/default/molecule.yml b/molecule/default/molecule.yml index 0e1a2a1..ffc1de2 100644 --- a/molecule/default/molecule.yml +++ b/molecule/default/molecule.yml @@ -13,8 +13,8 @@ platforms: provisioner: name: ansible env: - ANSIBLE_DISPLAY_OK_HOSTS: "false" ANSIBLE_DISPLAY_SKIPPED_HOSTS: false + ANSIBLE_EXECUTABLE: /bin/bash ANSIBLE_FORCE_COLOR: true ANSIBLE_GATHERING: explicit ANSIBLE_ROLES_PATH: ../../.. diff --git a/molecule/default/verify.yml b/molecule/default/verify.yml index b14e510..19bee1a 100644 --- a/molecule/default/verify.yml +++ b/molecule/default/verify.yml @@ -49,26 +49,39 @@ ansible.builtin.wait_for: port: 3306 timeout: 2 + msg: "MariaDB is not listening on port 127.0.0.1:3306" - name: Get MariaDB version ansible.builtin.shell: | + set -o errexit + set -o pipefail mariadb -Bse 'STATUS' | grep "^Server version:" register: version - when: lookup('env', 'MARIADB_VERSION') is true + when: lookup('env', 'MARIADB_VERSION') != "" + + - name: Show MariaDB version + ansible.builtin.debug: + msg: "{{ version.stdout }}" + when: lookup('env', 'MARIADB_VERSION') != "" - name: Check MariaDB version ansible.builtin.assert: that: - - lookup('env', 'MARIADB_VERSION') in version.stdout - msg: "{{ version.stdout }}" - when: lookup('env', 'MARIADB_VERSION') is true + - "lookup('env', 'MARIADB_VERSION') in version.stdout" + fail_msg: "{{ version.stdout }}" + success_msg: "{{ version.stdout }}" + when: lookup('env', 'MARIADB_VERSION') != "" - name: Check that Innodb engine is enabled (and default) ansible.builtin.shell: | + set -o errexit + set -o pipefail mariadb -Bse 'SHOW ENGINES' | grep -qE '^InnoDB.DEFAULT.*YES.YES.YES$' - name: Check that default db exist ansible.builtin.shell: | + set -o errexit + set -o pipefail mariadb -Bse 'SHOW DATABASES' | grep -q '^{{ item }}$' loop: - mysql @@ -77,6 +90,8 @@ - name: Check that test db exist ansible.builtin.shell: | + set -o errexit + set -o pipefail mariadb -Bse 'SHOW DATABASES' | grep -q '^{{ item }}$' loop: - db1 @@ -84,6 +99,8 @@ - name: Check that test users exist ansible.builtin.shell: | + set -o errexit + set -o pipefail mariadb -Bse 'SELECT user from mysql.user' | grep -q '^{{ item }}$' loop: - user1