From aeb7526d0f9fd67b37bc05cbd7615b0c9ae734bd Mon Sep 17 00:00:00 2001 From: diegomarquezp Date: Wed, 17 Sep 2025 22:26:52 +0000 Subject: [PATCH 1/4] test: confirm behavior of GraalVM 25 --- .kokoro/build.sh | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/.kokoro/build.sh b/.kokoro/build.sh index 110835b464f..905c7ddeb07 100755 --- a/.kokoro/build.sh +++ b/.kokoro/build.sh @@ -184,6 +184,10 @@ integration-cloud-staging|integration-cloud-staging-directpath-enabled) ;; graalvm) # Run Unit and Integration Tests with Native Image + curl -s "https://get.sdkman.io" | bash + sdk install java 25-graalce + java -version + mvn test -Pnative -Penable-integration-tests -Dspanner.gce.config.project_id=gcloud-devel -Dspanner.testenv.instance=projects/gcloud-devel/instances/java-client-integration-tests RETURN_CODE=$? ;; From b3b6f70b3d6e3fae99721c0d965ff369a02ee74e Mon Sep 17 00:00:00 2001 From: Diego Marquez Date: Wed, 17 Sep 2025 19:12:11 -0400 Subject: [PATCH 2/4] Refactor GraalVM installation in build.sh --- .kokoro/build.sh | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/.kokoro/build.sh b/.kokoro/build.sh index 905c7ddeb07..1900b0ea003 100755 --- a/.kokoro/build.sh +++ b/.kokoro/build.sh @@ -184,8 +184,11 @@ integration-cloud-staging|integration-cloud-staging-directpath-enabled) ;; graalvm) # Run Unit and Integration Tests with Native Image - curl -s "https://get.sdkman.io" | bash - sdk install java 25-graalce + set -ex + microdnf install zip + curl -s "https://get.sdkman.io" | bash -e + source "/root/.sdkman/bin/sdkman-init.sh" + sdk install java 25-graalce -Y java -version mvn test -Pnative -Penable-integration-tests -Dspanner.gce.config.project_id=gcloud-devel -Dspanner.testenv.instance=projects/gcloud-devel/instances/java-client-integration-tests From f490a622ed8eb34011a726bdfc1a4c01f9bf8dd9 Mon Sep 17 00:00:00 2001 From: Diego Marquez Date: Thu, 18 Sep 2025 13:49:24 -0400 Subject: [PATCH 3/4] chore: also override maven --- .kokoro/build.sh | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/.kokoro/build.sh b/.kokoro/build.sh index 1900b0ea003..e264e368cd1 100755 --- a/.kokoro/build.sh +++ b/.kokoro/build.sh @@ -184,12 +184,15 @@ integration-cloud-staging|integration-cloud-staging-directpath-enabled) ;; graalvm) # Run Unit and Integration Tests with Native Image - set -ex + set -e microdnf install zip curl -s "https://get.sdkman.io" | bash -e source "/root/.sdkman/bin/sdkman-init.sh" + set -x sdk install java 25-graalce -Y + sdk install maven 3.9.11 -Y java -version + mvn -version mvn test -Pnative -Penable-integration-tests -Dspanner.gce.config.project_id=gcloud-devel -Dspanner.testenv.instance=projects/gcloud-devel/instances/java-client-integration-tests RETURN_CODE=$? From ba1fcdcf5d27a8c3da4e7cf14dc664c592261d6b Mon Sep 17 00:00:00 2001 From: Diego Marquez Date: Fri, 26 Sep 2025 19:41:16 -0400 Subject: [PATCH 4/4] Refactor GraalVM installation in build script Updated the GraalVM installation process to download and extract the JDK directly, setting JAVA_HOME accordingly. --- .kokoro/build.sh | 19 +++++++++++-------- 1 file changed, 11 insertions(+), 8 deletions(-) diff --git a/.kokoro/build.sh b/.kokoro/build.sh index e264e368cd1..6fa672ea6a6 100755 --- a/.kokoro/build.sh +++ b/.kokoro/build.sh @@ -184,15 +184,18 @@ integration-cloud-staging|integration-cloud-staging-directpath-enabled) ;; graalvm) # Run Unit and Integration Tests with Native Image - set -e - microdnf install zip - curl -s "https://get.sdkman.io" | bash -e - source "/root/.sdkman/bin/sdkman-init.sh" - set -x - sdk install java 25-graalce -Y - sdk install maven 3.9.11 -Y + echo "Install GraalVM 25" + echo "$JAVA_HOME" + pwd + mkdir -p ~/tools/jdk + cd ~/tools/jdk + wget https://download.oracle.com/graalvm/25/latest/graalvm-jdk-25_linux-x64_bin.tar.gz + tar -xf graalvm-jdk-25_linux-x64_bin.tar.gz + export JAVA_HOME=~/tools/jdk/graalvm-jdk-25+37.1 + export PATH=$JAVA_HOME/bin:$PATH java -version - mvn -version + echo "Running native image tests..." + cd "${scriptDir}/.." mvn test -Pnative -Penable-integration-tests -Dspanner.gce.config.project_id=gcloud-devel -Dspanner.testenv.instance=projects/gcloud-devel/instances/java-client-integration-tests RETURN_CODE=$?