@@ -10,23 +10,58 @@ jobs:
1010 strategy :
1111 matrix :
1212 include :
13+ - javaVersion : 25
14+ distribution : ' liberica'
1315 - javaVersion : 17
14- springBootVersion : " 4.0.0"
15- - javaVersion : 17
16- springBootVersion : " 4.0.1-SNAPSHOT"
16+ distribution : ' temurin'
1717 runs-on : ubuntu-latest
1818 steps :
1919 - uses : actions/checkout@v4
20- - uses : spring-io/spring-gradle-build-action@v2
21- - name : Check samples project
22- env :
23- BOOT_VERSION : ${{ matrix.springBootVersion }}
24- JAVA_VERSION : ${{ matrix.javaVersion }}
20+ - name : Set up Java ${{ matrix.javaVersion }} ${{ matrix.distribution }}
21+ uses : actions/setup-java@v4
22+ with :
23+ java-version : ${{ matrix.javaVersion }}
24+ distribution : ${{ matrix.distribution }}
25+ cache : gradle
26+
27+ - name : Build and run samples w/ Java 25 $ {{ matrix.distribution }} (non-kotlin)
28+ if : ${{ matrix.javaVersion == 25 }}
2529 run : |
26- cd samples
27- ./gradlew \
28- --init-script ./sample-apps-check-ci.gradle \
29- -PspringBootVersion="$BOOT_VERSION" \
30- -PtestToolchain="$JAVA_VERSION" \
30+ pushd samples > dev/null
31+ ./gradlew clean build \
32+ -x :grpc-server-kotlin:build \
33+ -PtestToolchain=25 \
3134 --rerun-tasks --no-build-cache \
3235 build
36+ popd > dev/null
37+
38+ - name : Setup Java 24 for grpc-server-kotlin w/ Java 24
39+ if : ${{ matrix.javaVersion == 25 }}
40+ uses : actions/setup-java@v4
41+ with :
42+ java-version : 24
43+ distribution : ${{ matrix.distribution }}
44+ cache : gradle
45+ - name : Build and run samples w/ Java grpc-server-kotlin w/ Java 24
46+ if : ${{ matrix.javaVersion == 25 }}
47+ run : |
48+ pushd samples > dev/null
49+ ./gradlew :grpc-server-kotlin:build \
50+ -PtestToolchain=24 \
51+ --rerun-tasks --no-build-cache
52+
53+ - name : Build and run samples w/ Java ${{ matrix.javaVersion }} ${{ matrix.distribution }}
54+ if : ${{ matrix.javaVersion != 25 }}
55+ run : |
56+ cd samples
57+ ./gradlew clean build \
58+ -PtestToolchain="${{ matrix.javaVersion }}" \
59+ --rerun-tasks --no-build-cache
60+
61+ - name : Upload Build Reports (Java ${{ matrix.javaVersion }} ${{ matrix.distribution }})
62+ if : failure()
63+ uses : actions/upload-artifact@v4
64+ with :
65+ name : test-results
66+ path : ' */target/surefire-reports/*.*'
67+ retention-days : 3
0 commit comments