From f122107b8e5a631fcd09fbf1a579f6d75ff2ed97 Mon Sep 17 00:00:00 2001 From: Dr Maxim Orlovsky Date: Sun, 8 Oct 2023 11:16:53 +0200 Subject: [PATCH] ci: fix codecov --- .github/workflows/codecov.yml | 49 ++++++++++++++++++++--------------- 1 file changed, 28 insertions(+), 21 deletions(-) diff --git a/.github/workflows/codecov.yml b/.github/workflows/codecov.yml index 9fd96f0e..0dafd287 100644 --- a/.github/workflows/codecov.yml +++ b/.github/workflows/codecov.yml @@ -14,33 +14,40 @@ jobs: runs-on: ubuntu-latest steps: - uses: actions/checkout@v2 - - name: Install latest nightly + - name: Set up toolchain uses: actions-rs/toolchain@v1 with: - toolchain: nightly + profile: minimal + toolchain: stable override: true - - name: Build & test + components: rustfmt, llvm-tools-preview + - name: Build uses: actions-rs/cargo@v1 with: - command: test - args: --workspace --all-features --no-fail-fast + command: build + args: --release env: - CARGO_INCREMENTAL: '0' - RUSTFLAGS: '-Zprofile -Ccodegen-units=1 -Cinline-threshold=0 -Clink-dead-code -Coverflow-checks=off' - RUSTDOCFLAGS: '-Zprofile -Ccodegen-units=1 -Cinline-threshold=0 -Clink-dead-code -Coverflow-checks=off' - - id: coverage - name: Generate coverage - uses: actions-rs/grcov@0.2-proto + CARGO_INCREMENTAL: "0" + RUSTFLAGS: "-Cinstrument-coverage" + RUSTDOCFLAGS: "-Cinstrument-coverage" + - name: Test + uses: actions-rs/cargo@v1 with: - args: > - -t lcov - --llvm - --ignore-not-existing - --ignore "/*" - -o ./target/lcov.info - ./target/debug/ + command: test + args: --all-features --no-fail-fast + env: + CARGO_INCREMENTAL: "0" + RUSTFLAGS: "-Cinstrument-coverage" + RUSTDOCFLAGS: "-Cinstrument-coverage" + - name: Install grcov + run: if [[ ! -e ~/.cargo/bin/grcov ]]; then cargo install grcov; fi + - name: Generate coverage + run: grcov . --binary-path target/debug/deps/ -s . -t lcov --branch --ignore-not-existing --ignore '../**' --ignore '/*' -o coverage.lcov - name: Upload coverage to Codecov - uses: codecov/codecov-action@v1 + uses: codecov/codecov-action@v3 with: - file: ${{ steps.coverage.outputs.report }} - directory: ./coverage/reports/ + files: ./coverage.lcov + flags: rust + fail_ci_if_error: true + env: + CODECOV_TOKEN: ${{ secrets.CODECOV_TOKEN }}