Skip to content

Prover

Prover #254

Workflow file for this run

name: Prover
on:
pull_request:
merge_group:
push:
branches: [main]
env:
CARGO_TERM_COLOR: always
concurrency:
group: ${{ github.workflow }}-${{ github.head_ref || github.run_id }}
cancel-in-progress: true
permissions: {}
jobs:
prover-perf:
name: Run prover-perf (SP1)
runs-on: ubuntu-latest
timeout-minutes: 120
permissions:
contents: read
pull-requests: write
steps:
- name: Checkout repository
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v4
with:
persist-credentials: false
- name: Install Rust toolchain
run: |
RUST_TOOLCHAIN="$(sed -n 's/^channel = "\(.*\)"/\1/p' rust-toolchain.toml)"
rustup toolchain install "$RUST_TOOLCHAIN" --profile minimal
rustup default "$RUST_TOOLCHAIN"
- name: Rust cache
uses: Swatinem/rust-cache@c19371144df3bb44fab255c43d04cbc2ab54d1c4 # v2
with:
cache-on-failure: true
- name: Install SP1 Toolchain
run: |
curl -fsSL --proto '=https' --tlsv1.2 https://sp1.succinct.xyz | bash
~/.sp1/bin/sp1up
echo "$HOME/.sp1/bin" >> "$GITHUB_PATH"
- name: Check SP1 toolchain
run: cargo prove --version
- name: Run prover-perf and post PR comment
if: github.event_name == 'pull_request' && github.event.pull_request.head.repo.fork == false
env:
ZKVM_MOCK: "1"
ZKVM_PROFILING: "1"
run: |
cargo run --release -p strata-asm-prover-perf -- \
--post-to-gh \
--github-token "${{ secrets.GITHUB_TOKEN }}" \
--pr-number "${{ github.event.pull_request.number }}" \
--commit-hash "${{ github.sha }}" \
--github-repo "${{ github.repository }}" \
--programs asm-stf,moho
- name: Run prover-perf
if: github.event_name != 'pull_request' || github.event.pull_request.head.repo.fork == true
env:
ZKVM_MOCK: "1"
ZKVM_PROFILING: "1"
run: |
cargo run --release -p strata-asm-prover-perf -- --programs asm-stf