Experiment with multiple jobs in a workflow #3
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: Circuits | |
on: [push] | |
jobs: | |
setup: | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v4 | |
- name: Use Node.js 20.x | |
uses: actions/setup-node@v3 | |
with: | |
node-version: '20.x' | |
- name: Enable Corepack and Install Yarn 4 | |
run: | | |
corepack enable | |
yarn set version latest | |
- name: Install Dependencies | |
run: yarn install | |
- name: Install Nargo | |
uses: noir-lang/noirup@v0.1.3 | |
with: | |
toolchain: 0.23.0 | |
profiling: | |
name: Profiling | |
needs: setup | |
runs-on: ubuntu-latest | |
steps: | |
- name: Run nargo info | |
run: nargo info --workspace --silence-warnings | tee profiling_info.txt | |
- name: Archive profiling artifacts | |
uses: actions/upload-artifact@v4 | |
with: | |
name: profiling_info | |
path: | | |
profiling_info.txt | |
tests: | |
name: Tests | |
needs: setup | |
runs-on: ubuntu-latest | |
steps: | |
- name: Run Tests | |
run: nargo test --workspace | |
e2e-tests: | |
name: E2E Tests | |
needs: setup | |
runs-on: 32-core-ubuntu-runner | |
environment: CI | |
env: | |
ETHEREUM_JSON_RPC_API_URL: ${{ secrets.ETHEREUM_JSON_RPC_API_URL }} | |
steps: | |
- name: Compile Circuit | |
run: nargo compile --workspace | |
- name: Start Oracle Server | |
working-directory: ethereum_history_api/oracles | |
run: | | |
yarn oracle-server & | |
ORACLE_SERVER_PID=$! | |
echo "ORACLE_SERVER_PID=$ORACLE_SERVER_PID" >> $GITHUB_ENV | |
- name: Generate Proof | |
run: | | |
nargo prove --package get_header --oracle-resolver=http://localhost:5555 | |
nargo prove --package get_account --oracle-resolver=http://localhost:5555 | |
- name: Veirfy Proof | |
run: | | |
nargo verify --package get_header | |
nargo verify --package get_account | |
- name: Stop Oracle Server | |
if: always() | |
run: kill $ORACLE_SERVER_PID |