Skip to content
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
71 changes: 60 additions & 11 deletions .github/workflows/merge.yml
Original file line number Diff line number Diff line change
Expand Up @@ -9,15 +9,13 @@ on:
- main

jobs:
build-and-test:
name: Build and Test (Java ${{ matrix.java-version }})
build:
name: Build (Java ${{ matrix.java-version }})
runs-on: ubuntu-latest

strategy:
matrix:
java-version: [17, 21, 25]
fail-fast: false

steps:
- name: Checkout code
uses: actions/checkout@v4
Expand All @@ -35,22 +33,73 @@ jobs:
- name: Build (excluding tests)
run: ./gradlew build -x test

- name: Upload build reports
if: failure()
uses: actions/upload-artifact@v4
with:
name: build-reports-java-${{ matrix.java-version }}
path: build/reports/

test:
name: Test (Java ${{ matrix.java-version }})
runs-on: ubuntu-latest
needs: build
strategy:
matrix:
java-version: [17, 21, 25]
fail-fast: false
steps:
- name: Checkout code
uses: actions/checkout@v4

- name: Set up JDK ${{ matrix.java-version }}
uses: actions/setup-java@v4
with:
java-version: ${{ matrix.java-version }}
distribution: 'temurin'
cache: 'gradle'

- name: Grant execute permission for gradlew
run: chmod +x gradlew

- name: Run tests
run: ./gradlew test

- name: Generate Javadoc
run: ./gradlew javadoc

- name: Upload test results
if: always()
uses: actions/upload-artifact@v4
with:
name: test-results-java-${{ matrix.java-version }}
path: build/reports/tests/test/

javadoc:
name: Javadoc (Java ${{ matrix.java-version }})
runs-on: ubuntu-latest
needs: test
strategy:
matrix:
java-version: [17, 21, 25]
fail-fast: false
steps:
- name: Checkout code
uses: actions/checkout@v4

- name: Upload build reports
if: failure()
- name: Set up JDK ${{ matrix.java-version }}
uses: actions/setup-java@v4
with:
java-version: ${{ matrix.java-version }}
distribution: 'temurin'
cache: 'gradle'

- name: Grant execute permission for gradlew
run: chmod +x gradlew

- name: Generate Javadoc
run: ./gradlew javadoc

- name: Upload Javadoc
if: always()
uses: actions/upload-artifact@v4
with:
name: build-reports-java-${{ matrix.java-version }}
path: build/reports/
name: javadoc-java-${{ matrix.java-version }}
path: build/docs/javadoc/
Loading