Skip to content

Commit 3b98ebf

Browse files
committed
Change script
1 parent 981392c commit 3b98ebf

File tree

1 file changed

+26
-16
lines changed

1 file changed

+26
-16
lines changed

bin/install-package-tests

Lines changed: 26 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -63,30 +63,32 @@ fi
6363
echo "Detecting database version..."
6464

6565
TYPE="MySQL"
66-
CLIENT_VERSION=$(/usr/bin/env mysql --version 2>/dev/null)
66+
CLIENT_VERSION=$(mysql --version 2>/dev/null)
6767
case "${CLIENT_VERSION}" in
6868
*"MariaDB"*)
6969
TYPE="MariaDB"
7070
;;
7171
esac
7272

73-
mysql() {
74-
if [ "${TYPE}" == "MySQL" ]; then
75-
/usr/bin/env mysql "$@"
76-
else
77-
/usr/bin/env mariadb "$@"
78-
fi
79-
}
80-
81-
SERVER_VERSION=$(mysql -e "SELECT VERSION()" --skip-column-names ${HOST_STRING} -u"${USER}" "${PASSWORD_STRING}")
73+
if [[ "${TYPE}" == "MySQL" ]]; then
74+
SERVER_VERSION=$(mysql -e "SELECT VERSION()" --skip-column-names ${HOST_STRING} -u"${USER}" "${PASSWORD_STRING}")
75+
else
76+
SERVER_VERSION=$(mariadb -e "SELECT VERSION()" --skip-column-names ${HOST_STRING} -u"${USER}" "${PASSWORD_STRING}")
77+
fi
8278
VERSION=$(echo "${SERVER_VERSION}" | grep -o '^[^-]*')
8379
MAJOR=$(echo "${VERSION}" | cut -d. -f1)
8480
MINOR=$(echo "${VERSION}" | cut -d. -f2)
8581

8682
echo "Detected ${TYPE} at version ${MAJOR}.${MINOR}"
8783

8884
echo 'Checking if database is ready...'
89-
while ! mysql ${HOST_STRING} --user="${USER}" "${PASSWORD_STRING}" --execute="SHOW DATABASES;" | grep 'information_schema' >/dev/null;
85+
86+
if [[ "${TYPE}" == "MySQL" ]]; then
87+
while ! mysql ${HOST_STRING} --user="${USER}" "${PASSWORD_STRING}" --execute="SHOW DATABASES;" | grep 'information_schema' >/dev/null;
88+
else
89+
while ! mariadb ${HOST_STRING} --user="${USER}" "${PASSWORD_STRING}" --execute="SHOW DATABASES;" | grep 'information_schema' >/dev/null;
90+
fi
91+
9092
do
9193
echo 'Waiting for database...'
9294
sleep 5
@@ -97,10 +99,7 @@ do
9799
fi
98100
done
99101

100-
# Debugging
101-
mysql -e "SELECT user, host, plugin FROM mysql.user WHERE user = 'wp_cli_test';" ${HOST_STRING} -u"${USER}" "${PASSWORD_STRING}"
102-
103-
# Prepare the database for running the tests with MariaDB, or MySQL 8.0+
102+
# Prepare the database for running the tests with a MySQL version 8.0 or higher.
104103
install_mysql_db_8_0_plus() {
105104
set -ex
106105
mysql -e "CREATE DATABASE IF NOT EXISTS \`${TEST_DB}\`;" ${HOST_STRING} -u"${USER}" "${PASSWORD_STRING}"
@@ -117,7 +116,18 @@ install_mysql_db_lower_than_8_0() {
117116
mysql -e "GRANT ALL ON \`${TEST_DB}_scaffold\`.* TO '${TEST_USER}'@'%' IDENTIFIED BY '${TEST_PASSWORD}'" ${HOST_STRING} -u"${USER}" "${PASSWORD_STRING}"
118117
}
119118

120-
if [ "${TYPE}" == "MariaDB" ] || [ "${MAJOR}" -ge 8 ]; then
119+
# Prepare the database for running the tests with MariaDB
120+
install_mariadb() {
121+
set -ex
122+
mariadb -e "CREATE DATABASE IF NOT EXISTS \`${TEST_DB}\`;" ${HOST_STRING} -u"${USER}" "${PASSWORD_STRING}"
123+
mariadb -e "CREATE USER IF NOT EXISTS \`${TEST_USER}\`@'%' IDENTIFIED WITH caching_sha2_password BY '${TEST_PASSWORD}'" ${HOST_STRING} -u"${USER}" "${PASSWORD_STRING}"
124+
mariadb -e "GRANT ALL PRIVILEGES ON \`${TEST_DB}\`.* TO '${TEST_USER}'@'%'" ${HOST_STRING} -u"${USER}" "${PASSWORD_STRING}"
125+
mariadb -e "GRANT ALL PRIVILEGES ON \`${TEST_DB}_scaffold\`.* TO '${TEST_USER}'@'%'" ${HOST_STRING} -u"${USER}" "${PASSWORD_STRING}"
126+
}
127+
128+
if [ "${TYPE}" == "MariaDB" ]; then
129+
install_mariadb
130+
elif [ "${MAJOR}" -ge 8 ]; then
121131
install_mysql_db_8_0_plus
122132
else
123133
install_mysql_db_lower_than_8_0

0 commit comments

Comments
 (0)