Skip to content

Make upgrade validation more strict #407

Make upgrade validation more strict

Make upgrade validation more strict #407

Workflow file for this run

name: CI
on: pull_request
jobs:
lint-l1:
runs-on: ubuntu-latest
defaults:
run:
working-directory: ethereum
steps:
- name: Checkout the repository
uses: actions/checkout@v3
- name: Use Node.js
uses: actions/setup-node@v3
with:
node-version: 18.18.0
cache: yarn
cache-dependency-path: ethereum/yarn.lock
- name: Install yarn
run: npm install -g yarn
- name: Install dependencies
run: yarn install
- name: Lint
run: yarn lint:check
lint-l2:
runs-on: ubuntu-latest
defaults:
run:
working-directory: zksync
steps:
- name: Checkout the repository
uses: actions/checkout@v3
- name: Use Node.js
uses: actions/setup-node@v3
with:
node-version: 18.18.0
cache: yarn
cache-dependency-path: zksync/yarn.lock
- name: Install yarn
run: npm install -g yarn
- name: Install dependencies
run: yarn install
- name: Lint
run: yarn lint:check
build-l1:
runs-on: ubuntu-latest
defaults:
run:
working-directory: ethereum
steps:
- name: Checkout the repository
uses: actions/checkout@v3
- name: Use Node.js
uses: actions/setup-node@v3
with:
node-version: 18.18.0
cache: yarn
cache-dependency-path: ethereum/yarn.lock
- name: Install yarn
run: npm install -g yarn
- name: Install dependencies
run: yarn install
- name: Build artifacts
run: yarn build
- name: Create cache
uses: actions/cache/save@v3
with:
key: artifacts-${{ github.sha }}
path: |
ethereum/artifacts
ethereum/cache
ethereum/typechain
build-l2:
runs-on: ubuntu-latest
defaults:
run:
working-directory: zksync
steps:
- name: Checkout the repository
uses: actions/checkout@v3
- name: Use Node.js
uses: actions/setup-node@v3
with:
node-version: 18.18.0
cache: yarn
cache-dependency-path: zksync/yarn.lock
- name: Install yarn
run: npm install -g yarn
- name: Install dependencies
run: yarn install
- name: Build artifacts
run: yarn build
- name: Create cache
uses: actions/cache/save@v3
with:
key: artifacts-zk-${{ github.sha }}
path: |
zksync/artifacts-zk
zksync/cache-zk
zksync/typechain
test-hardhat-l1:
needs: [build-l1, lint-l1]
runs-on: ubuntu-latest
defaults:
run:
working-directory: ethereum
steps:
- name: Checkout the repository
uses: actions/checkout@v3
- name: Use Node.js
uses: actions/setup-node@v3
with:
node-version: 18.18.0
cache: yarn
cache-dependency-path: ethereum/yarn.lock
- name: Install yarn
run: npm install -g yarn
- name: Install dependencies
run: yarn install
- name: Restore artifacts cache
uses: actions/cache/restore@v3
with:
fail-on-cache-miss: true
key: artifacts-${{ github.sha }}
path: |
ethereum/artifacts
ethereum/cache
ethereum/typechain
- name: Run tests
run: yarn test --no-compile
test-foundry-l1:
needs: [build-l1, lint-l1]
runs-on: ubuntu-latest
defaults:
run:
working-directory: ethereum
steps:
- name: Checkout the repository
uses: actions/checkout@v3
with:
submodules: "recursive"
- name: "Install Foundry"
uses: "foundry-rs/foundry-toolchain@v1"
- name: Use Node.js
uses: actions/setup-node@v3
with:
node-version: 18.18.0
cache: yarn
cache-dependency-path: ethereum/yarn.lock
- name: Install yarn
run: npm install -g yarn
- name: Install dependencies
run: yarn install
- name: Restore artifacts cache
uses: actions/cache/restore@v3
with:
fail-on-cache-miss: true
key: artifacts-${{ github.sha }}
path: |
ethereum/artifacts
ethereum/cache
ethereum/typechain
- name: Run tests
run: forge test
test-hardhat-l2:
needs: [build-l1, build-l2, lint-l2]
runs-on: ubuntu-latest
defaults:
run:
working-directory: zksync
steps:
- name: Checkout the repository
uses: actions/checkout@v3
with:
submodules: "recursive"
- name: Use Node.js
uses: actions/setup-node@v3
with:
node-version: 18.18.0
cache: yarn
cache-dependency-path: zksync/yarn.lock
- name: Install yarn
run: npm install -g yarn
- name: Install dependencies
run: yarn install
- name: Install L1 dependencies
working-directory: ethereum
run: yarn install
- name: Restore L1 artifacts cache
uses: actions/cache/restore@v3
with:
fail-on-cache-miss: true
key: artifacts-${{ github.sha }}
path: |
ethereum/artifacts
ethereum/cache
ethereum/typechain
- name: Restore artifacts cache
uses: actions/cache/restore@v3
with:
fail-on-cache-miss: true
key: artifacts-zk-${{ github.sha }}
path: |
zksync/artifacts-zk
zksync/cache-zk
zksync/typechain
- name: Run Era test node
uses: dutterbutter/era-test-node-action@latest
- name: Run tests
run: yarn hardhat test
check-verifier-generator:
runs-on: ubuntu-latest
steps:
- name: Checkout the repository
uses: actions/checkout@v3
with:
submodules: "recursive"
- name: Install rust
uses: actions-rs/toolchain@v1
with:
toolchain: 1.72.0
- name: Generete Verifier.sol
working-directory: tools
run: cargo run
- name: Compare
run: diff tools/data/Verifier.sol ethereum/contracts/zksync/Verifier.sol