Skip to content

Commit f282fef

Browse files
Merge pull request #1046 from fyanac/mariadb_wa
WA mariadb pod - ipv6 adoption
2 parents 345d6e3 + d0e2cc4 commit f282fef

File tree

5 files changed

+26
-14
lines changed

5 files changed

+26
-14
lines changed

tests/roles/common_defaults/defaults/main.yaml

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -211,3 +211,8 @@ pull_openstack_configuration_ssh_shell_vars: |
211211
# Whether to adopt Octavia
212212
enable_octavia: true
213213
octavia_adoption: true
214+
215+
# MariaDB client connection timeout in seconds
216+
# Related to OSPRH-18618
217+
mariadb_client_timeout: 0
218+
mariadbcheck: true

tests/roles/get_services_configuration/tasks/main.yaml

Lines changed: 13 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@
1515
declare -xA PULL_OPENSTACK_CONFIGURATION_DATABASES
1616
for CELL in $(echo $CELLS); do
1717
PULL_OPENSTACK_CONFIGURATION_DATABASES[$CELL]=$(oc run mariadb-client-1-$CELL ${MARIADB_RUN_OVERRIDES} -q --image ${MARIADB_IMAGE} -i --rm --restart=Never -- \
18-
mysql -rsh "${SOURCE_MARIADB_IP[$CELL]}" -uroot -p"${SOURCE_DB_ROOT_PASSWORD[$CELL]}" -e 'SHOW databases;')
18+
bash -c "sleep {{ mariadb_client_timeout }} && mysql -rsh \"${SOURCE_MARIADB_IP[$CELL]}\" -uroot -p\"${SOURCE_DB_ROOT_PASSWORD[$CELL]}\" -e 'SHOW databases;' ")
1919
done
2020
2121
- name: run mysqlcheck on the original DB to look for things that are not OK
@@ -27,7 +27,7 @@
2727
declare -xA PULL_OPENSTACK_CONFIGURATION_MYSQLCHECK_NOK
2828
run_mysqlcheck() {
2929
PULL_OPENSTACK_CONFIGURATION_MYSQLCHECK_NOK=$(oc run mariadb-client-2-$1 ${MARIADB_RUN_OVERRIDES} -q --image ${MARIADB_IMAGE} -i --rm --restart=Never -- \
30-
mysqlcheck --all-databases -h ${SOURCE_MARIADB_IP[$CELL]} -u root -p"${SOURCE_DB_ROOT_PASSWORD[$CELL]}" | grep -v OK)
30+
bash -c "sleep {{ mariadb_client_timeout }} && mysqlcheck --all-databases -h ${SOURCE_MARIADB_IP[$CELL]} -u root -p\"${SOURCE_DB_ROOT_PASSWORD[$CELL]}\" | grep -v OK")
3131
}
3232
for CELL in $(echo $CELLS); do
3333
run_mysqlcheck $CELL
@@ -36,7 +36,7 @@
3636
# Try mysql_upgrade to fix mysqlcheck failure
3737
for CELL in $(echo $CELLS); do
3838
MYSQL_UPGRADE=$(oc run mariadb-client-3-$CELL ${MARIADB_CLIENT_ANNOTATIONS} -q --image ${MARIADB_IMAGE} -i --rm --restart=Never -- \
39-
mysql_upgrade --skip-version-check -v -h ${SOURCE_MARIADB_IP[$CELL]} -u root -p"${SOURCE_DB_ROOT_PASSWORD[$CELL]}")
39+
bash -c "sleep {{ mariadb_client_timeout }} && mysql_upgrade --skip-version-check -v -h ${SOURCE_MARIADB_IP[$CELL]} -u root -p\"${SOURCE_DB_ROOT_PASSWORD[$CELL]}\" ")
4040
# rerun mysqlcheck to check if problem is resolved
4141
run_mysqlcheck
4242
done
@@ -53,8 +53,8 @@
5353
{{ oc_header }}
5454
{{ mariadb_copy_shell_vars_src }}
5555
export PULL_OPENSTACK_CONFIGURATION_NOVADB_MAPPED_CELLS=$(oc run mariadb-client-1 ${MARIADB_RUN_OVERRIDES} -q --image ${MARIADB_IMAGE} -i --rm --restart=Never -- \
56-
mysql -rsh "${SOURCE_MARIADB_IP[default]}" -uroot -p"${SOURCE_DB_ROOT_PASSWORD[default]}" nova_api -e \
57-
'select uuid,name,transport_url,database_connection,disabled from cell_mappings;')
56+
bash -c "sleep {{ mariadb_client_timeout }} && mysql -rsh \"${SOURCE_MARIADB_IP[default]}\" -uroot -p\"${SOURCE_DB_ROOT_PASSWORD[default]}\" nova_api -e \
57+
'select uuid,name,transport_url,database_connection,disabled from cell_mappings;' ")
5858
5959
- name: get the host names of the registered Nova compute services
6060
ansible.builtin.shell: |
@@ -64,8 +64,8 @@
6464
declare -xA PULL_OPENSTACK_CONFIGURATION_NOVA_COMPUTE_HOSTNAMES
6565
for CELL in $(echo $CELLS); do
6666
PULL_OPENSTACK_CONFIGURATION_NOVA_COMPUTE_HOSTNAMES[$CELL]=$(oc run mariadb-client-4-$CELL ${MARIADB_RUN_OVERRIDES} -q --image ${MARIADB_IMAGE} -i --rm --restart=Never -- \
67-
mysql -rsh "${SOURCE_MARIADB_IP[$CELL]}" -uroot -p"${SOURCE_DB_ROOT_PASSWORD[$CELL]}" -e \
68-
"select host from nova.services where services.binary='nova-compute' and deleted=0;")
67+
bash -c "sleep {{ mariadb_client_timeout }} && mysql -rsh \"${SOURCE_MARIADB_IP[$CELL]}\" -uroot -p\"${SOURCE_DB_ROOT_PASSWORD[$CELL]}\" -e \
68+
\"select host from nova.services where services.binary='nova-compute' and deleted=0;\" ")
6969
done
7070
7171
- name: get the list of mapped Nova cells
@@ -90,16 +90,16 @@
9090
declare -xA PULL_OPENSTACK_CONFIGURATION_MYSQLCHECK_NOK
9191
declare -xA PULL_OPENSTACK_CONFIGURATION_NOVA_COMPUTE_HOSTNAMES
9292
PULL_OPENSTACK_CONFIGURATION_DATABASES[$CELL]="$(oc run mariadb-client-5-$CELL ${MARIADB_RUN_OVERRIDES} -q --image ${MARIADB_IMAGE} -i --rm --restart=Never -- \
93-
mysql -rsh ${SOURCE_MARIADB_IP[$RCELL]} -uroot -p${SOURCE_DB_ROOT_PASSWORD[$RCELL]} -e 'SHOW databases;')"
93+
bash -c "sleep {{ mariadb_client_timeout }} && mysql -rsh ${SOURCE_MARIADB_IP[$RCELL]} -uroot -p${SOURCE_DB_ROOT_PASSWORD[$RCELL]} -e 'SHOW databases;'")"
9494
PULL_OPENSTACK_CONFIGURATION_MYSQLCHECK_NOK[$CELL]="$(oc run mariadb-client-6-$CELL ${MARIADB_RUN_OVERRIDES} -q --image ${MARIADB_IMAGE} -i --rm --restart=Never -- \
95-
mysqlcheck --all-databases -h ${SOURCE_MARIADB_IP[$RCELL]} -u root -p${SOURCE_DB_ROOT_PASSWORD[$RCELL]} | grep -v OK)"
95+
bash -c "sleep {{ mariadb_client_timeout }} && mysqlcheck --all-databases -h ${SOURCE_MARIADB_IP[$RCELL]} -u root -p${SOURCE_DB_ROOT_PASSWORD[$RCELL]} | grep -v OK")"
9696
PULL_OPENSTACK_CONFIGURATION_NOVA_COMPUTE_HOSTNAMES[$CELL]="$(oc run mariadb-client-7-$CELL ${MARIADB_RUN_OVERRIDES} -q --image ${MARIADB_IMAGE} -i --rm --restart=Never -- \
97-
mysql -rsh ${SOURCE_MARIADB_IP[$RCELL]} -uroot -p${SOURCE_DB_ROOT_PASSWORD[$RCELL]} -e \
98-
"select host from nova.services where services.binary='nova-compute' and deleted=0;")"
97+
bash -c "sleep {{ mariadb_client_timeout }} && mysql -rsh ${SOURCE_MARIADB_IP[$RCELL]} -uroot -p${SOURCE_DB_ROOT_PASSWORD[$RCELL]} -e \
98+
\"select host from nova.services where services.binary='nova-compute' and deleted=0;\" ")"
9999
if [ "$RCELL" = "default" ]; then
100100
PULL_OPENSTACK_CONFIGURATION_NOVADB_MAPPED_CELLS="$(oc run mariadb-client-2 ${MARIADB_RUN_OVERRIDES} -q --image ${MARIADB_IMAGE} -i --rm --restart=Never -- \
101-
mysql -rsh ${SOURCE_MARIADB_IP[$RCELL]} -uroot -p${SOURCE_DB_ROOT_PASSWORD[$RCELL]} nova_api -e \
102-
'select uuid,name,transport_url,database_connection,disabled from cell_mappings;')"
101+
bash -c "sleep {{ mariadb_client_timeout }} && mysql -rsh ${SOURCE_MARIADB_IP[$RCELL]} -uroot -p${SOURCE_DB_ROOT_PASSWORD[$RCELL]} nova_api -e \
102+
'select uuid,name,transport_url,database_connection,disabled from cell_mappings;'")"
103103
PULL_OPENSTACK_CONFIGURATION_NOVAMANAGE_CELL_MAPPINGS="$($CONTROLLER1_SSH sudo podman exec -it nova_conductor nova-manage cell_v2 list_cells)"
104104
fi
105105
EOF

