This repository has been archived by the owner on Mar 25, 2024. It is now read-only.
ci: new rust cacheing #82
Workflow file for this run
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: "CI" | |
on: | |
pull_request: | |
push: | |
branches: | |
- dev | |
- main | |
jobs: | |
build: | |
runs-on: ubuntu-latest | |
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 | |
- name: Install dependencies | |
run: yarn | |
- name: Build artifacts | |
run: yarn build | |
- name: Create cache | |
uses: actions/cache/save@v3 | |
with: | |
key: artifacts-${{ github.sha }} | |
path: | | |
artifacts-zk | |
cache-zk | |
typechain-types | |
contracts/artifacts | |
contracts/precompiles/artifacts | |
bootloader/build | |
lint: | |
runs-on: ubuntu-latest | |
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 | |
- name: Install dependencies | |
run: yarn | |
- name: Run lint | |
run: yarn lint | |
check_hashes: | |
needs: [build] | |
runs-on: ubuntu-latest | |
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 | |
- name: Install dependencies | |
run: yarn | |
- name: Restore artifacts cache | |
uses: actions/cache/restore@v3 | |
with: | |
fail-on-cache-miss: true | |
key: artifacts-${{ github.sha }} | |
path: | | |
artifacts-zk | |
cache-zk | |
typechain-types | |
contracts/artifacts | |
contracts/precompiles/artifacts | |
bootloader/build | |
- name: Check hashes | |
run: yarn calculate-hashes --check-only | |
test: | |
needs: [build, lint] | |
runs-on: ubuntu-latest | |
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 | |
- name: Install rust | |
uses: rustup toolchain install nightly-2023-04-17 --profile minimal | |
- name: Rust cacheing | |
uses: Swatinem/rust-cache@v2 | |
- name: Install era-test-node | |
run: cargo nightly+ install --git https://github.com/matter-labs/era-test-node.git --locked --branch boojum-integration | |
- name: Install dependencies | |
run: yarn | |
- name: Restore artifacts cache | |
uses: actions/cache/restore@v3 | |
with: | |
fail-on-cache-miss: true | |
key: artifacts-${{ github.sha }} | |
path: | | |
artifacts-zk | |
cache-zk | |
typechain-types | |
contracts/artifacts | |
contracts/precompiles/artifacts | |
bootloader/build | |
- name: Starting test node | |
run: era_test_node run > /dev/null 2>&1 & | |
- name: Run tests | |
run: yarn test | |
test_bootloader: | |
needs: [build, lint] | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout the repository | |
uses: actions/checkout@v3 | |
- 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-${{ github.sha }} | |
path: | | |
artifacts-zk | |
cache-zk | |
typechain-types | |
contracts/artifacts | |
contracts/precompiles/artifacts | |
bootloader/build | |
- name: Run bootloader tests | |
run: "cd bootloader/test_infra && cargo run" |