mirror of
https://github.com/fluencelabs/aquavm
synced 2025-03-28 02:11:03 +00:00
* Fix stale benchmarks * Data (de)serialization and execution benchmarks: Two kind of benchmark: relatively short, but with huge call results, and long trace of small call results. Moreover, there are two case for each: with same data to be merged with comparison, and data from different par branches merged w/o comparison.
61 lines
1.5 KiB
YAML
61 lines
1.5 KiB
YAML
name: "aquavm"
|
|
|
|
on:
|
|
pull_request:
|
|
|
|
concurrency:
|
|
group: "${{ github.workflow }}-${{ github.ref }}"
|
|
cancel-in-progress: true
|
|
|
|
jobs:
|
|
air:
|
|
name: "Run aquavm tests"
|
|
runs-on: builder
|
|
|
|
env:
|
|
RUST_BACKTRACE: 1
|
|
RUST_TEST_THREADS: 1
|
|
CARGO_TERM_COLOR: always
|
|
|
|
steps:
|
|
- uses: actions/checkout@v3
|
|
|
|
- uses: actions-rs/toolchain@v1
|
|
with:
|
|
toolchain: nightly-2022-06-29
|
|
target: wasm32-wasi
|
|
components: rustfmt, clippy
|
|
|
|
- name: "Cache rust"
|
|
uses: Swatinem/rust-cache@v1
|
|
|
|
- name: "Download marine"
|
|
run: .github/download_marine.sh
|
|
|
|
- name: "Build Wasm binary for interpreter"
|
|
run: marine build --features marine
|
|
working-directory: air-interpreter
|
|
|
|
- name: "Build Wasm binary for tests"
|
|
run: ./build_test_binaries.sh
|
|
working-directory: air/tests/test_module
|
|
|
|
- name: "cargo fmt"
|
|
run: cargo fmt --all -- --check
|
|
|
|
- name: "cargo check"
|
|
run: cargo check
|
|
|
|
- name: "cargo test"
|
|
run: |
|
|
cargo test --release
|
|
# Check that it does compile
|
|
cargo bench --no-run
|
|
# The `memory` sanitizer on cargo test has false positive even on empty project.
|
|
for san in address leak; do
|
|
RUSTFLAGS="-Z sanitizer=$san" cargo test --features test_with_native_code --target x86_64-unknown-linux-gnu
|
|
done
|
|
|
|
- name: "cargo clippy"
|
|
run: cargo clippy -v
|