tests/roles/mariadb_copy/tasks/main.yaml

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -66,6 +66,12 @@
6666
retries: 25
6767
delay: "{{ mariadb_retry_delay }}"
6868

69+
# MariaDB client connection timeout in seconds
70+
# Related to OSPRH-18618
71+
- name: Add sleep time
72+
ansible.builtin.pause:
73+
seconds: "{{ mariadb_client_timeout }}"
74+
6975
- name: check that the Galera database cluster(s) members are online and synced, for all cells
7076
no_log: "{{ use_no_log }}"
7177
ansible.builtin.shell: |

tests/roles/mariadb_copy/tasks/mariadb_verify.yaml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,3 +10,4 @@
1010
cmd: "{{ lookup('ansible.builtin.template', 'post_checks.bash') }}"
1111
register: result
1212
failed_when: result.rc != 0 or 'CHECK FAILED' in result.stdout
13+
when: mariadbcheck | bool

tests/roles/mariadb_copy/templates/pre_checks.bash

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,5 +4,5 @@
44
# Test the connection to the control plane "upcall" and cells' databases
55
for CELL in $(echo "super $RENAMED_CELLS"); do
66
oc run mariadb-client --image $MARIADB_IMAGE -i --rm --restart=Never -- \
7-
mysql -rsh "${PODIFIED_MARIADB_IP[$CELL]}" -uroot -p"${PODIFIED_DB_ROOT_PASSWORD[$CELL]}" -e 'SHOW databases;'
7+
bash -c "sleep {{ mariadb_client_timeout }} && mysql -rsh \"${PODIFIED_MARIADB_IP[$CELL]}\" -uroot -p\"${PODIFIED_DB_ROOT_PASSWORD[$CELL]}\" -e 'SHOW databases;'"
88
done

0 commit comments

Comments
 (0)