Equistore was renamed to metatensor #318
Workflow file for this run
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Coverage | |
on: | |
push: | |
branches: [master] | |
pull_request: | |
# Check all PR | |
concurrency: | |
group: coverage-${{ github.ref }} | |
cancel-in-progress: ${{ github.ref != 'refs/heads/master' }} | |
jobs: | |
coverage: | |
runs-on: ubuntu-22.04 | |
name: collect code coverage | |
steps: | |
- name: free disk space | |
run: sudo rm -rf /usr/share/dotnet /usr/local/lib/android || true | |
- uses: actions/checkout@v3 | |
- name: setup Python | |
uses: actions/setup-python@v4 | |
with: | |
python-version: 3.8 | |
- name: setup rust | |
uses: dtolnay/rust-toolchain@master | |
with: | |
toolchain: stable | |
- name: install cargo tarpaulin | |
uses: taiki-e/install-action@v2 | |
with: | |
tool: cargo-tarpaulin | |
- name: install python dependencies | |
run: | | |
python -m pip install --upgrade pip | |
python -m pip install tox | |
- name: install lcov | |
run: sudo apt install -y lcov | |
- name: cache tox environments | |
uses: actions/cache@v3 | |
with: | |
path: .tox | |
key: tox-${{ matrix.os }}-${{ hashFiles('pyproject.toml', 'setup.cfg', 'tox.ini') }} | |
- name: Setup sccache | |
uses: mozilla-actions/[email protected] | |
- name: Setup sccache environnement variables | |
run: | | |
echo "SCCACHE_GHA_ENABLED=true" >> $GITHUB_ENV | |
echo "RUSTC_WRAPPER=sccache" >> $GITHUB_ENV | |
echo "CMAKE_C_COMPILER_LAUNCHER=sccache" >> $GITHUB_ENV | |
echo "CMAKE_CXX_COMPILER_LAUNCHER=sccache" >> $GITHUB_ENV | |
- name: collect rust and C/C++ coverage | |
env: | |
RASCALINE_TEST_WITH_STATIC_LIB: "1" | |
run: | | |
cargo tarpaulin --all-features --workspace --engine=llvm --out=xml --output-dir=target/tarpaulin --objects target/debug/librascaline.so | |
# cleanup C/C++ coverage | |
lcov --directory . --capture --output-file coverage.info | |
lcov --remove coverage.info '/usr/*' "$(pwd)/rascaline-c-api/tests/*" "$(pwd)/rascaline-c-api/examples/*" --output-file coverage.info | |
- name: collect Python coverage | |
run: tox -e all-deps | |
- name: upload to codecov.io | |
uses: codecov/codecov-action@v3 | |
with: | |
fail_ci_if_error: true | |
files: target/tarpaulin/cobertura.xml,.tox/coverage.xml,coverage.info |