yihua commented on code in PR #19138: URL: https://github.com/apache/hudi/pull/19138#discussion_r3510707071
########## scripts/jacoco/README.md: ########## @@ -107,4 +107,36 @@ Published Artifacts - `merge_jacoco_exec_files.sh`: merges multiple JaCoCo execution data files in multiple modules. - `merge_jacoco_job_files.sh`: merges multiple JaCoCo execution data files from multiple Azure pipeline jobs. - `generate_jacoco_coverage_report.sh`: generates the JaCoCo code coverage report by taking the execution data file, - source files and class files. \ No newline at end of file + source files and class files. + +## Per-PR coverage on Codecov + +In addition to the aggregated Azure report described above, coverage is uploaded to +[Codecov](https://app.codecov.io/gh/apache/hudi) on every pull request and every commit to master. +This is the canonical per-PR view. + +- Each test job in `.github/workflows/bot.yml` runs with the JaCoCo agent, builds a merged report + via `scripts/jacoco/generate_merged_coverage_report.sh`, and uploads `jacoco-report.xml` to + Codecov under a flag (`spark-java-tests`, `spark-scala-tests`, `utilities`, + `common-and-other-modules`, `spark-client-hadoop-common`, `hadoop-mr-java-client`, + `integration-tests`). Review Comment: Checked against current apache/master `.github/workflows/bot.yml`: the uploaded flags are `spark-client-hadoop-common`, `utilities`, `common-and-other-modules`, `spark-java-tests`, `spark-scala-tests`, `hadoop-mr-java-client`, and `integration-tests` (the last at bot.yml line 1432). There is no `spark-core-tests` flag in bot.yml. The list here matches, so leaving it as-is. ########## scripts/jacoco/README.md: ########## @@ -107,4 +107,36 @@ Published Artifacts - `merge_jacoco_exec_files.sh`: merges multiple JaCoCo execution data files in multiple modules. - `merge_jacoco_job_files.sh`: merges multiple JaCoCo execution data files from multiple Azure pipeline jobs. - `generate_jacoco_coverage_report.sh`: generates the JaCoCo code coverage report by taking the execution data file, - source files and class files. \ No newline at end of file + source files and class files. + +## Per-PR coverage on Codecov + +In addition to the aggregated Azure report described above, coverage is uploaded to +[Codecov](https://app.codecov.io/gh/apache/hudi) on every pull request and every commit to master. +This is the canonical per-PR view. + +- Each test job in `.github/workflows/bot.yml` runs with the JaCoCo agent, builds a merged report + via `scripts/jacoco/generate_merged_coverage_report.sh`, and uploads `jacoco-report.xml` to + Codecov under a flag (`spark-java-tests`, `spark-scala-tests`, `utilities`, + `common-and-other-modules`, `spark-client-hadoop-common`, `hadoop-mr-java-client`, + `integration-tests`). +- `.codecov.yml` configures reporting: `ignore` drops non-production code (examples, packaging, + the integration-test harness, an incubating module); `component_management` reports coverage per + ownership area (hudi-common, hudi-client, hudi-spark-datasource, hudi-flink, ...); and + `flag_management` carries a flag's coverage forward when its job is skipped by the path filter, + so a partial run does not report a false drop. +- Generated code (Avro, Thrift, Protobuf, ANTLR) has no source committed to git, so it never Review Comment: Fixed: the doc now says generated code (Thrift/Protobuf/ANTLR) needs no exclusion, and notes the one committed generated path (Avro model classes) is still ignored defensively, so the doc and config agree. -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected]
