name: Coverage on: push: branches: [master] permissions: { contents: read } concurrency: group: ${{ github.workflow }}-${{ github.ref }} cancel-in-progress: true jobs: coverage: runs-on: ubuntu-latest services: redis: image: redis:5.0.7 ports: - 6379:6379 options: --entrypoint redis-server steps: - uses: actions/checkout@v4 - name: Install Rust uses: actions-rust-lang/setup-rust-toolchain@v1.8.0 with: components: llvm-tools-preview - name: Install cargo-llvm-cov uses: taiki-e/install-action@v2.32.1 with: tool: cargo-llvm-cov - name: Generate code coverage run: cargo llvm-cov --workspace --all-features --codecov --output-path codecov.json - name: Upload to Codecov uses: codecov/codecov-action@v4.1.1 with: files: codecov.json fail_ci_if_error: true env: CODECOV_TOKEN: ${{ secrets.CODECOV_TOKEN }}