Generating SDLP for BFV statements #895
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: | |
push: | |
branches: [ main ] | |
pull_request: | |
branches: [ main, debugger ] | |
env: | |
CARGO_TERM_COLOR: always | |
jobs: | |
build: | |
runs-on: linux-8core | |
steps: | |
- uses: actions/checkout@v3 | |
with: | |
submodules: 'recursive' | |
- uses: actions/cache@v3 | |
with: | |
path: | | |
~/.cargo/bin/ | |
~/.cargo/registry/index/ | |
~/.cargo/registry/cache/ | |
~/.cargo/git/db/ | |
target/ | |
key: ${{ runner.os }}-cargo-build-${{ hashFiles('Cargo.lock') }} | |
restore-keys: | | |
${{ runner.os }}-cargo-build- | |
${{ runner.os }}-cargo | |
- uses: actions/cache@v3 | |
with: | |
path: | | |
~/.cargo/bin/ | |
~/.cargo/registry/index/ | |
~/.cargo/registry/cache/ | |
~/.cargo/git/db/ | |
mdBook/target | |
key: ${{ runner.os }}-cargo-mdBook-${{ hashFiles('mdBook/Cargo.lock') }} | |
restore-keys: | | |
${{ runner.os }}-cargo-mdBook- | |
${{ runner.os }}-cargo- | |
# Checks are ordered from fastest to slowest so your build fails quickly on invalid PRs | |
# We do everything in release mode so tests run quickly and steps cache each other. | |
# Check the submitted change meets style guidelines | |
- name: Cargo Format | |
run: cargo fmt --check | |
# Build and run the tests | |
- name: Build and run tests | |
run: cargo test --workspace --verbose --release --features deterministic,linkedproofs | |
- name: Verify examples outside of workspace (allowlist_zkp) | |
run: cargo test --workspace --verbose | |
working-directory: ./examples/allowlist_zkp | |
- name: Build sunscreen and bincode | |
run: cargo build --release --features bulletproofs,linkedproofs --package sunscreen --package bincode | |
- name: Build mdBook | |
run: cargo build --release | |
working-directory: ./mdBook | |
- name: Test docs | |
run: ../mdBook/target/release/mdbook test -L dependency=../target/release/deps --extern sunscreen=../target/release/libsunscreen.rlib --extern bincode=../target/release/libbincode.rlib | |
working-directory: ./sunscreen_docs | |
lint: | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v3 | |
with: | |
submodules: 'recursive' | |
- uses: actions/cache@v3 | |
with: | |
path: | | |
~/.cargo/bin/ | |
~/.cargo/registry/index/ | |
~/.cargo/registry/cache/ | |
~/.cargo/git/db/ | |
target/ | |
key: ${{ runner.os }}-cargo-clippy-${{ hashFiles('Cargo.lock') }} | |
restore-keys: | | |
${{ runner.os }}-cargo-clippy- | |
${{ runner.os }}-cargo- | |
# Check the submitted change passes the clippy linter | |
- name: Cargo clippy | |
run: cargo clippy --release --all-targets -- --deny warnings | |
api_docs: | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v3 | |
with: | |
submodules: 'recursive' | |
- uses: actions/cache@v3 | |
with: | |
path: | | |
~/.cargo/bin/ | |
~/.cargo/registry/index/ | |
~/.cargo/registry/cache/ | |
~/.cargo/git/db/ | |
target/ | |
key: ${{ runner.os }}-cargo-doc-${{ hashFiles('**/Cargo.lock') }} | |
restore-keys: | | |
${{ runner.os }}-cargo-doc- | |
${{ runner.os }}-cargo- | |
# Cursory check to ensure your CL contains valid Rust code | |
- name: Cargo check | |
run: cargo check --release | |
# Check the documentation builds, links work, etc. | |
- name: Cargo doc | |
env: | |
RUSTDOCFLAGS: -D warnings | |
run: cargo doc --release --no-deps | |
emscripten: | |
runs-on: linux-8core | |
steps: | |
- uses: actions/checkout@v3 | |
with: | |
submodules: 'recursive' | |
- uses: actions/cache@v3 | |
with: | |
path: | | |
~/.cargo/bin/ | |
~/.cargo/registry/index/ | |
~/.cargo/registry/cache/ | |
~/.cargo/git/db/ | |
target/ | |
key: ${{ runner.os }}-cargo-doc-${{ hashFiles('**/Cargo.lock') }} | |
restore-keys: | | |
${{ runner.os }}-cargo-doc- | |
${{ runner.os }}-cargo- | |
- name: Install gcc-multilib (32-bit headers) | |
run: | | |
sudo apt-get update | |
sudo apt-get install gcc-multilib | |
- name: Emsdk install | |
run: emsdk/emsdk/emsdk install 3.1.3 | |
- name: Emsdk activate | |
run: emsdk/emsdk/emsdk activate 3.1.3 | |
- name: Add Rust wasm32-unknown-emscripten target | |
run: rustup target add wasm32-unknown-emscripten | |
- name: Build AMM target for Emscripten | |
run: source emsdk/emsdk/emsdk_env.sh; cargo build --bin amm --target wasm32-unknown-emscripten --release |