Create .codecov.yml #20
This file contains 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: Tests | |
on: | |
push: | |
branches: | |
- main | |
pull_request: | |
jobs: | |
unit-tests: | |
name: Unit Tests | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@3df4ab11eba7bda6032a0b82a6bb43b11571feac # v4 | |
with: | |
submodules: recursive | |
- uses: actions/setup-node@v3 | |
with: | |
node-version: 16 | |
- name: Copy configuration file | |
run: cp .env.example .env | |
- name: Import configuration file | |
run: source .env | |
- name: Install Foundry | |
uses: foundry-rs/foundry-toolchain@v1 | |
with: | |
version: nightly | |
- name: Install Dependencies | |
run: yarn install --frozen-lockfile | |
- name: Update Modules | |
run: yarn sync | |
- name: Run Tests | |
run: FOUNDRY_PROFILE=ci yarn test | |
- name: Run Coverage | |
run: forge coverage --report lcov | |
- name: Install lcov | |
run: sudo apt-get update && sudo apt-get install lcov | |
- name: Remove unwanted files | |
run: | | |
lcov --remove lcov.info 'test/*' -o lcov.info | |
lcov --remove lcov.info 'src/mocks/*' 'src/upgradeability/*' -o lcov.info | |
lcov --remove lcov.info 'script/*' -o lcov.info | |
- name: Upload coverage to Codecov | |
uses: codecov/codecov-action@v3 | |
with: | |
token: ${{ secrets.CODECOV_TOKEN }} | |
directory: . | |
env_vars: OS,PYTHON | |
fail_ci_if_error: true | |
files: ./lcov.info | |
name: grappa-coverage | |
verbose: true |