1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374 |
- name: Java CI with Maven
- on:
- push:
- branches: [ main, 2.3.x, 2.4.x, 3.0.x ]
- pull_request:
- branches: [ main, 2.3.x, 2.4.x, 3.0.x ]
- permissions:
- contents: read
- jobs:
- build:
- name: "Test with ${{ matrix.version }}"
- strategy:
- matrix:
- version: [ 17.0.1-tem, 21-tem ]
- runs-on: ubuntu-latest
- steps:
- - uses: actions/checkout@v2
- - name: Cache local Maven repository
- uses: actions/cache@v2
- with:
- path: ~/.m2/repository
- key: ${{ runner.os }}-maven-${{ hashFiles('**/pom.xml') }}
- restore-keys: ${{ runner.os }}-maven-
- - name: Download ${{ matrix.version }}
- uses: sdkman/sdkman-action@master
- id: sdkman
- with:
- candidate: java
- version: ${{ matrix.version }}
- - name: Set up ${{ matrix.version }}
- uses: actions/setup-java@v1
- with:
- java-version: 8
- jdkFile: ${{ steps.sdkman.outputs.file }}
- - name: Build with Maven
- run: ./mvnw -V -B verify -Pspring
- sonar:
- name: "Run Sonar Analysis"
- runs-on: ubuntu-latest
- # Disable Sonar for foreign PRs
- if: (github.event_name != 'pull_request' || (github.event_name == 'pull_request' && github.event.pull_request.head.repo.full_name == github.repository))
- steps:
- - uses: actions/checkout@v2
- - name: Cache local Maven repository
- uses: actions/cache@v2
- with:
- path: ~/.m2/repository
- key: ${{ runner.os }}-maven-${{ hashFiles('**/pom.xml') }}
- restore-keys: ${{ runner.os }}-maven-
- - name: Download JDK
- uses: sdkman/sdkman-action@master
- id: sdkman
- with:
- candidate: java
- version: 17.0.1-tem
- - name: Set up JDK
- uses: actions/setup-java@v1
- with:
- java-version: 8
- jdkFile: ${{ steps.sdkman.outputs.file }}
- - name: Cache SonarCloud packages
- uses: actions/cache@v1
- with:
- path: ~/.sonar/cache
- key: ${{ runner.os }}-sonar
- restore-keys: ${{ runner.os }}-sonar
- - name: Build with Maven
- env:
- GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} # Needed to get PR information, if any
- SONAR_TOKEN: ${{ secrets.SONAR_TOKEN }}
- run: ./mvnw -V -B verify org.sonarsource.scanner.maven:sonar-maven-plugin:sonar -Pcoverage,spring
|