From 139f4e5ab5753d133f9a9572ed9f88c31d14abcb Mon Sep 17 00:00:00 2001 From: yellow-shine Date: Fri, 25 Oct 2024 17:42:14 +0800 Subject: [PATCH] enhance: [codecov]split code coverage into components (#37137) Signed-off-by: Yellow Shine --- .github/workflows/main.yaml | 4 +++- ci/jenkins/UT-CPP.groovy | 4 ++-- codecov.yml | 31 ++++++++++++++++++++++++++++++- 3 files changed, 35 insertions(+), 4 deletions(-) diff --git a/.github/workflows/main.yaml b/.github/workflows/main.yaml index 91f1233976..997d6bcebd 100644 --- a/.github/workflows/main.yaml +++ b/.github/workflows/main.yaml @@ -221,7 +221,7 @@ jobs: name: Integration Test needs: Build runs-on: ubuntu-latest - timeout-minutes: 90 + timeout-minutes: 120 steps: - name: Maximize build space uses: easimon/maximize-build-space@master @@ -299,6 +299,7 @@ jobs: name: ubuntu-20.04-unittests fail_ci_if_error: true disable_safe_directory: true + verbose: true - name: Retry Upload coverage to Codecov if: ${{ failure() && github.repository == 'milvus-io/milvus' }} uses: codecov/codecov-action@v4 @@ -309,3 +310,4 @@ jobs: name: ubuntu-20.04-unittests fail_ci_if_error: true disable_safe_directory: true + verbose: true diff --git a/ci/jenkins/UT-CPP.groovy b/ci/jenkins/UT-CPP.groovy index c0818c4596..ac571457f6 100644 --- a/ci/jenkins/UT-CPP.groovy +++ b/ci/jenkins/UT-CPP.groovy @@ -1,4 +1,4 @@ -@Library('jenkins-shared-library@v0.62.0') _ +@Library('jenkins-shared-library@v0.63.0') _ def pod = libraryResource 'io/milvus/pod/tekton-4am.yaml' def milvus_helm_chart_version = '4.2.8' @@ -40,7 +40,7 @@ pipeline { pullRequestNumber: "$env.CHANGE_ID", make_cmd: "make clean && make USE_ASAN=ON build-cpp-with-coverage", test_entrypoint: "./scripts/run_cpp_codecov.sh", - codecov_files: "./lcov_output.info,./it_coverage.txt" + codecov_files: "./lcov_output.info" } } } diff --git a/codecov.yml b/codecov.yml index 8d039a792e..3de13bf5dc 100644 --- a/codecov.yml +++ b/codecov.yml @@ -23,11 +23,38 @@ coverage: if_ci_failed: error #success, failure, error, ignore comment: - layout: "reach, diff, flags, files" + layout: "reach, diff, flags, components, files" behavior: default require_changes: false branches: # branch names that can post comment - master + +component_management: + default_rules: # default rules that will be inherited by all components + statuses: + - type: project # in this case every component that doens't have a status defined will have a project type one + target: auto + branches: + - "!main" + + individual_components: + - component_id: client + name: Client + paths: + - client/** + + - component_id: core + name: Core + paths: + - internal/core/** + + + - component_id: go + name: Go + paths: + - pkg/** + - internal/** + - "!internal/core/**" # Exclude core component ignore: - "LICENSES" @@ -42,3 +69,5 @@ ignore: + +