Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 2 additions & 0 deletions .github/actions-rs/grcov.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
output-type: lcov
output-file: ./lcov.info
114 changes: 48 additions & 66 deletions .github/workflows/codecov.yml
Original file line number Diff line number Diff line change
@@ -1,68 +1,50 @@
# Run cargo-llvm-cov and upload to codecov.io

# name: Code Coverage

# on:
# push:
# branches: [ master ]
# pull_request:
# branches: [ master ]
# types: [ opened, synchronize ]

# # Cancel prev CI if new commit
# concurrency:
# group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }}
# cancel-in-progress: true

# permissions:
# contents: read

# jobs:
# coverage:
# name: Code Coverage
# runs-on: ubuntu-latest
# steps:
# - uses: actions/checkout@v2
# - uses: actions-rs/toolchain@v1
# with:
# toolchain: nightly
# override: true

# - name: Install cargo-llvm-cov
# uses: taiki-e/install-action@cargo-llvm-cov

# - name: Install cargo-nextest
# uses: taiki-e/install-action@cargo-nextest

# - name: Install llvm-tools-preview for llvm-cov
# run: rustup component add llvm-tools-preview

# - name: Run
# run: cargo codecov --lcov --output-path lcov.info

# - name: Upload Artifact
# uses: actions/upload-artifact@v3
# with:
# name: codecov
# path: lcov.info

# codecov often fails, use another workflow for retry
# upload-codecov:
# name: Upload coverage file
# runs-on: ubuntu-latest
# needs: coverage
# steps:
# - name: Checkout
# uses: actions/checkout@v3

# - name: Download coverage file
# uses: actions/download-artifact@v3
# with:
# name: codecov

# - name: Upload to codecov.io
# uses: codecov/codecov-action@v3
# with:
# token: ${{ secrets.CODECOV_TOKEN }}
# fail_ci_if_error: true
# files: lcov.info
name: Code Coverage

on:
push:
branches: [ master ]
pull_request:
branches: [ master ]
types: [ opened, synchronize ]

# Cancel prev CI if new commit
concurrency:
group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }}
cancel-in-progress: true

permissions:
contents: read

jobs:
coverage:
name: Code Coverage
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: actions-rs/toolchain@v1
with:
toolchain: nightly
- name: Run tests
run: cargo test -p mako
env:
CARGO_INCREMENTAL: '0'
RUSTFLAGS: '-Zprofile -Ccodegen-units=1 -Cllvm-args=--inline-threshold=0 -Clink-dead-code -Coverflow-checks=off -Cpanic=abort -Zpanic_abort_tests'
RUSTDOCFLAGS: '-Zprofile -Ccodegen-units=1 -Cllvm-args=--inline-threshold=0 -Clink-dead-code -Coverflow-checks=off -Cpanic=abort -Zpanic_abort_tests'
- name: rust-grcov
# You may pin to the exact commit or the version.
# uses: actions-rs/grcov@bb47b1ed7883a1502fa6875d562727ace2511248
uses: actions-rs/grcov@v0.1
- name: Codecov
# You may pin to the exact commit or the version.
# uses: codecov/codecov-action@81cd2dc8148241f03f5839d295e000b8f761e378
uses: codecov/codecov-action@v4
env:
CODECOV_TOKEN: ${{ secrets.CODECOV_TOKEN }}
with:
# Repository upload token - get it from codecov.io. Required only for private repositories
# token: # optional
# Specify whether the Codecov output should be verbose
verbose: true
fail_ci_if_error: true