feat: aggregate and summarize metrics with rust #288
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: OpenVM CLI Tests | |
on: | |
push: | |
branches: ["main"] | |
pull_request: | |
branches: ["**"] | |
paths: | |
- "crates/circuits/primitives/**" | |
- "crates/vm/**" | |
- "crates/sdk/**" | |
- "crates/cli/**" | |
- "examples/**" | |
concurrency: | |
group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.sha }} | |
cancel-in-progress: true | |
env: | |
CARGO_TERM_COLOR: always | |
OPENVM_FAST_TEST: "1" | |
# TODO: E2E build, transpile, run, keygen, prove, contract, verify on large machine | |
jobs: | |
app-level-cli: | |
runs-on: | |
- runs-on=${{ github.run_id }} | |
- runner=32cpu-linux-arm64 | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: dtolnay/rust-toolchain@nightly | |
- uses: Swatinem/rust-cache@v2 | |
with: | |
cache-on-failure: true | |
- uses: taiki-e/install-action@nextest | |
- name: Install solc # svm should support arm64 linux | |
run: (hash svm 2>/dev/null || cargo install --version 0.2.23 svm-rs) && svm install 0.8.19 && solc --version | |
- name: Install tools | |
run: | | |
rustup component add rust-src --toolchain nightly-2024-10-30 | |
- name: Install cargo-openvm | |
working-directory: crates/cli | |
run: | | |
cargo install --force --locked --path . | |
- name: Build book examples | |
working-directory: examples | |
run: | | |
for dir in */; do | |
if [ -f "${dir}Cargo.toml" ]; then | |
echo "Building ${dir%/}" | |
cd "$dir" | |
cargo openvm build | |
cd .. | |
fi | |
done | |
# TODO: CLI build, transpile, run, (keygen), prove, contract, verify | |
- name: Run app-level CLI commands | |
working-directory: crates/cli | |
run: | | |
export RUST_BACKTRACE=1 | |
cargo build | |
cargo run --bin cargo-openvm -- openvm keygen --config ./example/app_config.toml --output app.pk --vk-output app.vk |