Merge pull request #928 from modcluster/dependabot/maven/container/to… #1061
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| name: CI | |
| on: | |
| push: | |
| branches: | |
| - '*' | |
| pull_request: | |
| branches: | |
| - '*' | |
| jobs: | |
| ci: | |
| runs-on: ${{ matrix.os }} | |
| strategy: | |
| matrix: | |
| os: | |
| - macos-14 | |
| - ubuntu-latest | |
| - windows-latest | |
| # Keep this list as: all supported LTS JDKs, the latest GA JDK, and optionally the latest EA JDK (if available). | |
| # Reference: https://adoptium.net/support/ | |
| java: | |
| - 17 | |
| - 21 | |
| - 24 | |
| - 25 | |
| steps: | |
| - name: Checkout | |
| uses: actions/checkout@v5 | |
| - name: Set up JDK ${{ matrix.java }} | |
| uses: actions/setup-java@v5 | |
| with: | |
| distribution: temurin | |
| java-version: ${{ matrix.java }} | |
| cache: maven | |
| - name: Build with Maven | |
| # To support Windows PowerShell, a space between --define property=true is required. | |
| # n.b. bytebuddy experimental features must be enabled on early access JDKs. | |
| run: ./mvnw --batch-mode --no-transfer-progress clean verify | |
| # Code Coverage (runs once per matrix) | |
| - name: Build with coverage with Maven using JDK ${{ matrix.java }} | |
| if: ${{ matrix.java == '17' && matrix.os == 'ubuntu-latest' }} | |
| run: ./mvnw --batch-mode --no-transfer-progress --activate-profiles=coverage verify | |
| - name: Upload JaCoCo report | |
| if: ${{ matrix.java == '17' && matrix.os == 'ubuntu-latest' }} | |
| uses: actions/upload-artifact@v4 | |
| with: | |
| name: jacoco | |
| path: code-coverage/target/site/jacoco-aggregate/ | |
| # Aggregate Javadoc (runs once per matrix) | |
| - name: Build aggregate Javadoc with Maven using JDK ${{ matrix.java }} | |
| if: ${{ matrix.java == '17' && matrix.os == 'ubuntu-latest' }} | |
| run: ./mvnw --batch-mode --no-transfer-progress --define skipTests=true verify javadoc:aggregate | |
| - name: Upload aggregate Javadoc | |
| if: ${{ matrix.java == '17' && matrix.os == 'ubuntu-latest' }} | |
| uses: actions/upload-artifact@v4 | |
| with: | |
| name: apidocs | |
| path: target/reports/apidocs/ | |
| if-no-files-found: error |