Skip to content

Merge pull request #568 from 0323pin/main #620

Merge pull request #568 from 0323pin/main

Merge pull request #568 from 0323pin/main #620

Workflow file for this run

name: "Test Coverage"
on:
push:
branches:
- main
paths:
- ".github/**/*"
- ".codecov.yml"
- "**.rs"
- "**/Cargo.toml"
- "**/Cargo.lock"
pull_request:
branches:
- main
paths:
- ".github/**/*"
- ".codecov.yml"
- "**.rs"
- "**/Cargo.toml"
- "**/Cargo.lock"
jobs:
publish:
name: Create test coverage on ${{ matrix.os }} for ${{ matrix.target }}
runs-on: ${{ matrix.os }}
strategy:
fail-fast: false
matrix:
target:
- x86_64-unknown-linux-gnu
include:
- os: ubuntu-latest
target: x86_64-unknown-linux-gnu
steps:
- name: Checkout code
uses: actions/checkout@v3
- name: Setup Rust toolchain
uses: dtolnay/rust-toolchain@stable
with:
components: llvm-tools-preview
targets: ${{ matrix.target }}
- uses: actions/cache@v3
with:
path: |
~/.cargo/bin/
~/.cargo/registry/index/
~/.cargo/registry/cache/
~/.cargo/git/db/
target/
key: ${{ runner.os }}-cargo-coverage-${{ matrix.target }}-${{ hashFiles('**/Cargo.lock') }}
restore-keys: |
${{ runner.os }}-cargo-coverage-${{ matrix.target }}-
${{ runner.os }}-cargo-${{ matrix.target }}-
- name: Install cargo-llvm-cov and nextest
uses: taiki-e/install-action@v2
with:
tool: cargo-llvm-cov,nextest
- name: Generate code coverage
env:
NEXTEST_PROFILE: coverage # defined in .config/nextest.toml
run: cargo llvm-cov nextest --all-features --workspace --lcov --output-path lcov.info
- name: Upload coverage to Codecov
uses: codecov/codecov-action@v4
with:
fail_ci_if_error: false
files: lcov.info
token: ${{ secrets.CODECOV_TOKEN }}