| name: Analyze |
| |
| on: |
| push: |
| branches: [ main ] |
| pull_request: |
| types: [ opened, synchronize, reopened ] |
| branches: [ main ] |
| schedule: |
| - cron: '28 5 * * 3' |
| |
| jobs: |
| |
| analize-lgtm: |
| name: Analyze LGTM |
| runs-on: ubuntu-latest |
| strategy: |
| fail-fast: false |
| matrix: |
| language: [ 'java' ] |
| steps: |
| - name: Checkout repository |
| uses: actions/checkout@v2 |
| with: |
| submodules: true |
| - name: Initialize CodeQL |
| uses: github/codeql-action/init@v1 |
| with: |
| languages: ${{ matrix.language }} |
| - name: Autobuild |
| uses: github/codeql-action/autobuild@v1 |
| - name: Perform CodeQL Analysis |
| uses: github/codeql-action/analyze@v1 |
| |
| analyze-sonar: |
| name: Analyze Sonar |
| runs-on: ubuntu-latest |
| steps: |
| - name: Checkout code |
| uses: actions/checkout@v2 |
| with: |
| submodules: true |
| - name: Set up Java 11 |
| uses: actions/setup-java@v2 |
| with: |
| java-version: 11 |
| distribution: 'adopt' |
| cache: 'maven' |
| - name: Cache SonarCloud packages |
| uses: actions/cache@v1 |
| with: |
| path: ~/.sonar/cache |
| key: ${{ runner.os }}-sonar |
| restore-keys: ${{ runner.os }}-sonar |
| - name: Analize with Sonar |
| env: |
| GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} # Needed to get PR information, if any |
| SONAR_TOKEN: ${{ secrets.SONAR_TOKEN }} |
| run: mvn -P integration -B verify org.sonarsource.scanner.maven:sonar-maven-plugin:sonar |
| |
| lint: |
| name: Spotless linter |
| runs-on: ubuntu-latest |
| steps: |
| - name: Checkout code |
| uses: actions/checkout@v2 |
| with: |
| submodules: true |
| - name: Set up Java 11 |
| uses: actions/setup-java@v2 |
| with: |
| java-version: 11 |
| distribution: 'adopt' |
| cache: 'maven' |
| - name: Run linter |
| run: mvn spotless:check |
| |
| javadoc: |
| name: Build javadoc |
| runs-on: ubuntu-latest |
| steps: |
| - name: Checkout code |
| uses: actions/checkout@v2 |
| with: |
| submodules: true |
| - name: Set up Java 11 |
| uses: actions/setup-java@v2 |
| with: |
| java-version: 11 |
| distribution: 'adopt' |
| cache: 'maven' |
| - name: Build javadoc |
| run: mvn -B install javadoc:javadoc |