@@ -12,6 +12,21 @@ function setup {
12
12
13
13
# Init pyenv.
14
14
PATH=$HOME /.pyenv/shims:$PATH :$HOME /.pyenv/bin
15
+
16
+ # OpenSearch has different JDK requirements:
17
+ # - Gradle builds need JDK 21 (after Apache Lucene 10 upgrade)
18
+ # - OpenSearch runtime operations need JDK 17
19
+ # Store the current JAVA_HOME (Java 21) for Gradle
20
+ export GRADLE_JAVA_HOME=$JAVA_HOME
21
+
22
+ # Set JAVA_HOME to Java 17 for OpenSearch
23
+ if [ -n " $JAVA17_HOME " ]; then
24
+ echo " Setting JAVA_HOME to Java 17 for OpenSearch"
25
+ export JAVA_HOME=$JAVA17_HOME
26
+ java -version
27
+ else
28
+ echo " WARNING: JAVA17_HOME is not set!"
29
+ fi
15
30
}
16
31
17
32
function build_and_unit_test {
@@ -28,8 +43,23 @@ function run_it {
28
43
29
44
docker pull ubuntu/squid:latest
30
45
31
- # make it38, it39, etc. so they run as concurrent GHA jobs
46
+ # Temporarily switch to Java 21 for Gradle builds if needed
47
+ if [ -n " $GRADLE_JAVA_HOME " ]; then
48
+ OLD_JAVA_HOME=$JAVA_HOME
49
+ export JAVA_HOME=$GRADLE_JAVA_HOME
50
+ echo " Switched to Java 21 for Gradle build"
51
+ java -version
52
+ fi
53
+
54
+ # Run the integration test
32
55
make " it${1// ./ } "
56
+
57
+ # Switch back to Java 17 if we changed it
58
+ if [ -n " $OLD_JAVA_HOME " ]; then
59
+ export JAVA_HOME=$OLD_JAVA_HOME
60
+ echo " Switched back to Java 17"
61
+ java -version
62
+ fi
33
63
}
34
64
35
65
$@
0 commit comments