@@ -17,110 +17,239 @@ jobs:
1717# UNIX BUILDS
1818 build-unix :
1919 runs-on : ubuntu-latest
20+ timeout-minutes : 130
2021 strategy :
2122 fail-fast : false
2223 matrix :
2324 # test against latest update of each major Java version, as well as specific updates of LTS versions:
2425 RUNTIME : [ol, wlp]
25- RUNTIME_VERSION : [25.0.0.3 ]
26- java : [21, 17, 11, 8]
26+ RUNTIME_VERSION : [25.0.0.9,25.0.0.10 ]
27+ java : [25, 21, 17, 11, 8]
2728 exclude :
28- - java : 8
29- RUNTIME : wlp
30- - java : 11
31- RUNTIME : ol
29+ - java : 8
30+ RUNTIME : wlp
31+ - java : 17
32+ RUNTIME : wlp
33+ - java : 11
34+ RUNTIME : ol
35+ - java : 21
36+ RUNTIME : ol
37+ - RUNTIME_VERSION : 25.0.0.9
38+ java : 25
39+ - RUNTIME_VERSION : 25.0.0.10
40+ java : 21
41+ - RUNTIME_VERSION : 25.0.0.10
42+ java : 17
43+ - RUNTIME_VERSION : 25.0.0.10
44+ java : 11
45+ - RUNTIME_VERSION : 25.0.0.10
46+ java : 8
3247 name : ${{ matrix.RUNTIME }} ${{ matrix.RUNTIME_VERSION }}, Java ${{ matrix.java }}, Linux
3348 steps :
34- # Checkout repos
35- - name : Checkout ci.maven
36- uses : actions/checkout@v3
37- - name : Setup Java ${{ matrix.java }}
38- uses : actions/setup-java@v3
39- with :
40- distribution : ' temurin'
41- java-version : ${{ matrix.java }}
42- cache : ' maven'
43- - name : Free disk space ubuntu
44- uses : jlumbroso/free-disk-space@main
45- with :
46- tool-cache : false
47- large-packages : false
48- - name : Checkout ci.common
49- uses : actions/checkout@v3
50- with :
51- repository : OpenLiberty/ci.common
52- path : ci.common
53- - name : Checkout ci.ant
54- uses : actions/checkout@v3
55- with :
56- repository : OpenLiberty/ci.ant
57- path : ci.ant
58- - name : Set up Maven
59- uses : stCarolas/setup-maven@v4.5
60- with :
61- maven-version : 3.9.9
62- # Install dependencies
63- - name : Install ci.ant and ci.common
64- run : |
65- ./mvnw -V clean install -f ci.ant --batch-mode --no-transfer-progress --errors -DtrimStackTrace=false -DskipTests
66- ./mvnw -V clean install -f ci.common --batch-mode --no-transfer-progress --errors -DtrimStackTrace=false -DskipTests
67- # Run tests that require a minimum of Java 17 or later
68- - name : Run tests that require a minimum of Java 17 or later
69- if : ${{ matrix.java == '17' || matrix.java == '21'}}
70- run : ./mvnw -V verify --batch-mode --no-transfer-progress --errors -DtrimStackTrace=false -Ponline-its -D"invoker.streamLogsOnFailures"=true -D"invoker.test"="*setup*,*springboot-3-*,*compile-jsp-source-17-*" -Druntime=${{ matrix.RUNTIME }} -DruntimeVersion="${{ matrix.RUNTIME_VERSION }}"
71- # Run tests
72- - name : Run tests
73- run : ./mvnw -V verify --batch-mode --no-transfer-progress --errors -DtrimStackTrace=false -Ponline-its -D"invoker.streamLogsOnFailures"=true -Druntime=${{ matrix.RUNTIME }} -DruntimeVersion="${{ matrix.RUNTIME_VERSION }}"
49+ # Checkout repos
50+ - name : Checkout ci.maven
51+ uses : actions/checkout@v3
52+ - name : Pre-install JDK 8 (If Not Matrix Version)
53+ if : ${{ matrix.java != '8' }}
54+ uses : actions/setup-java@v4
55+ with :
56+ java-version : ' 8'
57+ distribution : ' temurin'
58+ - name : Pre-install JDK 11 (If Not Matrix Version)
59+ if : ${{ matrix.java != '11' }}
60+ uses : actions/setup-java@v4
61+ with :
62+ java-version : ' 11'
63+ distribution : ' temurin'
64+ - name : Pre-install JDK 17 (If Not Matrix Version)
65+ if : ${{ matrix.java != '17' }}
66+ uses : actions/setup-java@v4
67+ with :
68+ java-version : ' 17'
69+ distribution : ' temurin'
70+ - name : Pre-install JDK 21 (If Not Matrix Version)
71+ if : ${{ matrix.java != '21' }}
72+ uses : actions/setup-java@v4
73+ with :
74+ java-version : ' 21'
75+ distribution : ' temurin'
76+ - name : Pre-install JDK 25 (If Not Matrix Version)
77+ if : ${{ matrix.java != '25' }}
78+ uses : actions/setup-java@v4
79+ with :
80+ java-version : ' 25'
81+ distribution : ' temurin'
82+ - name : Setup Java ${{ matrix.java }}
83+ uses : actions/setup-java@v4
84+ with :
85+ distribution : ' temurin'
86+ java-version : ${{ matrix.java }}
87+ cache : ' maven'
88+ - name : Verify JAVA_HOME and Installed JDKs
89+ run : |
90+ echo "Primary JAVA_HOME is set to: $JAVA_HOME"
91+ java -version
92+ - name : Free disk space ubuntu
93+ uses : jlumbroso/free-disk-space@main
94+ with :
95+ tool-cache : false
96+ large-packages : false
97+ - name : Verify ~/.m2/toolchains.xml content
98+ run : |
99+ echo "Checking for toolchains.xml in: $HOME/.m2/"
100+ ls -l $HOME/.m2/toolchains.xml 2> /dev/null || echo "File does not exist or permission denied."
101+ echo "--- toolchains.xml content ---"
102+ if [ -f $HOME/.m2/toolchains.xml ]; then
103+ cat $HOME/.m2/toolchains.xml
104+ else
105+ echo "Cannot display content: $HOME/.m2/toolchains.xml not found."
106+ fi
107+ echo "----------------------------"
108+ - name : Checkout ci.common
109+ uses : actions/checkout@v3
110+ with :
111+ repository : OpenLiberty/ci.common
112+ path : ci.common
113+ - name : Checkout ci.ant
114+ uses : actions/checkout@v3
115+ with :
116+ repository : OpenLiberty/ci.ant
117+ path : ci.ant
118+ - name : Set up Maven
119+ uses : stCarolas/setup-maven@v4.5
120+ with :
121+ maven-version : 3.9.9
122+ # Install dependencies
123+ - name : Install ci.ant and ci.common
124+ timeout-minutes : 15
125+ run : |
126+ ./mvnw -V clean install -f ci.ant --batch-mode --no-transfer-progress --errors -DtrimStackTrace=false -DskipTests
127+ ./mvnw -V clean install -f ci.common --batch-mode --no-transfer-progress --errors -DtrimStackTrace=false -DskipTests
128+ # Run tests that require a minimum of Java 17 or later
129+ - name : Run tests that require a minimum of Java 17 or later
130+ if : ${{ matrix.java != '8' && matrix.java != '11'}}
131+ timeout-minutes : 20
132+ run : ./mvnw -V verify --batch-mode --no-transfer-progress --errors -DtrimStackTrace=false -Ponline-its -D"invoker.streamLogsOnFailures"=true -D"invoker.test"="*setup*,*springboot-3-*,*compile-jsp-source-17-*,*toolchain-java-warning-jvmoption*" -Druntime=${{ matrix.RUNTIME }} -DruntimeVersion="${{ matrix.RUNTIME_VERSION }}"
133+ # Run tests
134+ - name : Run tests
135+ timeout-minutes : 90
136+ run : ./mvnw -V verify --batch-mode --no-transfer-progress --errors -DtrimStackTrace=false -Ponline-its -D"invoker.streamLogsOnFailures"=true -Druntime=${{ matrix.RUNTIME }} -DruntimeVersion="${{ matrix.RUNTIME_VERSION }}"
74137
75138# WINDOWS BUILD
76139 build-windows :
77140 runs-on : windows-latest
141+ timeout-minutes : 170
78142 strategy :
79143 fail-fast : false
80144 matrix :
81145 # test against latest update of each major Java version, as well as specific updates of LTS versions:
82146 RUNTIME : [ol, wlp]
83- RUNTIME_VERSION : [25.0.0.3 ]
84- java : [21, 17, 11, 8]
147+ RUNTIME_VERSION : [ 25.0.0.9,25.0.0.10 ]
148+ java : [ 25, 21, 17, 11, 8 ]
85149 exclude :
86- - java : 8
87- RUNTIME : ol
88- - java : 11
89- RUNTIME : wlp
150+ - java : 8
151+ RUNTIME : wlp
152+ - java : 17
153+ RUNTIME : wlp
154+ - java : 11
155+ RUNTIME : ol
156+ - java : 21
157+ RUNTIME : ol
158+ - RUNTIME_VERSION : 25.0.0.9
159+ java : 25
160+ - RUNTIME_VERSION : 25.0.0.10
161+ java : 21
162+ - RUNTIME_VERSION : 25.0.0.10
163+ java : 17
164+ - RUNTIME_VERSION : 25.0.0.10
165+ java : 11
166+ - RUNTIME_VERSION : 25.0.0.10
167+ java : 8
90168 name : ${{ matrix.RUNTIME }} ${{ matrix.RUNTIME_VERSION }}, Java ${{ matrix.java }}, Windows
91169 steps :
92- # Checkout repos
93- - name : Checkout ci.maven
94- uses : actions/checkout@v3
95- - name : Setup Java ${{ matrix.java }}
96- uses : actions/setup-java@v3
97- with :
98- distribution : ' temurin'
99- java-version : ${{ matrix.java }}
100- cache : ' maven'
101- # Move and cloning to C: drive for Windows for more disk space
102- - name : Clone ci.ant, ci.common, ci.maven repos to C drive
103- run : |
104- cp -r D:/a/ci.maven/ci.maven C:/ci.maven
105- git clone https://github.com/OpenLiberty/ci.common.git C:/ci.common
106- git clone https://github.com/OpenLiberty/ci.ant.git C:/ci.ant
107- - name : Set up Maven
108- uses : stCarolas/setup-maven@v4.5
109- with :
110- maven-version : 3.9.9
111- # Install ci.ant
112- - name : Install ci.ant
113- working-directory : C:/ci.ant
114- run : .\mvnw.cmd -V clean install --batch-mode --no-transfer-progress --errors -DtrimStackTrace=false -DskipTests
115- # Install ci.common
116- - name : Install ci.common
117- working-directory : C:/ci.common
118- run : .\mvnw.cmd -V clean install --batch-mode --no-transfer-progress --errors -DtrimStackTrace=false -DskipTests
119- # Run tests that require a minimum of Java 17 or later
120- - name : Run tests that require a minimum of Java 17 or later
121- if : ${{ matrix.java == '17' || matrix.java == '21'}}
122- run : .\mvnw.cmd -V verify -Ponline-its --batch-mode --no-transfer-progress --errors -DtrimStackTrace=false -D"invoker.streamLogsOnFailures"=true -D"invoker.test"="*setup*,*springboot-3-*,*compile-jsp-source-17-*" -Druntime=${{ matrix.RUNTIME }} -DruntimeVersion="${{ matrix.RUNTIME_VERSION }}"
123- # Run tests
124- - name : Run tests
125- working-directory : C:/ci.maven
126- run : .\mvnw.cmd -V verify -Ponline-its --batch-mode --no-transfer-progress --errors -DtrimStackTrace=false -D"invoker.streamLogsOnFailures"=true -Druntime=${{ matrix.RUNTIME }} -DruntimeVersion="${{ matrix.RUNTIME_VERSION }}"
170+ # Checkout repos
171+ - name : Checkout ci.maven
172+ uses : actions/checkout@v3
173+ - name : Pre-install JDK 8 (If Not Matrix Version)
174+ if : ${{ matrix.java != '8' }}
175+ uses : actions/setup-java@v4
176+ with :
177+ java-version : ' 8'
178+ distribution : ' temurin'
179+ - name : Pre-install JDK 11 (If Not Matrix Version)
180+ if : ${{ matrix.java != '11' }}
181+ uses : actions/setup-java@v4
182+ with :
183+ java-version : ' 11'
184+ distribution : ' temurin'
185+ - name : Pre-install JDK 17 (If Not Matrix Version)
186+ if : ${{ matrix.java != '17' }}
187+ uses : actions/setup-java@v4
188+ with :
189+ java-version : ' 17'
190+ distribution : ' temurin'
191+ - name : Pre-install JDK 21 (If Not Matrix Version)
192+ if : ${{ matrix.java != '21' }}
193+ uses : actions/setup-java@v4
194+ with :
195+ java-version : ' 21'
196+ distribution : ' temurin'
197+ - name : Pre-install JDK 25 (If Not Matrix Version)
198+ if : ${{ matrix.java != '25' }}
199+ uses : actions/setup-java@v4
200+ with :
201+ java-version : ' 25'
202+ distribution : ' temurin'
203+ - name : Setup Java ${{ matrix.java }}
204+ uses : actions/setup-java@v4
205+ with :
206+ distribution : ' temurin'
207+ java-version : ${{ matrix.java }}
208+ cache : ' maven'
209+ - name : Verify JAVA_HOME and Installed JDKs
210+ run : |
211+ echo "Primary JAVA_HOME is set to: $JAVA_HOME"
212+ java -version
213+ - name : Verify ~/.m2/toolchains.xml content
214+ shell : bash
215+ run : |
216+ echo "Checking for toolchains.xml in: $HOME/.m2/"
217+ ls -l $HOME/.m2/toolchains.xml 2> /dev/null || echo "File does not exist or permission denied."
218+ echo "--- toolchains.xml content ---"
219+ if [ -f $HOME/.m2/toolchains.xml ]; then
220+ cat $HOME/.m2/toolchains.xml
221+ else
222+ echo "Cannot display content: $HOME/.m2/toolchains.xml not found."
223+ fi
224+ echo "----------------------------"
225+ # Clone to same github workspace used for ci.maven checkout
226+ - name : Clone ci.ant and ci.common repos to github.workspace
227+ run : |
228+ echo ${{github.workspace}}
229+ git clone https://github.com/OpenLiberty/ci.common.git ${{github.workspace}}/ci.common
230+ git clone https://github.com/OpenLiberty/ci.ant.git ${{github.workspace}}/ci.ant
231+ - name : Set up Maven
232+ uses : stCarolas/setup-maven@v4.5
233+ with :
234+ maven-version : 3.9.9
235+ # Install ci.ant
236+ - name : Install ci.ant
237+ working-directory : ${{github.workspace}}/ci.ant
238+ timeout-minutes : 15
239+ run : .\mvnw.cmd -V clean install --batch-mode --no-transfer-progress --errors -DtrimStackTrace=false -DskipTests
240+ # Install ci.common
241+ - name : Install ci.common
242+ working-directory : ${{github.workspace}}/ci.common
243+ timeout-minutes : 15
244+ run : .\mvnw.cmd -V clean install --batch-mode --no-transfer-progress --errors -DtrimStackTrace=false -DskipTests
245+ # Run tests that require a minimum of Java 17 or later
246+ - name : Run tests that require a minimum of Java 17 or later
247+ working-directory : ${{github.workspace}}
248+ if : ${{ matrix.java != '8' && matrix.java != '11'}}
249+ timeout-minutes : 45
250+ run : .\mvnw.cmd -V verify -Ponline-its --batch-mode --no-transfer-progress --errors -DtrimStackTrace=false -D"invoker.streamLogsOnFailures"=true -D"invoker.test"="*setup*,*springboot-3-*,*compile-jsp-source-17-*,*toolchain-java-warning-jvmoption*" -Druntime=${{ matrix.RUNTIME }} -DruntimeVersion="${{ matrix.RUNTIME_VERSION }}"
251+ # Run tests
252+ - name : Run tests
253+ working-directory : ${{github.workspace}}
254+ timeout-minutes : 90
255+ run : .\mvnw.cmd -V verify -Ponline-its --batch-mode --no-transfer-progress --errors -DtrimStackTrace=false -D"invoker.streamLogsOnFailures"=true -Druntime=${{ matrix.RUNTIME }} -DruntimeVersion="${{ matrix.RUNTIME_VERSION }}"
0 commit comments