test: Plonk verifier in Haskell test #18
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: | |
push: | |
branches: | |
- main | |
pull_request: | |
branches: | |
- main | |
jobs: | |
build-and-test: | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout code | |
uses: actions/checkout@v3 | |
# Step 1: Set up Rust and build with Cargo | |
- name: Set up Rust | |
uses: actions-rs/toolchain@v1 | |
with: | |
toolchain: stable | |
override: true | |
- name: Build with Cargo | |
run: cargo build --release | |
# Step 2: Set up Haskell and build with Cabal | |
- name: Set up Haskell | |
uses: haskell/actions/setup@v2 | |
with: | |
ghc-version: '9.2.5' | |
cabal-version: '3.6.2.0' | |
- name: Build with Cabal | |
run: cabal build | |
# Cache PLONK params download | |
- name: Cache PLONK params | |
uses: actions/cache@v4 | |
with: | |
path: ~/.sp1/circuits/plonk_bn254/v1.0.8-testnet | |
key: plonk-params-v1.0.8-testnet | |
- name: Download and untar PLONK params (if not cached) | |
if: steps.cache-plonk-params.outputs.cache-hit != 'true' | |
run: | | |
mkdir -p ~/.sp1/circuits/plonk_bn254/v1.0.8-testnet | |
wget https://sphinx-plonk-params.s3.amazonaws.com/v1.0.8-testnet.tar.gz -O plonk_params.tar.gz | |
tar -xzf plonk_params.tar.gz -C ~/.sp1/circuits/plonk_bn254/v1.0.8-testnet | |
rm plonk_params.tar.gz | |
# Install and run nextest | |
- name: Install nextest | |
uses: taiki-e/install-action@nextest | |
- name: Run tests with nextest | |
run: cargo nextest run --release --no-fail-fast | |
# Run the Haskell test | |
- name: Run the cabal test | |
run: cabal run test |