Browse Source

Update "java" tests to run javac to determine whether a JDK image is probably an actual JDK

Tianon Gravi 2 years ago
parent
commit
6b256acbc4
1 changed files with 3 additions and 7 deletions
  1. 3 7
      test/tests/run-java-in-container.sh

+ 3 - 7
test/tests/run-java-in-container.sh

@@ -17,15 +17,11 @@ tryJdks=(
 	"${image%%:*}:jdk-slim"
 	"${image%%:*}:jdk-slim"
 	"${image%%:*}:jdk"
 	"${image%%:*}:jdk"
 	"${image%%:*}:latest"
 	"${image%%:*}:latest"
-	'openjdk:8-jdk-slim'
+	'eclipse-temurin:8-jdk'
 )
 )
 jdk=
 jdk=
 for potentialJdk in "${tryJdks[@]}"; do
 for potentialJdk in "${tryJdks[@]}"; do
-	if docker image inspect "$potentialJdk" &> /dev/null; then
-		jdk="$potentialJdk"
-		break
-	fi
-	if docker pull --quiet "$potentialJdk" &> /dev/null; then
+	if docker run --rm --pull=missing "$potentialJdk" javac -help &> /dev/null; then
 		jdk="$potentialJdk"
 		jdk="$potentialJdk"
 		break
 		break
 	fi
 	fi
@@ -40,7 +36,7 @@ fi
 
 
 # if possible, use "--release" in case $jdk and $image have mismatching Java versions
 # if possible, use "--release" in case $jdk and $image have mismatching Java versions
 javac='javac'
 javac='javac'
-if docker run --rm "$jdk" java --help 2>&1 | grep -q -- '--release'; then
+if docker run --rm "$jdk" javac --help 2>&1 | grep -q -- '--release'; then
 	javac='javac --release 8'
 	javac='javac --release 8'
 fi
 fi