Skip to content

Merge pull request #724 from martinthomson/upgrade-iterator #2738

Merge pull request #724 from martinthomson/upgrade-iterator

Merge pull request #724 from martinthomson/upgrade-iterator #2738

Workflow file for this run

name: CI
on:
push:
paths:
- '**/Cargo.toml'
- '**/Cargo.lock'
- 'src/**/*'
- 'benches/**/*'
- 'tests/**/*'
pull_request:
paths:
- '**/Cargo.toml'
- '**/Cargo.lock'
- 'src/**/*'
- 'benches/**/*'
- 'tests/**/*'
jobs:
basic:
name: Basic Checks
env:
CARGO_TERM_COLOR: always
RUSTFLAGS: -D warnings
RUSTDOCFLAGS: -D warnings
CARGO_INCREMENTAL: 0
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- uses: dtolnay/rust-toolchain@stable
with:
components: clippy,rustfmt
- uses: actions/cache@v3
with:
path: |
~/.cargo/bin/
~/.cargo/registry/index/
~/.cargo/registry/cache/
~/.cargo/git/db/
target/
key: ${{ runner.os }}-cargo-${{ hashFiles('**/Cargo.toml') }}
- name: Check formatting
run: cargo fmt --all -- --check --config imports_granularity=Crate
- name: Clippy
if: ${{ success() || failure() }}
run: cargo clippy --tests
- name: Clippy concurrency tests
if: ${{ success() || failure() }}
run: cargo clippy --tests --features shuttle
- name: Build
if: ${{ success() || failure() }}
run: cargo build --tests
- name: Run Tests
run: cargo test
- name: Run Web Tests
run: cargo test --no-default-features --features "cli web-app real-world-infra test-fixture"
extra:
name: Additional Builds and Concurrency Tests
env:
CARGO_TERM_COLOR: always
RUSTFLAGS: -D warnings -C target-cpu=native
RUSTDOCFLAGS: -D warnings
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- uses: dtolnay/rust-toolchain@stable
with:
components: clippy,rustfmt
- uses: actions/cache@v3
with:
path: |
~/.cargo/bin/
~/.cargo/registry/index/
~/.cargo/registry/cache/
~/.cargo/git/db/
target/
key: ${{ runner.os }}-cargo-${{ hashFiles('**/Cargo.toml') }}
- name: Release Build
run: cargo build --release
- name: Build benchmarks
run: cargo build --benches --no-default-features --features enable-benches
- name: Build concurrency tests
run: cargo build --release --features shuttle
- name: Build concurrency tests (debug mode)
run: cargo build --features shuttle
- name: Run concurrency tests
run: cargo test --release --features shuttle
- name: Run IPA bench
run: cargo bench --bench oneshot_ipa --no-default-features --features enable-benches