Update codecov/codecov-action action to v5 #658
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: "Build" | |
on: | |
push: | |
branches: | |
- main | |
- develop | |
- issues/** | |
- renovate/** | |
jobs: | |
staticDetektCheck: | |
name: "Detekt - static check" | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/[email protected] | |
with: | |
distribution: 'temurin' | |
java-version: '21' | |
- name: "Check out sources" | |
uses: actions/[email protected] | |
- name: "Detekt" | |
uses: burrunan/gradle-cache-action@v2 | |
with: | |
remote-build-cache-proxy-enabled: false | |
save-local-build-cache: false | |
arguments: detekt | |
- name: "Upload sarif report" | |
uses: github/codeql-action/upload-sarif@v3 | |
if: success() || failure() | |
with: | |
sarif_file: build/reports/detekt/detekt.sarif | |
category: detekt | |
- name: "Upload detekt report" | |
uses: actions/[email protected] | |
if: success() || failure() | |
with: | |
name: detektReport | |
path: build/reports/detekt | |
licenceCheck: | |
name: "Fossa licence analyze - static check" | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/[email protected] | |
with: | |
distribution: 'temurin' | |
java-version: '21' | |
- name: "Check out sources" | |
uses: actions/[email protected] | |
- name: "Fossa analyze" | |
uses: fossas/fossa-action@v1 | |
with: | |
api-key: ${{ secrets.FOSSA_API_KEY }} | |
- name: "Fossa test" | |
uses: fossas/fossa-action@v1 | |
with: | |
api-key: ${{ secrets.FOSSA_API_KEY }} | |
run-tests: true | |
compile: | |
runs-on: ubuntu-latest | |
name: "Build artifact" | |
steps: | |
- uses: actions/[email protected] | |
with: | |
distribution: 'temurin' | |
java-version: '21' | |
- name: "Check out sources" | |
uses: actions/[email protected] | |
- name: "Compile" | |
uses: burrunan/gradle-cache-action@v2 | |
with: | |
remote-build-cache-proxy-enabled: false | |
arguments: jar | |
validatePlugin: | |
runs-on: ubuntu-latest | |
needs: compile | |
steps: | |
- uses: actions/[email protected] | |
with: | |
distribution: 'temurin' | |
java-version: '21' | |
- name: "Check out sources" | |
uses: actions/[email protected] | |
- name: "Validate plugin" | |
uses: burrunan/gradle-cache-action@v2 | |
with: | |
remote-build-cache-proxy-enabled: false | |
arguments: validatePlugins | |
unitTest: | |
runs-on: ubuntu-latest | |
needs: compile | |
steps: | |
- uses: actions/[email protected] | |
with: | |
distribution: 'temurin' | |
java-version: '21' | |
- name: "Check out sources" | |
uses: actions/[email protected] | |
- name: "Unit test coverage cache" | |
uses: actions/[email protected] | |
with: | |
path: ${{ github.workspace }}/build/jacoco/** | |
key: ${{ runner.os }}-jacoco-unitTest-${{ github.run_id }} | |
- name: "Unit test" | |
uses: burrunan/gradle-cache-action@v2 | |
with: | |
remote-build-cache-proxy-enabled: false | |
save-local-build-cache: false | |
arguments: test | |
- name: "Publish Unit Test Results" | |
uses: EnricoMi/[email protected] | |
if: always() | |
with: | |
check_name: "Unit test results" | |
junit_files: build/test-results/**/*.xml | |
- name: "Upload unit test report" | |
uses: actions/[email protected] | |
if: always() | |
with: | |
name: unitTestReport | |
path: build/reports/tests/test | |
functionalTest: | |
runs-on: ubuntu-latest | |
needs: compile | |
steps: | |
- uses: actions/[email protected] | |
with: | |
distribution: 'temurin' | |
java-version: '21' | |
- name: "Check out sources" | |
uses: actions/[email protected] | |
- name: "Functional test coverage cache" | |
uses: actions/[email protected] | |
with: | |
path: ${{ github.workspace }}/build/jacoco/** | |
key: ${{ runner.os }}-jacoco-functionalTest-${{ github.run_id }} | |
- name: "Execute Functional tests" | |
uses: burrunan/gradle-cache-action@v2 | |
with: | |
remote-build-cache-proxy-enabled: false | |
save-local-build-cache: false | |
arguments: functionalTest | |
- name: "Publish functional test results" | |
uses: EnricoMi/[email protected] | |
if: always() | |
with: | |
check_name: "Functional test results" | |
junit_files: build/test-results/functionalTest/*.xml | |
- name: "Upload functional test report" | |
uses: actions/[email protected] | |
if: always() | |
with: | |
name: functionalTestReport | |
path: build/reports/tests/functionalTest | |
report: | |
runs-on: ubuntu-latest | |
needs: | |
- unitTest | |
- functionalTest | |
steps: | |
- name: "Check out sources" | |
uses: actions/[email protected] | |
- name: "Load unit test coverage cache" | |
uses: actions/[email protected] | |
with: | |
path: ${{ github.workspace }}/build/jacoco/** | |
key: ${{ runner.os }}-jacoco-unitTest-${{ github.run_id }} | |
- name: "Load functional test coverage cache" | |
uses: actions/[email protected] | |
with: | |
path: ${{ github.workspace }}/build/jacoco/** | |
key: ${{ runner.os }}-jacoco-functionalTest-${{ github.run_id }} | |
- name: "Create coverage report" | |
uses: burrunan/gradle-cache-action@v2 | |
with: | |
remote-build-cache-proxy-enabled: false | |
save-local-build-cache: false | |
arguments: jacocoAggregatedCoverageReport | |
- name: "Publish Report" | |
uses: codecov/[email protected] | |
with: | |
token: ${{ secrets.CODECOV_TOKEN }} | |
publishSnapshot: | |
runs-on: ubuntu-latest | |
if: github.ref == 'refs/heads/develop' | |
needs: | |
- report | |
- licenceCheck | |
steps: | |
- uses: actions/[email protected] | |
with: | |
distribution: 'temurin' | |
java-version: '21' | |
- name: "Check out sources" | |
uses: actions/[email protected] | |
- name: "Load compile cache" | |
uses: actions/[email protected] | |
with: | |
path: ${{ github.workspace }}/build/** | |
key: ${{ runner.os }}-compile-${{ github.run_id }} | |
- name: "Publish snapshot to github" | |
uses: burrunan/gradle-cache-action@v2 | |
env: | |
USERNAME: ${{ github.actor }} | |
TOKEN: ${{ github.token }} | |
ORG_GRADLE_PROJECT_signingKey: ${{ secrets.MVN_CNTRL_SECRET_KEY }} | |
ORG_GRADLE_PROJECT_signingPassword: ${{ secrets.MVN_CNTRL_SECRET_KEY_PASS }} | |
with: | |
remote-build-cache-proxy-enabled: false | |
save-local-build-cache: false | |
arguments: publish |