Skip to content

Commit

Permalink
fix: ci
Browse files Browse the repository at this point in the history
  • Loading branch information
marcomariscal committed Dec 12, 2024
1 parent d0798f7 commit 12e615f
Showing 1 changed file with 14 additions and 26 deletions.
40 changes: 14 additions & 26 deletions l2-contracts/.github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -16,8 +16,8 @@ jobs:
steps:
- uses: actions/checkout@v3

- name: Install Foundry
uses: foundry-rs/foundry-toolchain@v1
- name: Install zkSync Foundry
uses: dutterbutter/foundry-zksync-toolchain@v1

- name: Install the dependencies
run: npm install
Expand All @@ -30,14 +30,14 @@ jobs:
steps:
- uses: actions/checkout@v3

- name: Install Foundry
uses: foundry-rs/foundry-toolchain@v1
- name: Install zkSync Foundry
uses: dutterbutter/foundry-zksync-toolchain@v1

- name: Install the dependencies
run: npm install

- name: Run tests
run: forge test --no-match-path .integration.t.sol
run: forge test --no-match-path .integration.t.sol --zksync

- name: Run Era test node
uses: dutterbutter/[email protected]
Expand All @@ -52,50 +52,38 @@ jobs:
steps:
- uses: actions/checkout@v3

- name: Install Foundry
uses: foundry-rs/foundry-toolchain@v1
- name: Install zkSync Foundry
uses: dutterbutter/foundry-zksync-toolchain@v1

- name: Run coverage
run: FOUNDRY_PROFILE=default npm run foundry-test && FOUNDRY_PROFILE=default forge coverage --report summary --report lcov --no-match-path .integration.t.sol

# To ignore coverage for certain directories modify the paths in this step as needed. The
# below default ignores coverage results for the test and script directories. Alternatively,
# to include coverage in all directories, comment out this step. Note that because this
# filtering applies to the lcov file, the summary table generated in the previous step will
# still include all files and directories.
# The `--rc lcov_branch_coverage=1` part keeps branch info in the filtered report, since lcov
# defaults to removing branch info.
run: FOUNDRY_PROFILE=default forge test --no-match-path .integration.t.sol --zksync && FOUNDRY_PROFILE=default forge coverage --report summary --report lcov --no-match-path .integration.t.sol

- name: Filter directories
run: |
sudo apt update && sudo apt install -y lcov
lcov --remove lcov.info 'test/*' 'script/*' 'src/lib/*' --output-file lcov.info --rc lcov_branch_coverage=1
# This step posts a detailed coverage report as a comment and deletes previous comments on
# each push. The below step is used to fail coverage if the specified coverage threshold is
# not met. The below step can post a comment (when it's `github-token` is specified) but it's
# not as useful, and this action cannot fail CI based on a minimum coverage threshold, which
# is why we use both in this way.
- name: Post coverage report
if: github.event_name == 'pull_request' # This action fails when ran outside of a pull request.
if: github.event_name == 'pull_request'
uses: romeovs/[email protected]
with:
delete-old-comments: true
lcov-file: ./lcov.info
github-token: ${{ secrets.GITHUB_TOKEN }} # Adds a coverage summary comment to the PR.
github-token: ${{ secrets.GITHUB_TOKEN }}

- name: Verify minimum coverage
uses: zgosalvez/github-actions-report-lcov@v2
with:
coverage-files: ./lcov.info
minimum-coverage: 83 # Set coverage threshold.
minimum-coverage: 83

lint:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3

- name: Install Foundry
uses: foundry-rs/foundry-toolchain@v1
- name: Install zkSync Foundry
uses: dutterbutter/foundry-zksync-toolchain@v1

- name: Install scopelint
uses: engineerd/[email protected]
Expand Down

0 comments on commit 12e615f

Please sign in to comment.