name: Coverage Enforcement
on:
push:
branches: [ main, master ]
pull_request:
branches: [ main, master ]
permissions:
contents: read
jobs:
coverage:
name: Coverage Threshold (>= 70%)
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Install Rust
uses: dtolnay/rust-toolchain@e97e2d8cc328f1b50210efc529dca0028893a2d9 with:
toolchain: stable
components: llvm-tools-preview
- name: Install cargo-llvm-cov
uses: taiki-e/install-action@2ca9b94c269419b7b0c711c09d0b21c4e1d51145 with:
tool: cargo-llvm-cov
- name: Enforce line coverage minimum
run: cargo llvm-cov --workspace --all-features --fail-under-lines 70 --summary-only