docs(readme): reference 0.2.0-rc.15 in the version-pinned install exa… #265
This file contains hidden or 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: [main] | |
| env: | |
| CARGO_TERM_COLOR: always | |
| MIN_COVERAGE: "80" | |
| jobs: | |
| coverage: | |
| name: Coverage | |
| runs-on: ubuntu-latest | |
| env: | |
| DEACON_NETWORK_TESTS: "1" | |
| steps: | |
| - name: Free disk space (before cache restore) | |
| run: | | |
| # Remove pre-installed software to free ~30GB BEFORE cache restore | |
| sudo rm -rf /usr/share/dotnet /usr/local/lib/android /opt/ghc /opt/hostedtoolcache/CodeQL 2>/dev/null || true | |
| echo "=== Disk space after pre-cleanup ===" | |
| df -h | |
| - name: Checkout code | |
| uses: actions/checkout@v7 | |
| - name: Install Rust toolchain | |
| uses: dtolnay/rust-toolchain@stable | |
| with: | |
| components: llvm-tools-preview | |
| - name: Install cargo-llvm-cov | |
| uses: taiki-e/install-action@v2 | |
| with: | |
| tool: cargo-llvm-cov | |
| - name: Cache cargo registry and target | |
| uses: actions/cache@v6 | |
| with: | |
| path: | | |
| ~/.cargo/registry | |
| ~/.cargo/git | |
| target | |
| key: ${{ runner.os }}-llvmcov-${{ hashFiles('**/Cargo.lock') }} | |
| restore-keys: | | |
| ${{ runner.os }}-llvmcov- | |
| - name: Ensure Docker is running and clean | |
| run: | | |
| sudo service docker start | |
| docker info | |
| # Clean Docker after cache restore | |
| sudo docker system prune -af --volumes | |
| sudo docker builder prune -af | |
| echo "=== Disk space after Docker cleanup ===" | |
| df -h | |
| - name: Generate coverage (fail under ${{ env.MIN_COVERAGE }}%) | |
| run: | | |
| mkdir -p coverage | |
| # --ignore-run-fail: the live parity binaries (018-harden-parity-harness) fail | |
| # without the pinned @devcontainers/cli oracle, which is NOT provisioned here | |
| # (it is provisioned + gated in the `parity / live-certification` lane, | |
| # .github/workflows/parity.yml). Coverage measures whatever ran and is a | |
| # coverage-% gate, not the test-correctness gate -- the PR nextest lanes are. | |
| # --exclude parity-harness: keep the dev-only harness crate out of the product | |
| # coverage denominator (its bin/lib are tooling, not shipped surface). | |
| cargo llvm-cov --workspace --exclude parity-harness --ignore-run-fail --lcov --output-path coverage/lcov.info --text --fail-under-lines ${{ env.MIN_COVERAGE }} -- --test-threads=1 | tee -a "$GITHUB_STEP_SUMMARY" | |
| - name: Upload lcov artifact | |
| uses: actions/upload-artifact@v7 | |
| with: | |
| name: coverage-lcov | |
| path: coverage/lcov.info |