Skip to content

Commit ecd5f1c

Browse files
sajeerzejivenmanyarunSajeerSajeerSajeer
authored
Migrated the Liberty Gradle Plugin from Gradle 8 to Gradle 9 (#1046)
* archive option fix for gradle Signed-off-by: Arun Venmany <arun.kumar.v.n@ibm.com> * rolling back workflow yaml Signed-off-by: Arun Venmany <arun.kumar.v.n@ibm.com> * Toolchain v1 (#1040) * toolchain initial commit Signed-off-by: Arun Venmany <arun.kumar.v.n@ibm.com> * adding toolchain jdk setup Signed-off-by: Arun Venmany <arun.kumar.v.n@ibm.com> * adding logs and correcting tests Signed-off-by: Arun Venmany <arun.kumar.v.n@ibm.com> * adding branch to workflow yaml (#1036) * adding branch to workflow yaml Signed-off-by: Arun Venmany <arun.kumar.v.n@ibm.com> * adding branch to workflow yaml Signed-off-by: Arun Venmany <arun.kumar.v.n@ibm.com> * removing env Signed-off-by: Arun Venmany <arun.kumar.v.n@ibm.com> * sending java installation path as parameter Signed-off-by: Arun Venmany <arun.kumar.v.n@ibm.com> * sending java installation path as parameter Signed-off-by: Arun Venmany <arun.kumar.v.n@ibm.com> * trying with gradle init step Signed-off-by: Arun Venmany <arun.kumar.v.n@ibm.com> * trying with gradle init step Signed-off-by: Arun Venmany <arun.kumar.v.n@ibm.com> * trying with gradle init step Signed-off-by: Arun Venmany <arun.kumar.v.n@ibm.com> * trying with gradle init step Signed-off-by: Arun Venmany <arun.kumar.v.n@ibm.com> * trying with gradle init step Signed-off-by: Arun Venmany <arun.kumar.v.n@ibm.com> * trying with gradle init step Signed-off-by: Arun Venmany <arun.kumar.v.n@ibm.com> * fixing run script Signed-off-by: Arun Venmany <arun.kumar.v.n@ibm.com> * fixing run script Signed-off-by: Arun Venmany <arun.kumar.v.n@ibm.com> * fixing run script Signed-off-by: Arun Venmany <arun.kumar.v.n@ibm.com> * fixing run script Signed-off-by: Arun Venmany <arun.kumar.v.n@ibm.com> * fixing run script Signed-off-by: Arun Venmany <arun.kumar.v.n@ibm.com> * fixing run script Signed-off-by: Arun Venmany <arun.kumar.v.n@ibm.com> * fixing run script Signed-off-by: Arun Venmany <arun.kumar.v.n@ibm.com> * fixing run script Signed-off-by: Arun Venmany <arun.kumar.v.n@ibm.com> * fixing run script Signed-off-by: Arun Venmany <arun.kumar.v.n@ibm.com> * fixing run script Signed-off-by: Arun Venmany <arun.kumar.v.n@ibm.com> * fixing run script Signed-off-by: Arun Venmany <arun.kumar.v.n@ibm.com> * fixing run script Signed-off-by: Arun Venmany <arun.kumar.v.n@ibm.com> * refactoring test method, enabling back workflow steps Signed-off-by: Arun Venmany <arun.kumar.v.n@ibm.com> * changes to fix tests Signed-off-by: Arun Venmany <arun.kumar.v.n@ibm.com> * changes to fix tests Signed-off-by: Arun Venmany <arun.kumar.v.n@ibm.com> --------- Signed-off-by: Arun Venmany <arun.kumar.v.n@ibm.com> * Toolchain v1 (#1037) * adding branch to workflow yaml Signed-off-by: Arun Venmany <arun.kumar.v.n@ibm.com> * adding branch to workflow yaml Signed-off-by: Arun Venmany <arun.kumar.v.n@ibm.com> * removing env Signed-off-by: Arun Venmany <arun.kumar.v.n@ibm.com> * sending java installation path as parameter Signed-off-by: Arun Venmany <arun.kumar.v.n@ibm.com> * sending java installation path as parameter Signed-off-by: Arun Venmany <arun.kumar.v.n@ibm.com> * trying with gradle init step Signed-off-by: Arun Venmany <arun.kumar.v.n@ibm.com> * trying with gradle init step Signed-off-by: Arun Venmany <arun.kumar.v.n@ibm.com> * trying with gradle init step Signed-off-by: Arun Venmany <arun.kumar.v.n@ibm.com> * trying with gradle init step Signed-off-by: Arun Venmany <arun.kumar.v.n@ibm.com> * trying with gradle init step Signed-off-by: Arun Venmany <arun.kumar.v.n@ibm.com> * trying with gradle init step Signed-off-by: Arun Venmany <arun.kumar.v.n@ibm.com> * fixing run script Signed-off-by: Arun Venmany <arun.kumar.v.n@ibm.com> * fixing run script Signed-off-by: Arun Venmany <arun.kumar.v.n@ibm.com> * fixing run script Signed-off-by: Arun Venmany <arun.kumar.v.n@ibm.com> * fixing run script Signed-off-by: Arun Venmany <arun.kumar.v.n@ibm.com> * fixing run script Signed-off-by: Arun Venmany <arun.kumar.v.n@ibm.com> * fixing run script Signed-off-by: Arun Venmany <arun.kumar.v.n@ibm.com> * fixing run script Signed-off-by: Arun Venmany <arun.kumar.v.n@ibm.com> * fixing run script Signed-off-by: Arun Venmany <arun.kumar.v.n@ibm.com> * fixing run script Signed-off-by: Arun Venmany <arun.kumar.v.n@ibm.com> * fixing run script Signed-off-by: Arun Venmany <arun.kumar.v.n@ibm.com> * fixing run script Signed-off-by: Arun Venmany <arun.kumar.v.n@ibm.com> * fixing run script Signed-off-by: Arun Venmany <arun.kumar.v.n@ibm.com> * refactoring test method, enabling back workflow steps Signed-off-by: Arun Venmany <arun.kumar.v.n@ibm.com> * changes to fix tests Signed-off-by: Arun Venmany <arun.kumar.v.n@ibm.com> * changes to fix tests Signed-off-by: Arun Venmany <arun.kumar.v.n@ibm.com> * Adding more tests for libertyCreate and libertyStart Signed-off-by: Arun Venmany <arun.kumar.v.n@ibm.com> * adding tests similar to LibertyTests.groovy with toolchains Signed-off-by: Arun Venmany <arun.kumar.v.n@ibm.com> * updating tests Signed-off-by: Arun Venmany <arun.kumar.v.n@ibm.com> * updating tests Signed-off-by: Arun Venmany <arun.kumar.v.n@ibm.com> --------- Signed-off-by: Arun Venmany <arun.kumar.v.n@ibm.com> * adding jvmArgs metspace for test Signed-off-by: Arun Venmany <arun.kumar.v.n@ibm.com> * steps in workflow to upload reports Signed-off-by: Arun Venmany <arun.kumar.v.n@ibm.com> * increase metaspace to 1g Signed-off-by: Arun Venmany <arun.kumar.v.n@ibm.com> * set metaspace to gradle.properties Signed-off-by: Arun Venmany <arun.kumar.v.n@ibm.com> * adding back other java versions to matrix Signed-off-by: Arun Venmany <arun.kumar.v.n@ibm.com> * removing toolchain branch from workflow Signed-off-by: Arun Venmany <arun.kumar.v.n@ibm.com> * correcting copyright year Signed-off-by: Arun Venmany <arun.kumar.v.n@ibm.com> * addresing review comments Signed-off-by: Arun Venmany <arun.kumar.v.n@ibm.com> * new test for warning on java home already configured in jvm.options or server.env Signed-off-by: Arun Venmany <arun.kumar.v.n@ibm.com> * new test for warning on java home already configured in jvm.options or server.env Signed-off-by: Arun Venmany <arun.kumar.v.n@ibm.com> * fixing windows tests Signed-off-by: Arun Venmany <arun.kumar.v.n@ibm.com> * Adding logic to consider env variables and jvm.option variables Signed-off-by: Arun Venmany <arun.kumar.v.n@ibm.com> * updating tests to check windows issue Signed-off-by: Arun Venmany <arun.kumar.v.n@ibm.com> * updating tests to check windows issue Signed-off-by: Arun Venmany <arun.kumar.v.n@ibm.com> * excluding gradle property based tests from windows Signed-off-by: Arun Venmany <arun.kumar.v.n@ibm.com> * modifying tests to work with java 8 Signed-off-by: Arun Venmany <arun.kumar.v.n@ibm.com> * modifying tests Signed-off-by: Arun Venmany <arun.kumar.v.n@ibm.com> * code changes to fix split for windows Signed-off-by: Arun Venmany <arun.kumar.v.n@ibm.com> * adding new test for libertyStop Signed-off-by: Arun Venmany <arun.kumar.v.n@ibm.com> * adding new test for libertyStop Signed-off-by: Arun Venmany <arun.kumar.v.n@ibm.com> * changes based on review comments * adding -D option for jvmOptions * adding changes to support mergeServerEnv config file specified in configDirectory Signed-off-by: Arun Venmany <arun.kumar.v.n@ibm.com> --------- Signed-off-by: Arun Venmany <arun.kumar.v.n@ibm.com> Co-authored-by: Sajeer Zeji <44323186+sajeerzeji@users.noreply.github.com> * removing runtime code to add foojay plugin to settings.gradle (#1042) * removing runtime code to add foojay plugin to settings.gradle * changes based on review comments * Toolchain support for devmode (#1041) * toolchain initial commit Signed-off-by: Arun Venmany <arun.kumar.v.n@ibm.com> * adding toolchain jdk setup Signed-off-by: Arun Venmany <arun.kumar.v.n@ibm.com> * adding logs and correcting tests Signed-off-by: Arun Venmany <arun.kumar.v.n@ibm.com> * adding branch to workflow yaml (#1036) * adding branch to workflow yaml Signed-off-by: Arun Venmany <arun.kumar.v.n@ibm.com> * adding branch to workflow yaml Signed-off-by: Arun Venmany <arun.kumar.v.n@ibm.com> * removing env Signed-off-by: Arun Venmany <arun.kumar.v.n@ibm.com> * sending java installation path as parameter Signed-off-by: Arun Venmany <arun.kumar.v.n@ibm.com> * sending java installation path as parameter Signed-off-by: Arun Venmany <arun.kumar.v.n@ibm.com> * trying with gradle init step Signed-off-by: Arun Venmany <arun.kumar.v.n@ibm.com> * trying with gradle init step Signed-off-by: Arun Venmany <arun.kumar.v.n@ibm.com> * trying with gradle init step Signed-off-by: Arun Venmany <arun.kumar.v.n@ibm.com> * trying with gradle init step Signed-off-by: Arun Venmany <arun.kumar.v.n@ibm.com> * trying with gradle init step Signed-off-by: Arun Venmany <arun.kumar.v.n@ibm.com> * trying with gradle init step Signed-off-by: Arun Venmany <arun.kumar.v.n@ibm.com> * fixing run script Signed-off-by: Arun Venmany <arun.kumar.v.n@ibm.com> * fixing run script Signed-off-by: Arun Venmany <arun.kumar.v.n@ibm.com> * fixing run script Signed-off-by: Arun Venmany <arun.kumar.v.n@ibm.com> * fixing run script Signed-off-by: Arun Venmany <arun.kumar.v.n@ibm.com> * fixing run script Signed-off-by: Arun Venmany <arun.kumar.v.n@ibm.com> * fixing run script Signed-off-by: Arun Venmany <arun.kumar.v.n@ibm.com> * fixing run script Signed-off-by: Arun Venmany <arun.kumar.v.n@ibm.com> * fixing run script Signed-off-by: Arun Venmany <arun.kumar.v.n@ibm.com> * fixing run script Signed-off-by: Arun Venmany <arun.kumar.v.n@ibm.com> * fixing run script Signed-off-by: Arun Venmany <arun.kumar.v.n@ibm.com> * fixing run script Signed-off-by: Arun Venmany <arun.kumar.v.n@ibm.com> * fixing run script Signed-off-by: Arun Venmany <arun.kumar.v.n@ibm.com> * refactoring test method, enabling back workflow steps Signed-off-by: Arun Venmany <arun.kumar.v.n@ibm.com> * changes to fix tests Signed-off-by: Arun Venmany <arun.kumar.v.n@ibm.com> * changes to fix tests Signed-off-by: Arun Venmany <arun.kumar.v.n@ibm.com> --------- Signed-off-by: Arun Venmany <arun.kumar.v.n@ibm.com> * Toolchain v1 (#1037) * adding branch to workflow yaml Signed-off-by: Arun Venmany <arun.kumar.v.n@ibm.com> * adding branch to workflow yaml Signed-off-by: Arun Venmany <arun.kumar.v.n@ibm.com> * removing env Signed-off-by: Arun Venmany <arun.kumar.v.n@ibm.com> * sending java installation path as parameter Signed-off-by: Arun Venmany <arun.kumar.v.n@ibm.com> * sending java installation path as parameter Signed-off-by: Arun Venmany <arun.kumar.v.n@ibm.com> * trying with gradle init step Signed-off-by: Arun Venmany <arun.kumar.v.n@ibm.com> * trying with gradle init step Signed-off-by: Arun Venmany <arun.kumar.v.n@ibm.com> * trying with gradle init step Signed-off-by: Arun Venmany <arun.kumar.v.n@ibm.com> * trying with gradle init step Signed-off-by: Arun Venmany <arun.kumar.v.n@ibm.com> * trying with gradle init step Signed-off-by: Arun Venmany <arun.kumar.v.n@ibm.com> * trying with gradle init step Signed-off-by: Arun Venmany <arun.kumar.v.n@ibm.com> * fixing run script Signed-off-by: Arun Venmany <arun.kumar.v.n@ibm.com> * fixing run script Signed-off-by: Arun Venmany <arun.kumar.v.n@ibm.com> * fixing run script Signed-off-by: Arun Venmany <arun.kumar.v.n@ibm.com> * fixing run script Signed-off-by: Arun Venmany <arun.kumar.v.n@ibm.com> * fixing run script Signed-off-by: Arun Venmany <arun.kumar.v.n@ibm.com> * fixing run script Signed-off-by: Arun Venmany <arun.kumar.v.n@ibm.com> * fixing run script Signed-off-by: Arun Venmany <arun.kumar.v.n@ibm.com> * fixing run script Signed-off-by: Arun Venmany <arun.kumar.v.n@ibm.com> * fixing run script Signed-off-by: Arun Venmany <arun.kumar.v.n@ibm.com> * fixing run script Signed-off-by: Arun Venmany <arun.kumar.v.n@ibm.com> * fixing run script Signed-off-by: Arun Venmany <arun.kumar.v.n@ibm.com> * fixing run script Signed-off-by: Arun Venmany <arun.kumar.v.n@ibm.com> * refactoring test method, enabling back workflow steps Signed-off-by: Arun Venmany <arun.kumar.v.n@ibm.com> * changes to fix tests Signed-off-by: Arun Venmany <arun.kumar.v.n@ibm.com> * changes to fix tests Signed-off-by: Arun Venmany <arun.kumar.v.n@ibm.com> * Adding more tests for libertyCreate and libertyStart Signed-off-by: Arun Venmany <arun.kumar.v.n@ibm.com> * adding tests similar to LibertyTests.groovy with toolchains Signed-off-by: Arun Venmany <arun.kumar.v.n@ibm.com> * updating tests Signed-off-by: Arun Venmany <arun.kumar.v.n@ibm.com> * updating tests Signed-off-by: Arun Venmany <arun.kumar.v.n@ibm.com> --------- Signed-off-by: Arun Venmany <arun.kumar.v.n@ibm.com> * adding jvmArgs metspace for test Signed-off-by: Arun Venmany <arun.kumar.v.n@ibm.com> * steps in workflow to upload reports Signed-off-by: Arun Venmany <arun.kumar.v.n@ibm.com> * increase metaspace to 1g Signed-off-by: Arun Venmany <arun.kumar.v.n@ibm.com> * set metaspace to gradle.properties Signed-off-by: Arun Venmany <arun.kumar.v.n@ibm.com> * adding back other java versions to matrix Signed-off-by: Arun Venmany <arun.kumar.v.n@ibm.com> * removing toolchain branch from workflow (#1039) Signed-off-by: Arun Venmany <arun.kumar.v.n@ibm.com> * Environment variables merging processes added * Added logs for devmode recompilation for toolchain * Added test for devmode recompilation * Corrected a leftover code * Copyright years updated * DevmodeToolchainTest excluded for windows in pipeline * Toolchain doc updated for toolchain config precedence section * Updated the toolchain.md documentation by adding some examples * Added more logs as sample * Removed adding foojay plugin through test code to settings.gradle, and added it to ther test projects settings.gradle directly * Liberty version and ant version are updated * Auto provisioning link added to the toolchain.md toubleshooting section --------- Signed-off-by: Arun Venmany <arun.kumar.v.n@ibm.com> Co-authored-by: Arun Venmany <arun.kumar.v.n@ibm.com> Co-authored-by: Sajeer <sajeer@Sajeers-MacBook-Pro.local> Co-authored-by: Sajeer <sajeer@Mac.lan> Co-authored-by: Sajeer <sajeer@mac.in.ibm.com> * prepare release liberty-gradle-plugin-3.10.0 * prepare for next development iteration * Confglicts resolved * Changed pipeline config to run on personal pipeline to find out if any more failures happening * RUNTIME_VERSION in the pipeline is changed to 25.0.0.10, to test Spring Boot failures * Spring boot issues fixed by changing the sourceCompatibility,targetCompatibility and spring boot version * Test failures resolved * Java 25 related issues are fixed * Fixed issues with TestLooseApplicationWithToolchain * Fix for windows and java 25 test failures * Foojay version upgraded to resolve the CI breaks in windows * Gradle 9 related changes for making gradle build run without any fail * Guard signing tasks so CI and local builds succeed without configured signing keys while still supporting signed release publishing * Liberty version updated for windows pipeline * PR Branch changed to main in gradle.yml * Updated the copyright years and removed unwanted comments * Removed leftover codes, adjusted commends, and reverted unwanted codes * Readme and Migration Guide are updated with Support matrix, Springboot and Arquilian updates and Java 25 updates * Corrected Compatibility / Support section in readme * Added back the java support lines --------- Signed-off-by: Arun Venmany <arun.kumar.v.n@ibm.com> Co-authored-by: Arun Venmany <arun.kumar.v.n@ibm.com> Co-authored-by: Sajeer <sajeer@Sajeers-MacBook-Pro.local> Co-authored-by: Sajeer <sajeer@Mac.lan> Co-authored-by: Sajeer <sajeer@mac.in.ibm.com> Co-authored-by: wasdevb1 <wasdevb1@us.ibm.com>
1 parent c63b097 commit ecd5f1c

File tree

86 files changed

+4169
-297
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

86 files changed

+4169
-297
lines changed

.github/workflows/gradle.yml

Lines changed: 139 additions & 123 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ on:
77
push:
88
branches: '**'
99
pull_request:
10-
branches: [ feature/gradle9 ]
10+
branches: [ main ]
1111

1212
jobs:
1313
# UNIX BUILDS
@@ -18,70 +18,81 @@ jobs:
1818
matrix:
1919
# test against latest update of each major Java version, as well as specific updates of LTS versions:
2020
RUNTIME: [ol, wlp]
21-
RUNTIME_VERSION: [25.0.0.6]
22-
java: [21, 17]
21+
RUNTIME_VERSION: [25.0.0.12]
22+
java: [21, 17, 25]
23+
exclude:
24+
- java: 8
25+
RUNTIME: wlp
26+
- java: 11
27+
RUNTIME: ol
2328
name: ${{ matrix.RUNTIME }} ${{ matrix.RUNTIME_VERSION }}, Java ${{ matrix.java }}, Linux
2429
steps:
25-
# Checkout repos
26-
- name: Checkout ci.gradle
27-
uses: actions/checkout@v3
28-
# Set up Java
29-
- name: Setup Java ${{ matrix.java }}
30-
uses: actions/setup-java@v3
31-
with:
32-
distribution: 'adopt'
33-
java-version: ${{ matrix.java }}
34-
cache: 'gradle'
35-
- name: Checkout ci.common
36-
uses: actions/checkout@v3
37-
with:
38-
repository: OpenLiberty/ci.common
39-
path: ci.common
40-
- name: Checkout ci.ant
41-
uses: actions/checkout@v3
42-
with:
43-
repository: OpenLiberty/ci.ant
44-
path: ci.ant
45-
# Cache mvn/gradle packages
46-
- name: Cache Maven packages
47-
uses: actions/cache@v3
48-
with:
49-
path: ~/.m2
50-
key: ${{ runner.os }}-m2-${{ hashFiles('**/pom.xml') }}
51-
restore-keys: ${{ runner.os }}-m2
52-
- name: Cache Gradle packages
53-
uses: actions/cache@v3
54-
with:
55-
path: |
56-
~/.gradle/caches
57-
~/.gradle/wrapper
58-
key: ${{ runner.os }}-gradle-${{ hashFiles('**/*.gradle*', '**/gradle-wrapper.properties') }}
59-
restore-keys: |
60-
${{ runner.os }}-gradle-
61-
# Install dependencies
62-
- name: Install ci.ant and ci.common
63-
run: |
64-
mvn -V clean install -f ci.ant --batch-mode --no-transfer-progress --errors -DtrimStackTrace=false -DskipTests
65-
mvn -V clean install -f ci.common --batch-mode --no-transfer-progress --errors -DtrimStackTrace=false -DskipTests
66-
67-
- name: Run tests with Gradle on Ubuntu
68-
run:
69-
./gradlew clean install check -P"test.exclude"="**/TestSpringBootApplication*,**/DevContainerTest*" -Druntime=${{ matrix.RUNTIME }} -DruntimeVersion="${{ matrix.RUNTIME_VERSION }}" --stacktrace --info --warning-mode=all
70-
# Copy build reports and upload artifact if build failed
71-
- name: Copy build/report/tests/test for upload
72-
if: ${{ failure() }}
73-
run: |
74-
mkdir -p ${BUILD_REPORTS_PATH}
75-
cp -r test ${BUILD_REPORTS_PATH}
76-
working-directory: build/reports/tests
77-
env:
78-
BUILD_REPORTS_PATH: /buildReports/${{runner.os}}/java${{matrix.java}}/${{matrix.RUNTIME}}-${{matrix.RUNTIME_VERSION}}/
79-
- uses: actions/upload-artifact@v4
80-
if: ${{ failure() }}
81-
with:
82-
name: buildReportsArtifactLinux
83-
path: /buildReports
84-
retention-days: 3
30+
# Checkout repos
31+
- name: Checkout ci.gradle
32+
uses: actions/checkout@v3
33+
- name: Setup Java ${{ matrix.java }}
34+
uses: actions/setup-java@v3
35+
with:
36+
distribution: 'temurin'
37+
java-version: ${{ matrix.java }}
38+
cache: 'gradle'
39+
- name: Checkout ci.common
40+
uses: actions/checkout@v3
41+
with:
42+
repository: OpenLiberty/ci.common
43+
path: ci.common
44+
- name: Checkout ci.ant
45+
uses: actions/checkout@v3
46+
with:
47+
repository: OpenLiberty/ci.ant
48+
path: ci.ant
49+
# Cache mvn/gradle packages
50+
- name: Cache Maven packages
51+
uses: actions/cache@v3
52+
with:
53+
path: ~/.m2
54+
key: ${{ runner.os }}-m2-${{ hashFiles('**/pom.xml') }}
55+
restore-keys: ${{ runner.os }}-m2
56+
- name: Cache Gradle packages
57+
uses: actions/cache@v3
58+
with:
59+
path: |
60+
~/.gradle/caches
61+
~/.gradle/wrapper
62+
key: ${{ runner.os }}-gradle-${{ hashFiles('**/*.gradle*', '**/gradle-wrapper.properties') }}
63+
restore-keys: |
64+
${{ runner.os }}-gradle-
65+
# Install dependencies
66+
- name: Install ci.ant and ci.common
67+
run: |
68+
mvn -V clean install -f ci.ant --batch-mode --no-transfer-progress --errors -DtrimStackTrace=false -DskipTests
69+
mvn -V clean install -f ci.common --batch-mode --no-transfer-progress --errors -DtrimStackTrace=false -DskipTests
70+
# Run tests that require a minimum of Java 17 or later
71+
- name: Run tests that require a minimum of Java 17 or later
72+
if: ${{ matrix.java == '17' || matrix.java == '21' }}
73+
run:
74+
./gradlew clean install check -P"test.include"="**/TestSpringBootApplication30*,**/TestCompileJSPSource17*" -Druntime=${{ matrix.RUNTIME }} -DruntimeVersion="${{ matrix.RUNTIME_VERSION }}" --stacktrace --info --warning-mode=all
75+
# Run tests
76+
- name: Run tests with Gradle on Ubuntu
77+
run:
78+
./gradlew clean install check -P"test.exclude"="**/TestSpringBootApplication20*,**/TestSpringBootApplication30*,**/TestCompileJSPSource17*,**/DevContainerTest*" -Druntime=${{ matrix.RUNTIME }} -DruntimeVersion="${{ matrix.RUNTIME_VERSION }}" --stacktrace --info --warning-mode=all
79+
# Copy build reports and upload artifact if build failed
80+
- name: Copy build/report/tests/test for upload
81+
if: ${{ failure() }}
82+
run: |
83+
# Create the directory within the workspace
84+
mkdir -p "${{ github.workspace }}/${{ env.BUILD_REPORTS_PATH }}"
85+
# Copy the test results into that directory
86+
cp -r test/* "${{ github.workspace }}/${{ env.BUILD_REPORTS_PATH }}"
87+
working-directory: build/reports/tests
88+
env:
89+
BUILD_REPORTS_PATH: buildReports/${{ runner.os }}/java${{ matrix.java }}/${{ matrix.RUNTIME }}-${{ matrix.RUNTIME_VERSION }}
90+
- uses: actions/upload-artifact@v4
91+
if: ${{ failure() }}
92+
with:
93+
name: buildReportsArtifactLinux_${{matrix.java}}_${{matrix.RUNTIME}}_${{matrix.RUNTIME_VERSION}}
94+
path: ${{ github.workspace }}/buildReports/
95+
retention-days: 3
8596

8697
# WINDOWS BUILDS
8798
build-windows:
@@ -91,66 +102,71 @@ jobs:
91102
matrix:
92103
# test against latest update of each major Java version, as well as specific updates of LTS versions:
93104
RUNTIME: [ol, wlp]
94-
RUNTIME_VERSION: [25.0.0.6]
95-
java: [21, 17]
105+
RUNTIME_VERSION: [25.0.0.12]
106+
java: [21, 17, 25]
107+
exclude:
108+
- java: 8
109+
RUNTIME: ol
110+
- java: 11
111+
RUNTIME: wlp
96112
name: ${{ matrix.RUNTIME }} ${{ matrix.RUNTIME_VERSION }}, Java ${{ matrix.java }}, Windows
97113
env:
98-
TEST_EXCLUDE: ${{ '**/Polling*,**/LibertyTest*,**/GenerateFeaturesTest*,**/TestSpringBootApplication*,**/DevContainerTest*' }}
114+
TEST_EXCLUDE: ${{ '**/Polling*,**/LibertyTest*,**/LibertyToolchainTest*,**/GenerateFeaturesTest*,**/TestSpringBootApplication*,**/DevContainerTest*,**/DevModeToolchainTest*' }}
99115
steps:
100-
# Checkout repos
101-
- name: Checkout ci.gradle
102-
uses: actions/checkout@v3
103-
# Set up Java
104-
- name: Setup Java ${{ matrix.java }}
105-
uses: actions/setup-java@v3
106-
with:
107-
distribution: 'adopt'
108-
java-version: ${{ matrix.java }}
109-
cache: 'gradle'
110-
# Moving and cloning to C: drive for Windows for more disk space
111-
- name: Clone ci.ant, ci.common, ci.gradle repos to C drive
112-
run: |
113-
echo ${{github.workspace}}
114-
git clone https://github.com/OpenLiberty/ci.common.git ${{github.workspace}}/ci.common
115-
git clone https://github.com/OpenLiberty/ci.ant.git ${{github.workspace}}/ci.ant
116-
# Cache mvn/gradle packages
117-
- name: Cache Maven packages
118-
uses: actions/cache@v3
119-
with:
120-
path: ~/.m2
121-
key: ${{ runner.os }}-m2-${{ hashFiles('**/pom.xml') }}
122-
restore-keys: ${{ runner.os }}-m2
123-
- name: Cache Gradle packages
124-
uses: actions/cache@v3
125-
with:
126-
path: |
127-
~/.gradle/caches
128-
~/.gradle/wrapper
129-
key: ${{ runner.os }}-gradle-${{ hashFiles('**/*.gradle*', '**/gradle-wrapper.properties') }}
130-
restore-keys: |
131-
${{ runner.os }}-gradle-
132-
# Install ci.ant
133-
- name: Install ci.ant
134-
working-directory: ${{github.workspace}}/ci.ant
135-
run: mvn -V clean install --batch-mode --no-transfer-progress --errors -DtrimStackTrace=false -DskipTests
136-
# Install ci.common
137-
- name: Install ci.common
138-
working-directory: ${{github.workspace}}/ci.common
139-
run: mvn -V clean install --batch-mode --no-transfer-progress --errors -DtrimStackTrace=false -DskipTests
140-
# Run tests
141-
- name: Run tests with Gradle on Windows
142-
working-directory: ${{github.workspace}}
143-
# LibertyTest is excluded because test0_run hangs
144-
run: ./gradlew clean install check -P"test.exclude"="${{env.TEST_EXCLUDE}}" -Druntime=${{ matrix.RUNTIME }} -DruntimeVersion="${{ matrix.RUNTIME_VERSION }}" --stacktrace --info --no-daemon
145-
timeout-minutes: 75
146-
# Copy build reports and upload artifact if build failed
147-
- name: Copy build/report/tests/test for upload
148-
if: ${{ failure() }}
149-
working-directory: ${{github.workspace}}
150-
run: cp -r build/reports/tests/test C:/buildReports/${{runner.os}}/java${{matrix.java}}/${{matrix.RUNTIME}}-${{matrix.RUNTIME_VERSION}}/
151-
- uses: actions/upload-artifact@v4
152-
if: ${{ failure() }}
153-
with:
154-
name: buildReportsArtifactWindows
155-
path: C:/buildReports
156-
retention-days: 3
116+
# Checkout repos
117+
- name: Checkout ci.gradle
118+
uses: actions/checkout@v3
119+
# Set up Java
120+
- name: Setup Java ${{ matrix.java }}
121+
uses: actions/setup-java@v3
122+
with:
123+
distribution: 'temurin'
124+
java-version: ${{ matrix.java }}
125+
cache: 'gradle'
126+
# Moving and cloning to C: drive for Windows for more disk space
127+
- name: Clone ci.ant, ci.common, ci.gradle repos to C drive
128+
run: |
129+
echo ${{github.workspace}}
130+
git clone https://github.com/OpenLiberty/ci.common.git ${{github.workspace}}/ci.common
131+
git clone https://github.com/OpenLiberty/ci.ant.git ${{github.workspace}}/ci.ant
132+
# Cache mvn/gradle packages
133+
- name: Cache Maven packages
134+
uses: actions/cache@v3
135+
with:
136+
path: ~/.m2
137+
key: ${{ runner.os }}-m2-${{ hashFiles('**/pom.xml') }}
138+
restore-keys: ${{ runner.os }}-m2
139+
- name: Cache Gradle packages
140+
uses: actions/cache@v3
141+
with:
142+
path: |
143+
~/.gradle/caches
144+
~/.gradle/wrapper
145+
key: ${{ runner.os }}-gradle-${{ hashFiles('**/*.gradle*', '**/gradle-wrapper.properties') }}
146+
restore-keys: |
147+
${{ runner.os }}-gradle-
148+
# Install ci.ant
149+
- name: Install ci.ant
150+
working-directory: ${{github.workspace}}/ci.ant
151+
run: mvn -V clean install --batch-mode --no-transfer-progress --errors -DtrimStackTrace=false -DskipTests
152+
# Install ci.common
153+
- name: Install ci.common
154+
working-directory: ${{github.workspace}}/ci.common
155+
run: mvn -V clean install --batch-mode --no-transfer-progress --errors -DtrimStackTrace=false -DskipTests
156+
# Run tests
157+
- name: Run tests with Gradle on Windows
158+
working-directory: ${{github.workspace}}
159+
# LibertyTest is excluded because test0_run hangs
160+
run: ./gradlew clean install check -P"test.exclude"="${{env.TEST_EXCLUDE}}" -Druntime=${{ matrix.RUNTIME }} -DruntimeVersion="${{ matrix.RUNTIME_VERSION }}" --stacktrace --info --no-daemon
161+
timeout-minutes: 75
162+
# Copy build reports and upload artifact if build failed
163+
- name: Copy build/report/tests/test for upload
164+
if: ${{ failure() }}
165+
working-directory: ${{github.workspace}}
166+
run: cp -r build/reports/tests/test C:/buildReports/${{runner.os}}/java${{matrix.java}}/${{matrix.RUNTIME}}-${{matrix.RUNTIME_VERSION}}/
167+
- uses: actions/upload-artifact@v4
168+
if: ${{ failure() }}
169+
with:
170+
name: buildReportsArtifactWindows_${{matrix.java}}_${{matrix.RUNTIME}}_${{matrix.RUNTIME_VERSION}}
171+
path: C:/buildReports
172+
retention-days: 3

README.md

Lines changed: 7 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@ The Liberty Gradle plugin supports install and operational control of Liberty ru
44

55
* [Build](#build)
66
* [Usage](#usage)
7+
* [Compatibility / Support](#compatibility--support)
78
* [Plugin Configuration](#plugin-configuration)
89
* [Tasks](#tasks)
910
* [Extensions](#extensions)
@@ -35,15 +36,16 @@ To run DevContainerTests locally, you must have either Podman or Docker set up a
3536

3637
## Usage
3738

38-
### Gradle Support
39+
### Compatibility / Support
3940

40-
The Liberty Gradle Plugin supports running with Gradle 7.6+ and Gradle 8.x as of release 3.7. When using a Gradle wrapper, ensure the wrapper version matches the version of Gradle being used.
41+
For the full Java and Gradle version compatibility matrix, see the [Gradle Compatibility Matrix](https://docs.gradle.org/current/userguide/compatibility.html).
4142

42-
### Java Support
43+
- **Gradle 9.x** requires Java 17 or later and plugin version **3.9.4** or later.
44+
- **Gradle 7.6 / 8.x** works with Java 8, 11, 17, or 21 and plugin version **3.8.2** or later.
4345

44-
The Liberty Gradle Plugin is tested with Long-Term-Support (LTS) releases of Java. The plugin, as of release 3.8, supports Java 8, 11, 17 and 21. Versions 3.5 to 3.7.x support Java 8, 11 and 17. Prior to version 3.5, the plugin is supported on Java 8 and 11.
46+
The Liberty Gradle Plugin is tested with Long-Term-Support (LTS) releases of Java. The plugin, as of release 3.8, supports Java 8, 11, 17 and 21. As of release 4.0.0, we support Java 25 as well. Versions 3.5 to 3.7.x support Java 8, 11 and 17. Prior to version 3.5, the plugin is supported on Java 8 and 11. For running applications on older versions of Java, please check out our toolchain support.
4547

46-
Note: To use the Liberty Gradle Plugin with Java 21, a minimum of Gradle 8.4 is required. Since Gradle does not officially support Java 21 yet, there may be unknown issues. All of our automated tests are passing with Gradle 8.4 though.
48+
For Liberty Gradle Plugin-specific compatibility details, known limitations, and migration guidance, see the [Detailed Compatibility Matrix](docs/Gradle9MigrationGuide.md#detailed-compatibility-matrix) in the Migration Guide.
4749

4850
### Adding the plugin to the build script
4951

0 commit comments

Comments
 (0)