name: PR on: pull_request: branches: [ master, main ] permissions: contents: read jobs: build: strategy: matrix: os: [ubuntu-latest] build: - java: 17 profile: codequality - java: 8 profile: java8 name: with Java ${{ matrix.build.java }} runs-on: ${{ matrix.os}} steps: - name: Check out the code uses: actions/checkout@85e6279cec87321a52edac9c87bce653a07cf6c2 - name: Set up JDK 8 uses: actions/setup-java@3a4f6e1af504cf6a31855fa899c6aa5355ba6c12 with: java-version: ${{ matrix.build.java }} distribution: 'temurin' cache: maven - name: Initialize CodeQL uses: github/codeql-action/init@a8849fbe6341625acb2e18f7f32e53b734d6e1e3 with: languages: java - name: Cache local Maven repository uses: actions/cache@7921ae235bdcb376cc8f22558dc5f8ddc3c3c2f9 with: path: ~/.m2/repository key: ${{ runner.os }}${{ matrix.build.java }}-maven-${{ hashFiles('**/pom.xml') }} restore-keys: | ${{ runner.os }}${{ matrix.build.java }}-maven- - name: Verify with Maven run: mvn --batch-mode --update-snapshots --activate-profiles e2e,${{ matrix.build.profile }} verify - if: matrix.build.java == '17' name: Upload coverage to Codecov uses: codecov/codecov-action@v5.3.1 with: token: ${{ secrets.CODECOV_TOKEN }} # not required for public repos flags: unittests # optional name: coverage # optional fail_ci_if_error: true # optional (default = false) verbose: true # optional (default = false) - name: Perform CodeQL Analysis uses: github/codeql-action/analyze@a8849fbe6341625acb2e18f7f32e53b734d6e1e3