Skip to content

Commit af60c87

Browse files
authored
update to JDK 21 for integ tests (#737)
Signed-off-by: Michael Oviedo <[email protected]>
1 parent ec150c0 commit af60c87

File tree

2 files changed

+52
-3
lines changed

2 files changed

+52
-3
lines changed

.ci/build.sh

+31-1
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,21 @@ function setup {
1212

1313
# Init pyenv.
1414
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
1530
}
1631

1732
function build_and_unit_test {
@@ -28,8 +43,23 @@ function run_it {
2843

2944
docker pull ubuntu/squid:latest
3045

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
3255
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
3363
}
3464

3565
$@

.github/workflows/integ-test.yml

+21-2
Original file line numberDiff line numberDiff line change
@@ -40,12 +40,31 @@ jobs:
4040
- name: Install pyenv
4141
run: git clone https://github.com/pyenv/pyenv.git ~/.pyenv
4242

43+
- name: Install JDK 21
44+
uses: actions/setup-java@v3
45+
with:
46+
distribution: 'adopt'
47+
java-version: '21'
48+
- run: |
49+
echo "JAVA21_HOME=$JAVA_HOME" >> $GITHUB_ENV
50+
echo "BUILD_JAVA_HOME=$JAVA_HOME" >> $GITHUB_ENV
51+
4352
- name: Install JDK 17
4453
uses: actions/setup-java@v3
4554
with:
4655
distribution: 'adopt'
4756
java-version: '17'
48-
- run: echo "JAVA17_HOME=$JAVA_HOME" >> $GITHUB_ENV
57+
- run: |
58+
echo "JAVA17_HOME=$JAVA_HOME" >> $GITHUB_ENV
59+
echo "JAVA_HOME=$JAVA_HOME" >> $GITHUB_ENV # Set JDK 17 as default
4960
5061
- name: Run the CI build script
51-
run: bash .ci/build.sh run_it ${{ matrix.python-version }}
62+
run: |
63+
# For build operations that need JDK 21
64+
if [ -n "$BUILD_JAVA_HOME" ]; then
65+
export ORIG_JAVA_HOME=$JAVA_HOME
66+
export JAVA_HOME=$BUILD_JAVA_HOME
67+
# do build operations here
68+
export JAVA_HOME=$ORIG_JAVA_HOME
69+
fi
70+
bash .ci/build.sh run_it ${{ matrix.python-version }}

0 commit comments

Comments
 (0)