re-enable system contract hash check #4670
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: System contracts CI | |
on: | |
pull_request: | |
jobs: | |
build: | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout the repository | |
uses: actions/checkout@v4 | |
with: | |
submodules: recursive | |
- name: Install foundry-zksync | |
run: | | |
mkdir ./foundry-zksync | |
curl -LO https://github.com/matter-labs/foundry-zksync/releases/download/nightly-27360d4c8d12beddbb730dae07ad33a206b38f4b/foundry_nightly_linux_amd64.tar.gz | |
tar zxf foundry_nightly_linux_amd64.tar.gz -C ./foundry-zksync | |
chmod +x ./foundry-zksync/forge ./foundry-zksync/cast | |
echo "$PWD/foundry-zksync" >> $GITHUB_PATH | |
- name: Use Node.js | |
uses: actions/setup-node@v3 | |
with: | |
node-version: 18.18.0 | |
cache: yarn | |
- name: Build artifacts | |
working-directory: system-contracts | |
run: | | |
yarn install | |
yarn build:foundry | |
yarn build | |
- name: Create cache | |
uses: actions/cache/save@v3 | |
with: | |
key: artifacts-system-${{ github.sha }} | |
path: | | |
system-contracts/zkout | |
system-contracts/cache-forge | |
system-contracts/bootloader/build | |
system-contracts/artifacts-zk | |
system-contracts/cache-zk | |
system-contracts/typechain | |
system-contracts/contracts-preprocessed | |
lint: | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout the repository | |
uses: actions/checkout@v4 | |
- name: Use Node.js | |
uses: actions/setup-node@v3 | |
with: | |
node-version: 18.18.0 | |
cache: yarn | |
- name: Install dependencies | |
run: yarn | |
- name: Run lint | |
run: yarn lint:check | |
# FIXME: recover when used multivm is updated | |
# test-bootloader: | |
# needs: [build, lint] | |
# runs-on: ubuntu-latest | |
# steps: | |
# - name: Checkout the repository | |
# uses: actions/checkout@v4 | |
# - name: Install rust | |
# uses: actions-rust-lang/setup-rust-toolchain@v1 | |
# with: | |
# toolchain: nightly-2023-04-17 | |
# - name: Restore artifacts cache | |
# uses: actions/cache/restore@v3 | |
# with: | |
# fail-on-cache-miss: true | |
# key: artifacts-system-${{ github.sha }} | |
# path: | | |
# system-contracts/zkout | |
# system-contracts/cache-forge | |
# system-contracts/bootloader/build | |
# system-contracts/artifacts-zk | |
# system-contracts/cache-zk | |
# system-contracts/typechain | |
# system-contracts/contracts-preprocessed | |
# - name: Run bootloader tests | |
# run: | | |
# cd system-contracts/bootloader/test_infra | |
# cargo run | |
test-contracts: | |
needs: [build, lint] | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout the repository | |
uses: actions/checkout@v4 | |
- name: Use Node.js | |
uses: actions/setup-node@v3 | |
with: | |
node-version: 18.18.0 | |
cache: yarn | |
- name: Use era-test-node for testing | |
uses: dutterbutter/[email protected] | |
with: | |
releaseTag: v0.0.1-vm1.5.0 | |
- name: Install dependencies | |
run: yarn | |
- name: Restore artifacts cache | |
uses: actions/cache/restore@v3 | |
with: | |
fail-on-cache-miss: true | |
key: artifacts-system-${{ github.sha }} | |
path: | | |
system-contracts/zkout | |
system-contracts/cache-forge | |
system-contracts/bootloader/build | |
system-contracts/artifacts-zk | |
system-contracts/cache-zk | |
system-contracts/typechain | |
system-contracts/contracts-preprocessed | |
- name: Run tests | |
run: yarn sc test | |
- name: Print output logs of era_test_node | |
if: always() | |
run: cat era_test_node.log | |
check-hashes: | |
needs: [build] | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout the repository | |
uses: actions/checkout@v4 | |
- name: Use Node.js | |
uses: actions/setup-node@v3 | |
with: | |
node-version: 18.18.0 | |
cache: yarn | |
- name: Install dependencies | |
run: yarn | |
- name: Restore artifacts cache | |
uses: actions/cache/restore@v3 | |
with: | |
fail-on-cache-miss: true | |
key: artifacts-system-${{ github.sha }} | |
path: | | |
system-contracts/zkout | |
system-contracts/cache-forge | |
system-contracts/bootloader/build | |
system-contracts/artifacts-zk | |
system-contracts/cache-zk | |
system-contracts/typechain | |
system-contracts/contracts-preprocessed | |
- name: Check hashes | |
run: yarn sc calculate-hashes:check |