torrust-tracker 3.0.0-alpha.2

A feature rich BitTorrent tracker.
Documentation
name: Upload code coverage

on:
  push:
  pull_request:

env:
  CARGO_TERM_COLOR: always

jobs:
  build:
    runs-on: ubuntu-latest

    steps:
      - uses: actions/checkout@v3
      - uses: dtolnay/rust-toolchain@stable
        with:
          toolchain: nightly
          components: rustfmt, llvm-tools-preview
      - name: Build
        run: cargo build --release
        env:
          CARGO_INCREMENTAL: "0"
          RUSTFLAGS: "-Cinstrument-coverage"
          RUSTDOCFLAGS: "-Cinstrument-coverage"
      - name: Test
        run: cargo test --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: Run grcov
        run: grcov . --binary-path target/debug/deps/ -s . -t lcov --branch --ignore-not-existing --ignore '../**' --ignore '/*' -o coverage.lcov
      - uses: codecov/codecov-action@v3
        with:
          files: ./coverage.lcov
          flags: rust
          fail_ci_if_error: true # optional (default = false)