From bce02214e4651d3a20ca020f5b8bafc9d45740e0 Mon Sep 17 00:00:00 2001 From: Federico Stagni Date: Wed, 13 Nov 2024 13:41:08 +0100 Subject: [PATCH] fix: support for latest mariadb versions --- integration_tests.py | 7 ++++++- tests/CI/docker-compose.yml | 2 +- 2 files changed, 7 insertions(+), 2 deletions(-) diff --git a/integration_tests.py b/integration_tests.py index 30a8da5580a..f3e526a7c68 100755 --- a/integration_tests.py +++ b/integration_tests.py @@ -288,7 +288,8 @@ def prepare_environment( subprocess.run(cmd + ["chown", "dirac", "/home/dirac"], check=True) typer.secho("Creating MySQL user", fg=c.GREEN) - cmd = ["docker", "exec", "mysql", "mysql", f"--password={DB_ROOTPWD}", "-e"] + mysql_command = "mariadb" if "mariadb" in docker_compose_env["MYSQL_VER"].lower() else "mysql" + cmd = ["docker", "exec", "mysql", f"{mysql_command}", f"--password={DB_ROOTPWD}", "-e"] # It sometimes takes a while for MySQL to be ready so wait for a while if needed for _ in range(10): ret = subprocess.run( @@ -777,6 +778,10 @@ def _make_env(flags): env["HOST_OS"] = flags.pop("HOST_OS", DEFAULT_HOST_OS) env["CI_REGISTRY_IMAGE"] = flags.pop("CI_REGISTRY_IMAGE", "diracgrid") env["MYSQL_VER"] = flags.pop("MYSQL_VER", DEFAULT_MYSQL_VER) + if "mariadb" in env["MYSQL_VER"].lower(): + env["MYSQL_ADMIN_COMMAND"] = "mariadb-admin" + else: + env["MYSQL_ADMIN_COMMAND"] = "mysqladmin" env["ES_VER"] = flags.pop("ES_VER", DEFAULT_ES_VER) env["IAM_VER"] = flags.pop("IAM_VER", DEFAULT_IAM_VER) if "CVMFS_DIR" not in env or not Path(env["CVMFS_DIR"]).is_dir(): diff --git a/tests/CI/docker-compose.yml b/tests/CI/docker-compose.yml index 472da21809a..4e8d3911260 100644 --- a/tests/CI/docker-compose.yml +++ b/tests/CI/docker-compose.yml @@ -13,7 +13,7 @@ services: ports: - 3306:3306 healthcheck: - test: ["CMD", "mysqladmin", "ping", "-h", "localhost"] + test: ["CMD", "${MYSQL_ADMIN_COMMAND}", "ping", "-h", "localhost"] timeout: 20s retries: 10 start_period: 60s