Skip to content

Commit f59ccee

Browse files
committed
ci: coverage changes
1 parent e2c8aac commit f59ccee

File tree

1 file changed

+16
-26
lines changed

1 file changed

+16
-26
lines changed

.github/workflows/ci.yml

Lines changed: 16 additions & 26 deletions
Original file line numberDiff line numberDiff line change
@@ -515,17 +515,11 @@ jobs:
515515
github_token: ${{ secrets.GITHUB_TOKEN }}
516516

517517
- name: Codecov
518+
id: codecov
518519
if: matrix.coverage
519-
env:
520-
CODECOV_TOKEN: ${{ secrets.CODECOV_TOKEN }}
521520
run: |
522-
set -x
523-
524-
if [ -z "$CODECOV_TOKEN" ]; then
525-
echo "CODECOV_TOKEN is not set. Skipping coverage report."
526-
exit 0
527-
fi
528-
521+
set -euvx
522+
529523
# Find gcov
530524
gcov_tool="gcov"
531525
for version in "${{steps.setup-cpp.outputs.version-major}}.${{steps.setup-cpp.outputs.version-minor}}" "${{steps.setup-cpp.outputs.version-major}}"; do
@@ -534,28 +528,24 @@ jobs:
534528
break
535529
fi
536530
done
537-
531+
532+
files=""
538533
for dir in "./build"; do
539-
# Generate reports
540534
echo "Generate report: $dir"
541535
lcov --rc lcov_branch_coverage=0 --gcov-tool "$gcov_tool" --directory "$dir" --capture --output-file "$dir/all.info" --ignore-errors inconsistent
542536
lcov --rc lcov_branch_coverage=0 --ignore-errors inconsistent --list "$dir/all.info"
543-
544-
# Upload to codecov
545-
echo "Upload to codecov: $dir"
546-
bash <(curl -s https://codecov.io/bash) -f "$dir/all.info"
537+
files="$files$(realpath "$dir/all.info"),"
547538
done
548-
549-
# Summary
550-
echo "# Coverage" >> $GITHUB_STEP_SUMMARY
551-
echo "" >> $GITHUB_STEP_SUMMARY
552-
echo "[![codecov](https://codecov.io/github/$GITHUB_REPOSITORY/commit/$GITHUB_SHA/graphs/sunburst.svg)](https://codecov.io/github/$GITHUB_REPOSITORY/commit/$GITHUB_SHA)" >> $GITHUB_STEP_SUMMARY
553-
echo "" >> $GITHUB_STEP_SUMMARY
554-
echo "" >> $GITHUB_STEP_SUMMARY
555-
echo "Commit: [![codecov](https://codecov.io/github/$GITHUB_REPOSITORY/commit/$GITHUB_SHA/graph/badge.svg)](https://codecov.io/github/$GITHUB_REPOSITORY/commit/$GITHUB_SHA)" >> $GITHUB_STEP_SUMMARY
556-
echo "" >> $GITHUB_STEP_SUMMARY
557-
echo "Branch: [![codecov](https://codecov.io/github/$GITHUB_REPOSITORY/branch/$GITHUB_REF_NAME/graph/badge.svg)](https://codecov.io/github/$GITHUB_REPOSITORY/commit/$GITHUB_SHA)" >> $GITHUB_STEP_SUMMARY
558-
echo "" >> $GITHUB_STEP_SUMMARY
539+
echo "files=${files%,}" >> $GITHUB_OUTPUT
540+
541+
- name: Codecov Upload
542+
uses: codecov/codecov-action@v5
543+
if: matrix.coverage
544+
with:
545+
fail_ci_if_error: true
546+
files: ${{ steps.codecov.outputs.files }}
547+
token: ${{ secrets.CODECOV_TOKEN }}
548+
verbose: true
559549

560550

561551
releases:

0 commit comments

Comments
 (0)