Skip to content

Daily Build

Daily Build #974

Workflow file for this run

name: "Daily Build"
on:
workflow_dispatch:
schedule:
- cron: '20 1 * * *'
jobs:
linux-build-jvm-latest:
name: Linux JVM
runs-on: ubuntu-latest
strategy:
matrix:
quarkus-version: ["999-SNAPSHOT"]
java: [ 21, 25 ]
steps:
- uses: actions/checkout@v6
- name: Reclaim Disk Space
run: .github/ci-prerequisites.sh
- name: Install JDK ${{ matrix.java }}
uses: actions/setup-java@v5
id: install-jdk
with:
distribution: 'temurin'
java-version: ${{ matrix.java }}
check-latest: true
- uses: ./.github/actions/cache-quarkus
- uses: ./.github/actions/prepare-quarkus-cli
- uses: ./.github/actions/use-docker-mirror
- name: Build
run: |
mvn -B --no-transfer-progress -fae clean install -Pframework,examples,coverage -Dvalidate-format -Drun-cli-tests -Dts.quarkus.cli.cmd="${PWD}/quarkus-dev-cli" -Dquarkus.platform.version="${{ matrix.quarkus-version }}"
- name: Zip Artifacts
if: failure()
run: |
zip -R artifacts-latest-linux-jvm${{ matrix.java }}.zip '*-reports/*'
- name: Archive artifacts
if: failure()
uses: actions/upload-artifact@v7
with:
name: artifacts-latest-linux-jvm${{ matrix.java }}
path: artifacts-latest-linux-jvm${{ matrix.java }}.zip
linux-build-native:
name: Linux Native
runs-on: ubuntu-latest
strategy:
matrix:
quarkus-version: ["999-SNAPSHOT"]
java: [ 25 ]
steps:
- uses: actions/checkout@v6
- name: Reclaim Disk Space
run: .github/ci-prerequisites.sh
- name: Install JDK ${{ matrix.java }}
uses: actions/setup-java@v5
with:
distribution: 'temurin'
java-version: ${{ matrix.java }}
check-latest: true
- uses: ./.github/actions/cache-quarkus
- uses: ./.github/actions/use-docker-mirror
- name: Build
run: |
mvn -B --no-transfer-progress -fae -s .github/mvn-settings.xml clean install -Pframework,examples,native -Dquarkus.platform.version="${{ matrix.quarkus-version }}"
- name: Zip Artifacts
if: failure()
run: |
zip -R artifacts-native-${{ matrix.quarkus-version }}-${{ matrix.java }}.zip '*-reports/*'
- name: Archive artifacts
if: failure()
uses: actions/upload-artifact@v7
with:
name: artifacts-native-${{ matrix.quarkus-version }}-${{ matrix.java }}
path: artifacts-native-${{ matrix.quarkus-version }}-${{ matrix.java }}.zip
kubernetes-build-jvm-latest:
name: Kubernetes JVM
runs-on: ubuntu-latest
strategy:
matrix:
include:
- quarkus-version: "999-SNAPSHOT"
java: 21
extra-maven-args: ''
- quarkus-version: "999-SNAPSHOT"
java: 17 # test 'quarkus-container-image-jib' with images based on UBI8 and Java 17
extra-maven-args: '-pl examples/pingpong/ -Dtest-ubi8-compatibility -Dquarkus.jib.base-jvm-image=registry.access.redhat.com/ubi8/openjdk-17-runtime:latest'
- quarkus-version: "999-SNAPSHOT"
java: 21 # test 'quarkus-container-image-jib' with images based on UBI8 and Java 21
extra-maven-args: '-pl examples/pingpong/ -Dtest-ubi8-compatibility -Dquarkus.jib.base-jvm-image=registry.access.redhat.com/ubi8/openjdk-21-runtime:latest'
steps:
- uses: actions/checkout@v6
- name: Reclaim Disk Space
run: .github/ci-prerequisites.sh
- name: Install JDK ${{ matrix.java }}
uses: actions/setup-java@v5
with:
distribution: 'temurin'
java-version: ${{ matrix.java }}
check-latest: true
- uses: ./.github/actions/cache-quarkus
- name: Set up Minikube-Kubernetes
uses: manusa/actions-setup-minikube@v2.15.0
with:
minikube version: 'v1.38.0'
kubernetes version: 'v1.34.4'
github token: ${{ secrets.GITHUB_TOKEN }}
- name: Login to Docker Registry
uses: docker/login-action@v3
with:
registry: quay.io
username: ${{ secrets.CI_REGISTRY_USERNAME }}
password: ${{ secrets.CI_REGISTRY_PASSWORD }}
- name: Build
run: |
mvn -B --no-transfer-progress -fae -s .github/mvn-settings.xml clean install -Pframework,examples,kubernetes -Dquarkus.platform.version="${{ matrix.quarkus-version }}" -Dts.global.container.registry-url=${{ secrets.CI_REGISTRY }} ${{ matrix.extra-maven-args }}
- name: Zip Artifacts
if: failure()
run: |
zip -R artifacts-k8s-jvm-${{ matrix.quarkus-version }}-${{ matrix.java }}.zip '*-reports/*'
- name: Archive artifacts
if: failure()
uses: actions/upload-artifact@v7
with:
name: artifacts-k8s-jvm-${{ matrix.quarkus-version }}-${{ matrix.java }}
path: artifacts-k8s-jvm-${{ matrix.quarkus-version }}-${{ matrix.java }}.zip
kubernetes-build-native-latest:
name: Kubernetes Native
runs-on: ubuntu-latest
strategy:
matrix:
quarkus-version: ["999-SNAPSHOT"]
java: [21]
steps:
- uses: actions/checkout@v6
- name: Reclaim Disk Space
run: .github/ci-prerequisites.sh
- name: Install JDK ${{ matrix.java }}
uses: actions/setup-java@v5
with:
distribution: 'temurin'
java-version: ${{ matrix.java }}
check-latest: true
- uses: ./.github/actions/cache-quarkus
- name: Set up Minikube-Kubernetes
uses: manusa/actions-setup-minikube@v2.15.0
with:
minikube version: 'v1.38.0'
kubernetes version: 'v1.34.4'
github token: ${{ secrets.GITHUB_TOKEN }}
- name: Login to Docker Registry
uses: docker/login-action@v3
with:
registry: quay.io
username: ${{ secrets.CI_REGISTRY_USERNAME }}
password: ${{ secrets.CI_REGISTRY_PASSWORD }}
- name: Build
run: |
mvn -B --no-transfer-progress -fae -s .github/mvn-settings.xml clean install -Pframework,examples,native,kubernetes -Dquarkus.platform.version="${{ matrix.quarkus-version }}" -Dts.global.container.registry-url=${{ secrets.CI_REGISTRY }}
- name: Zip Artifacts
if: failure()
run: |
zip -R artifacts-k8s-native-${{ matrix.quarkus-version }}-${{ matrix.java }}.zip '*-reports/*'
- name: Archive artifacts
if: failure()
uses: actions/upload-artifact@v7
with:
name: artifacts-k8s-native-${{ matrix.quarkus-version }}-${{ matrix.java }}
path: artifacts-k8s-native-${{ matrix.quarkus-version }}-${{ matrix.java }}.zip
windows-build-jvm-latest:
name: Windows JVM
runs-on: windows-latest
strategy:
matrix:
java: [ 21, 25 ]
quarkus-version: ["999-SNAPSHOT"]
steps:
- uses: actions/checkout@v6
- name: Install JDK ${{ matrix.java }}
uses: actions/setup-java@v5
with:
distribution: 'temurin'
java-version: ${{ matrix.java }}
check-latest: true
- uses: ./.github/actions/cache-quarkus
- name: Build in JVM mode
shell: bash
run: |
mvn -B --no-transfer-progress -fae -s .github/mvn-settings.xml clean install -Pframework,examples -Dquarkus.platform.version="${{ matrix.quarkus-version }}"
- name: Zip Artifacts
shell: bash
if: failure()
run: |
# Disambiguate windows find from cygwin find
/usr/bin/find . -name '*-reports/*' -type d | tar -czf artifacts-latest-windows-jvm${{ matrix.java }}.tar -T -
- name: Archive artifacts
if: failure()
uses: actions/upload-artifact@v7
with:
name: artifacts-latest-windows-jvm${{ matrix.java }}
path: artifacts-latest-windows-jvm${{ matrix.java }}.tar
windows-build-native-latest:
name: Windows Native
runs-on: windows-latest
strategy:
matrix:
java: [ 21 ]
quarkus-version: ["999-SNAPSHOT"]
graalvm-version: ["mandrel-latest"]
graalvm-java: ["21"]
steps:
- uses: actions/checkout@v6
- name: Install JDK ${{ matrix.java }}
uses: actions/setup-java@v5
with:
distribution: 'temurin'
java-version: ${{ matrix.java }}
check-latest: true
- uses: ./.github/actions/cache-quarkus
- name: Download Sysinternals Handle program used for native race debugging
shell: pwsh
run: Invoke-WebRequest https://download.sysinternals.com/files/Handle.zip -OutFile .\handle.zip
- name: Unzip Sysinternals Handle
shell: pwsh
run: Expand-Archive .\handle.zip -DestinationPath .
- name: Install cl.exe
uses: ilammy/msvc-dev-cmd@v1
- uses: microsoft/setup-msbuild@v2
- name: Setup GraalVM
id: setup-graalvm
uses: graalvm/setup-graalvm@v1
with:
version: ${{ matrix.graalvm-version }}
distribution: mandrel
java-version: ${{ matrix.graalvm-java }}
github-token: ${{ secrets.GITHUB_TOKEN }}
- name: Configure Pagefile
# Increased the page-file size due to memory-consumption of native-image command
# For details see https://github.com/actions/virtual-environments/issues/785
uses: al-cheb/configure-pagefile-action@v1.5
- name: Build in Native mode
shell: bash
run: |
mvn -B --no-transfer-progress -fae -s .github/mvn-settings.xml clean install -Pframework,examples,native -Dquarkus.native.container-build=false -Dquarkus.platform.version="${{ matrix.quarkus-version }}"
- name: Zip Artifacts
shell: bash
if: failure()
run: |
# Disambiguate windows find from cygwin find
/usr/bin/find . -name '*-reports/*' -type d | tar -czf artifacts-latest-windows-native${{ matrix.java }}.tar -T -
- name: Archive artifacts
if: failure()
uses: actions/upload-artifact@v7
with:
name: artifacts-latest-windows-native${{ matrix.java }}
path: artifacts-latest-windows-native${{ matrix.java }}.tar