From b193249cb35aa302359ac1cb1f362ed82214cd1a Mon Sep 17 00:00:00 2001 From: featherchen Date: Mon, 22 Jul 2024 01:37:14 +0800 Subject: [PATCH] feat(build): support env var of skipDockerTests --- build.gradle.kts | 10 ++++++++-- docs/how-to-build.md | 4 ++-- 2 files changed, 10 insertions(+), 4 deletions(-) diff --git a/build.gradle.kts b/build.gradle.kts index feb62f82895..5a680ad47d1 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -690,8 +690,14 @@ fun printDockerCheckInfo() { val dockerRunning = project.extra["dockerRunning"] as? Boolean ?: false val macDockerConnector = project.extra["macDockerConnector"] as? Boolean ?: false val isOrbStack = project.extra["isOrbStack"] as? Boolean ?: false - - if (extra["skipDockerTests"].toString().toBoolean()) { + val skipDockerTests = if (extra["skipDockerTests"].toString().toBoolean()) { + // Read the environment variable (SKIP_DOCKER_TESTS) when skipDockerTests is true + // which means users can enable the docker tests by setting the gradle properties or the environment variable. + System.getenv("SKIP_DOCKER_TESTS")?.toBoolean() ?: true + } else { + false + } + if (skipDockerTests) { project.extra["dockerTest"] = false } else if (OperatingSystem.current().isMacOsX() && dockerRunning && diff --git a/docs/how-to-build.md b/docs/how-to-build.md index e609be671f1..4a1f12b87d9 100644 --- a/docs/how-to-build.md +++ b/docs/how-to-build.md @@ -26,8 +26,8 @@ license: "This software is licensed under the Apache License version 2." + Gravitino uses the Gradle Java Toolchain to detect and manage JDK versions, it checks the installed JDK by running the `./gradlew javaToolchains` command. See [Gradle Java Toolchain](https://docs.gradle.org/current/userguide/toolchains.html#sec:java_toolchain). + Gravitino excludes all Docker-related tests by default. To run Docker related tests, make sure you have installed - Docker in your environment and set `skipDockerTests=false` in the `gradle.properties` file (or - use `-PskipDockerTests=false` in the command). Otherwise, all Docker required tests will skip. + Docker in your environment and either (1) set `skipDockerTests=false` in the `gradle.properties` file (or + use `-PskipDockerTests=false` in the command) or (2) `export SKIP_DOCKER_TESTS=false` in shell. Otherwise, all Docker required tests will skip. + macOS uses `docker-connector` to make the Gravitino Trino connector work with Docker for macOS. See [docker-connector](https://github.com/wenjunxiao/mac-docker-connector), `$GRAVITINO_HOME/dev/docker/tools/mac-docker-connector.sh`, and `$GRAVITINO_HOME/dev/docker/tools/README.md` for more details.