enhance: [codecov]split code coverage into components (#37137)

Signed-off-by: Yellow Shine <sammy.huang@zilliz.com>
This commit is contained in:
yellow-shine 2024-10-25 17:42:14 +08:00 committed by GitHub
parent 44ddcb5a63
commit 139f4e5ab5
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
3 changed files with 35 additions and 4 deletions

View File

@ -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

View File

@ -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"
}
}
}

View File

@ -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: