44 schedule :
55 - cron : ' 30 2 * * *'
66jobs :
7- linux-build-jvm-latest :
8- name : Linux JVM
9- runs-on : ubuntu-latest
10- strategy :
11- fail-fast : false
12- matrix :
13- java : [ 21 ]
14- profiles : [ "root-modules", "http-modules,security-modules,spring-modules", "hibernate-modules",
15- " sql-db-modules" , "root-modules -pl build/podman/,build/docker -Dtest-ubi8-compatibility",
16- " messaging-modules,websockets-modules,monitoring-modules,cache-modules,test-tooling-modules,nosql-db-modules" ]
17- steps :
18- - uses : actions/checkout@v5
19- - name : Reclaim Disk Space
20- run : .github/ci-prerequisites.sh
21- - name : Install JDK {{ matrix.java }}
22- uses : actions/setup-java@v5
23- with :
24- distribution : ' temurin'
25- java-version : ${{ matrix.java }}
26- check-latest : true
27- cache : ' maven'
28- - uses : ./.github/actions/prepare-quarkus-cli
29- - uses : ./.github/actions/use-docker-mirror
30- - name : Test in JVM mode
31- run : |
32- mvn -fae -V -B --no-transfer-progress -fae clean verify -P ${{ matrix.profiles }} -Dinclude.quarkus-cli-tests -Dts.quarkus.cli.cmd="${PWD}/quarkus-dev-cli"
33- - name : Zip Artifacts
34- if : failure()
35- run : |
36- zip -R artifacts-jvm${{ matrix.java }}.zip '*-reports/*'
37- - name : Archive artifacts
38- if : failure()
39- uses : actions/upload-artifact@v4
40- with :
41- name : artifacts-linux-jvm${{ matrix.java }}
42- path : artifacts-jvm${{ matrix.java }}.zip
43- linux-build-native-latest :
44- name : Linux Native
45- runs-on : ubuntu-latest
46- strategy :
47- fail-fast : false
48- matrix :
49- java : [ 17 ]
50- image : [ "ubi9-quarkus-mandrel-builder-image:jdk-21", "ubi-quarkus-mandrel-builder-image:jdk-21 -Dtest-ubi8-compatibility" ]
51- profiles : [ "root-modules,websockets-modules,test-tooling-modules,nosql-db-modules",
52- " http-modules,cache-modules" , "security-modules,spring-modules",
53- " hibernate-modules" , "sql-db-modules", "messaging-modules,monitoring-modules"]
54- steps :
55- - uses : actions/checkout@v5
56- - name : Reclaim Disk Space
57- run : .github/ci-prerequisites.sh
58- - name : Install JDK {{ matrix.java }}
59- uses : actions/setup-java@v5
60- with :
61- distribution : ' temurin'
62- java-version : ${{ matrix.java }}
63- check-latest : true
64- cache : ' maven'
65- - uses : ./.github/actions/prepare-quarkus-cli
66- - uses : ./.github/actions/use-docker-mirror
67- - name : Test in Native mode
68- run : |
69- mvn -fae -V -B --no-transfer-progress -P ${{ matrix.profiles }} -fae clean verify -Dnative \
70- -Dquarkus.native.builder-image=quay.io/quarkus/${{ matrix.image }} \
71- -Dinclude.quarkus-cli-tests -Dts.quarkus.cli.cmd="${PWD}/quarkus-dev-cli"
72- - name : Zip Artifacts
73- if : failure()
74- run : |
75- zip -R artifacts-native${{ matrix.java }}.zip '*-reports/*'
76- - name : Archive artifacts
77- if : failure()
78- uses : actions/upload-artifact@v4
79- with :
80- name : artifacts-linux-native${{ matrix.java }}
81- path : artifacts-native${{ matrix.java }}.zip
82- windows-build-jvm-latest :
83- name : Windows JVM
84- runs-on : windows-latest
85- strategy :
86- fail-fast : false
87- matrix :
88- java : [ 21 ]
89- steps :
90- - uses : actions/checkout@v5
91- - name : Install JDK {{ matrix.java }}
92- uses : actions/setup-java@v5
93- with :
94- distribution : ' temurin'
95- java-version : ${{ matrix.java }}
96- check-latest : true
97- - name : Set up Maven settings.xml
98- run : Copy-Item -Path ".github/quarkus-snapshots-mvn-settings.xml" -Destination "$env:USERPROFILE/.m2/settings.xml"
99- - name : Download Quarkus CLI
100- shell : bash
101- run : mvn -B --no-transfer-progress org.apache.maven.plugins:maven-dependency-plugin:get -Dartifact=io.quarkus:quarkus-cli:999-SNAPSHOT:jar:runner
102- - name : Install Quarkus CLI
103- run : |
104- $quarkusCliFileContent = @"
105- @ECHO OFF
106- java -jar %HOMEDRIVE%%HOMEPATH%\.m2\repository\io\quarkus\quarkus-cli\999-SNAPSHOT\quarkus-cli-999-SNAPSHOT-runner.jar %*
107- "@
108- New-Item -Path "$(pwd)\quarkus-dev-cli.bat" -ItemType File
109- Set-Content -Path "$(pwd)\quarkus-dev-cli.bat" -Value $quarkusCliFileContent
110- ./quarkus-dev-cli.bat version
111- - name : Build in JVM mode
112- shell : bash
113- run : |
114- # Need to set UTF-8 as otherwise the cp1252 is used on GH windows runner
115- # TODO revisit this with Windows 2025 when available or when we move testing to JDK 21+ only
116- export JAVA_TOOL_OPTIONS="-Dfile.encoding=UTF8"
117- mvn -B --no-transfer-progress -fae clean verify -D"all-modules" -D"include.quarkus-cli-tests" -D"ts.quarkus.cli.cmd=$(pwd)\quarkus-dev-cli.bat" -D"gh-action-disable-on-win"
118- - name : Zip Artifacts
119- shell : bash
120- if : failure()
121- run : |
122- # Disambiguate windows find from cygwin find
123- /usr/bin/find . -name '*-reports/*' -type d | tar -czf artifacts-latest-windows-jvm${{ matrix.java }}.tar -T -
124- - name : Archive artifacts
125- if : failure()
126- uses : actions/upload-artifact@v4
127- with :
128- name : artifacts-windows-jvm${{ matrix.java }}
129- path : artifacts-latest-windows-jvm${{ matrix.java }}.tar
130- windows-build-native-latest :
131- name : Windows Native
132- runs-on : windows-latest
133- strategy :
134- fail-fast : false
135- matrix :
136- java : [ 17 ]
137- graalvm-version : [ "mandrel-latest" ]
138- graalvm-java-version : [ "21" ]
139- steps :
140- - uses : actions/checkout@v5
141- - name : Install JDK {{ matrix.java }}
142- uses : actions/setup-java@v5
143- with :
144- distribution : ' temurin'
145- java-version : ${{ matrix.java }}
146- check-latest : true
147- cache : ' maven'
148- - name : Setup GraalVM
149- id : setup-graalvm
150- uses : graalvm/setup-graalvm@v1
151- with :
152- version : ${{ matrix.graalvm-version }}
153- java-version : ${{ matrix.graalvm-java-version }}
154- github-token : ${{ secrets.GITHUB_TOKEN }}
155- - name : Configure Pagefile
156- # Increased the page-file size due to memory-consumption of native-image command
157- # For details see https://github.com/actions/virtual-environments/issues/785
158- uses : al-cheb/configure-pagefile-action@v1.4
159- - name : Build in Native mode
160- shell : bash
161- run : |
162- # Running only http/http-minimum as after some time, it gives disk full in Windows when running on Native.
163- mvn -B --no-transfer-progress -fae -s .github/mvn-settings.xml clean verify -Dall-modules -Dnative -Dquarkus.native.container-build=false -pl http/http-minimum
164- - name : Zip Artifacts
165- shell : bash
166- if : failure()
167- run : |
168- # Disambiguate windows find from cygwin find
169- /usr/bin/find . -name '*-reports/*' -type d | tar -czf artifacts-latest-windows-native${{ matrix.java }}.tar -T -
170- - name : Archive artifacts
171- if : failure()
172- uses : actions/upload-artifact@v4
173- with :
174- name : artifacts-latest-windows-native${{ matrix.java }}
175- path : artifacts-latest-windows-native${{ matrix.java }}.tar
1767 aarch64-linux-build-jvm-latest :
1778 name : Linux AArch64 JVM
1789 runs-on : ubuntu-24.04-arm
20435 password : ${{ secrets.RED_HAT_REGISTRY_PASSWORD }}
20536 - name : Test in JVM mode
20637 run : |
207- mvn -fae -V -B --no-transfer-progress -fae clean verify -Daarch64 -P ${{ matrix.profiles }} -Dinclude.quarkus-cli-tests -Dts.quarkus.cli.cmd="${PWD}/quarkus-dev-cli"
38+ mvn -fae -V -B --no-transfer-progress -fae clean verify -Daarch64 -pl http/http-advanced -Dit.test=DevModeWorkspaceIT - P ${{ matrix.profiles }} -Dinclude.quarkus-cli-tests -Dts.quarkus.cli.cmd="${PWD}/quarkus-dev-cli"
20839 - name : Zip Artifacts
20940 if : failure()
21041 run : |
@@ -215,48 +46,3 @@ jobs:
21546 with :
21647 name : artifacts-linux-aarch64-jvm${{ matrix.java }}
21748 path : artifacts-linux-aarch64-jvm${{ matrix.java }}.zip
218- aarch64-linux-build-native-latest :
219- name : Linux AArch64 Native
220- runs-on : ubuntu-24.04-arm
221- strategy :
222- fail-fast : false
223- matrix :
224- java : [ 17 ]
225- image : [ "ubi9-quarkus-mandrel-builder-image:jdk-21", "ubi-quarkus-mandrel-builder-image:jdk-21 -Dtest-ubi8-compatibility" ]
226- profiles : [ "root-modules,websockets-modules,test-tooling-modules,nosql-db-modules",
227- " http-modules,cache-modules" , "security-modules,spring-modules",
228- " hibernate-modules" , "sql-db-modules", "messaging-modules,monitoring-modules"]
229- steps :
230- - uses : actions/checkout@v5
231- - name : Reclaim Disk Space
232- run : .github/ci-prerequisites.sh
233- - name : Install JDK {{ matrix.java }}
234- uses : actions/setup-java@v5
235- with :
236- distribution : ' temurin'
237- java-version : ${{ matrix.java }}
238- check-latest : true
239- cache : ' maven'
240- - uses : ./.github/actions/prepare-quarkus-cli
241- - uses : ./.github/actions/use-docker-mirror
242- - name : Login to Red Hat registry
243- uses : docker/login-action@v3
244- with :
245- registry : registry.redhat.io
246- username : ${{ secrets.RED_HAT_REGISTRY_USERNAME }}
247- password : ${{ secrets.RED_HAT_REGISTRY_PASSWORD }}
248- - name : Test in Native mode
249- run : |
250- mvn -fae -V -B --no-transfer-progress -P ${{ matrix.profiles }} -fae clean verify -Daarch64 -Dnative \
251- -Dquarkus.native.builder-image=quay.io/quarkus/${{ matrix.image }} \
252- -Dinclude.quarkus-cli-tests -Dts.quarkus.cli.cmd="${PWD}/quarkus-dev-cli"
253- - name : Zip Artifacts
254- if : failure()
255- run : |
256- zip -R artifacts-linux-aarch64-native${{ matrix.java }}.zip '*-reports/*'
257- - name : Archive artifacts
258- if : failure()
259- uses : actions/upload-artifact@v4
260- with :
261- name : artifacts-linux-aarch64-native${{ matrix.java }}
262- path : artifacts-linux-aarch64-native${{ matrix.java }}.zip
0 commit comments