Browse Source

mysql tests for MariaDB-11.0+ compatibility

Due to MariaDB diverging from MySQL, MariaDB-11.0+ containers
don't include mysql compatibility links and use mariadb as the
CLI. This has been there since MariaDB-10.4.

Co-authored-by: Tianon Gravi <[email protected]>
Daniel Black 2 years ago
parent
commit
dc2faa0974

+ 3 - 2
test/tests/mysql-basics/run.sh

@@ -25,9 +25,10 @@ trap "docker rm -vf $cid > /dev/null" EXIT
 mysql() {
 	docker run --rm -i \
 		--link "$cname":mysql \
-		--entrypoint mysql \
+		--entrypoint sh \
 		-e MYSQL_PWD="$MYSQL_PASSWORD" \
 		"$image" \
+		-euc 'if command -v mariadb > /dev/null; then exec mariadb "$@"; else exec mysql "$@"; fi' -- \
 		-hmysql \
 		-u"$MYSQL_USER" \
 		--silent \
@@ -35,7 +36,7 @@ mysql() {
 		"$MYSQL_DATABASE"
 }
 
-. "$dir/../../retry.sh" --tries 30 "echo 'SELECT 1' | mysql"
+. "$dir/../../retry.sh" --tries 30 "mysql -e 'SELECT 1'"
 
 echo 'CREATE TABLE test (a INT, b INT, c VARCHAR(255))' | mysql
 [ "$(echo 'SELECT COUNT(*) FROM test' | mysql)" = 0 ]

+ 2 - 1
test/tests/mysql-initdb/run.sh

@@ -31,9 +31,10 @@ trap "docker rm -vf $cid > /dev/null" EXIT
 mysql() {
 	docker run --rm -i \
 		--link "$cname":mysql \
-		--entrypoint mysql \
+		--entrypoint sh \
 		-e MYSQL_PWD="$MYSQL_PASSWORD" \
 		"$image" \
+		-euc 'if command -v mariadb > /dev/null; then exec mariadb "$@"; else exec mysql "$@"; fi' -- \
 		-hmysql \
 		-u"$MYSQL_USER" \
 		--silent \

+ 2 - 1
test/tests/mysql-log-bin/run.sh

@@ -19,8 +19,9 @@ trap "docker rm -vf $cid > /dev/null" EXIT
 mysql() {
 	docker run --rm -i \
 		--link "$cname":mysql \
-		--entrypoint mysql \
+		--entrypoint sh \
 		"$image" \
+		-euc 'if command -v mariadb > /dev/null; then exec mariadb "$@"; else exec mysql "$@"; fi' -- \
 		-uroot \
 		-hmysql \
 		--silent \