github/workflows: Switch from lcov to gcov.
Coverage calculated by Codecov has the same reliability/deterministic issues as Coveralls did, so the problem is likely to do with the output of lcov/gcov, rather than the analysis and display of the data. Switch from lcov to gcov for data generation to try and simplify this process of computing coverage. Signed-off-by: Damien George <damien@micropython.org>
This commit is contained in:
parent
c940597314
commit
f3e4ed82a1
|
@ -65,15 +65,13 @@ jobs:
|
||||||
run: source tools/ci.sh && ci_native_mpy_modules_build
|
run: source tools/ci.sh && ci_native_mpy_modules_build
|
||||||
- name: Test importing .mpy generated by mpy_ld.py
|
- name: Test importing .mpy generated by mpy_ld.py
|
||||||
run: source tools/ci.sh && ci_unix_coverage_run_native_mpy_tests
|
run: source tools/ci.sh && ci_unix_coverage_run_native_mpy_tests
|
||||||
- name: Run lcov coverage analysis
|
- name: Run gcov coverage analysis
|
||||||
run: |
|
run: |
|
||||||
mkdir -p coverage
|
(cd ports/unix && gcov -o build-coverage/py ../../py/*.c || true)
|
||||||
lcov --rc lcov_branch_coverage=1 --directory ports/unix/build-coverage --capture --output-file coverage/lcov.info.all
|
(cd ports/unix && gcov -o build-coverage/extmod ../../extmod/*.c || true)
|
||||||
lcov --remove coverage/lcov.info.all '*/lib/*' '*/ports/unix/*' '*/utils/*' --output-file coverage/lcov.info
|
|
||||||
- name: Upload coverage to Codecov
|
- name: Upload coverage to Codecov
|
||||||
uses: codecov/codecov-action@v1
|
uses: codecov/codecov-action@v1
|
||||||
with:
|
with:
|
||||||
files: coverage/lcov.info
|
|
||||||
fail_ci_if_error: true
|
fail_ci_if_error: true
|
||||||
verbose: true
|
verbose: true
|
||||||
- name: Print failures
|
- name: Print failures
|
||||||
|
|
|
@ -394,7 +394,6 @@ function ci_unix_standard_run_perfbench {
|
||||||
}
|
}
|
||||||
|
|
||||||
function ci_unix_coverage_setup {
|
function ci_unix_coverage_setup {
|
||||||
sudo apt-get install lcov
|
|
||||||
sudo pip3 install setuptools
|
sudo pip3 install setuptools
|
||||||
sudo pip3 install pyelftools
|
sudo pip3 install pyelftools
|
||||||
gcc --version
|
gcc --version
|
||||||
|
|
Loading…
Reference in New Issue