name: build on: [pull_request, push] jobs: build: strategy: matrix: java: [21] os: [ubuntu-22.04] runs-on: ${{ matrix.os }} steps: - name: checkout repository uses: actions/checkout@v4 - name: validate gradle wrapper uses: gradle/wrapper-validation-action@v1 - name: Grant execute permission for gradlew run: chmod +x gradlew - name: setup jdk ${{ matrix.java }} uses: actions/setup-java@v3 with: java-version: ${{ matrix.java }} distribution: 'microsoft' - name: build run: ./gradlew build - name: capture build artifacts if: ${{ runner.os == 'Linux' && matrix.java == '21' }} # Only upload artifacts built from latest java on one OS uses: actions/upload-artifact@v3 with: name: Artifacts path: build/libs/