Skip to content

Newer Java versions #4994

Newer Java versions

Newer Java versions #4994

Workflow file for this run

name: Newer Java versions
on:
pull_request:
types: [labeled, opened, synchronize, reopened]
schedule:
# Run daily on week days
- cron: '0 4 * * 1-5'
workflow_dispatch:
# For the main branch: let all CI runs complete, one after the other. This has a couple advantages:
# * Site deployments happen in commit-order
# * Saved Gradle cache are persisted in commit-order
# * (Potentially) more GH runners available for PRs
concurrency:
# PRs: 1 CI run concurrently / older ones are cancelled
# main branch: 1 CI run concurrently / all commits / no cancellation
group: ${{ github.workflow }}-${{ github.event_name }}-${{ github.ref }}
cancel-in-progress: ${{ github.ref != 'refs/heads/main' }}
jobs:
java:
name: Exercise Java version
runs-on: ubuntu-22.04
timeout-minutes: 90
if: (github.repository == 'projectnessie/nessie' && github.event_name != 'pull_request') || contains(github.event.pull_request.labels.*.name, 'pr-newer-java')
strategy:
max-parallel: 1
matrix:
include:
- java-version: 21
env:
SPARK_LOCAL_IP: localhost
steps:
- uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29 # v4.1.6
- name: Setup runner
uses: ./.github/actions/setup-runner
with:
more-memory: 'true'
- name: Setup Java, Gradle
uses: ./.github/actions/dev-tool-java
with:
java-version: ${{ matrix.java-version }}
- name: Setup Gradle
uses: gradle/actions/setup-gradle@v3
env:
# Same as for ci.yml
GRADLE_BUILD_ACTION_CACHE_KEY_ENVIRONMENT: java-17
GRADLE_BUILD_ACTION_CACHE_KEY_JOB: nessie-ci
GRADLE_BUILD_ACTION_CACHE_KEY_JOB_INSTANCE: ci
with:
cache-read-only: true
- name: Gradle / compile
run: |
./gradlew \
spotlessCheck \
compileAll \
-x :nessie-quarkus:compileAll \
-x :nessie-server-admin-tool:compileAll \
-x :nessie-events-quarkus:compileAll \
--scan
- name: Gradle / Compile Quarkus
run: |
./gradlew \
:nessie-quarkus:compileAll \
:nessie-server-admin-tool:compileAll \
:nessie-events-quarkus:compileAll \
--scan
- name: Gradle / unit test
run: ./gradlew test --scan
- name: Gradle / check incl. integ-test
run: ./gradlew check --scan
- name: Gradle / assemble + publish local
run: ./gradlew assemble publishToMavenLocal --scan
- name: Gradle / build tools integration tests
run: ./gradlew buildToolsIntegrationTest
- name: Capture Test Reports
uses: actions/upload-artifact@v4
if: ${{ failure() }}
with:
name: test-results
path: |
**/build/reports/*
**/build/test-results/*
retention-days: 7