Split 2d and 3d tests to gain CI time. #910
Workflow file for this run
This file contains hidden or 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: Rust | |
| on: | |
| push: | |
| branches: [master] | |
| pull_request: | |
| branches: [master] | |
| env: | |
| CARGO_TERM_COLOR: always | |
| RUST_CACHE_KEY: rust-cache-20240701 | |
| CARGO_PROFILE_DEV_DEBUG: none | |
| jobs: | |
| check-fmt: | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - uses: dtolnay/rust-toolchain@stable | |
| with: | |
| components: rustfmt | |
| - name: Check formatting | |
| run: cargo fmt -- --check | |
| doc: | |
| runs-on: ubuntu-latest | |
| env: | |
| RUSTDOCFLAGS: -D warnings | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - uses: dtolnay/rust-toolchain@stable | |
| - uses: Swatinem/rust-cache@v2 | |
| with: | |
| prefix-key: ${{ env.RUST_CACHE_KEY }} | |
| - run: sudo apt update && sudo apt-get install pkg-config libx11-dev libasound2-dev libudev-dev | |
| - name: Cargo doc | |
| run: cargo doc --no-deps | |
| test-and-clippy: | |
| runs-on: ubuntu-latest | |
| env: | |
| RUSTFLAGS: -D warnings | |
| strategy: | |
| matrix: | |
| dim: [2, 3] | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - uses: dtolnay/rust-toolchain@stable | |
| with: | |
| components: clippy | |
| - uses: Swatinem/rust-cache@v2 | |
| with: | |
| prefix-key: ${{ env.RUST_CACHE_KEY }} | |
| - run: sudo apt update && sudo apt-get install pkg-config libx11-dev libasound2-dev libudev-dev | |
| - name: Clippy for bevy_rapier${{ matrix.dim }}d | |
| run: cargo clippy --verbose -p bevy_rapier${{ matrix.dim }}d | |
| - name: Clippy for bevy_rapier${{ matrix.dim }}d (debug-render, simd, serde) | |
| run: cargo clippy --verbose -p bevy_rapier${{ matrix.dim }}d --features debug-render-${{ matrix.dim }}d,simd-stable,serde-serialize | |
| - name: Test for bevy_rapier${{ matrix.dim }}d | |
| run: cargo test --verbose -p bevy_rapier${{ matrix.dim }}d | |
| - name: Unit Tests for bevy_rapier${{ matrix.dim }}d without default features | |
| # cargo test by default also tests examples, which most need the debug render feature, so we pass `--lib` to only test the library | |
| run: cargo test -p bevy_rapier${{ matrix.dim }}d --no-default-features --features dim${{ matrix.dim }} --lib | |
| test-no-ambiguity: | |
| runs-on: ubuntu-latest | |
| env: | |
| RUSTFLAGS: -D warnings | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - uses: dtolnay/rust-toolchain@stable | |
| - uses: Swatinem/rust-cache@v2 | |
| with: | |
| prefix-key: ${{ env.RUST_CACHE_KEY }} | |
| - run: sudo apt update && sudo apt-get install pkg-config libx11-dev libasound2-dev libudev-dev | |
| - name: Test for no conflicting system order ambiguity | |
| run: cargo run --bin ambiguity_detection | |
| test-all-features: | |
| runs-on: ubuntu-latest | |
| env: | |
| RUSTFLAGS: -D warnings | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - uses: dtolnay/rust-toolchain@stable | |
| - uses: Swatinem/rust-cache@v2 | |
| with: | |
| prefix-key: ${{ env.RUST_CACHE_KEY }} | |
| - run: sudo apt update && sudo apt-get install pkg-config libx11-dev libasound2-dev libudev-dev | |
| - run: cargo install cargo-all-features | |
| - name: Check all features individually | |
| run: cargo check-all-features | |
| test-wasm: | |
| runs-on: ubuntu-latest | |
| env: | |
| RUSTFLAGS: -D warnings | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - uses: dtolnay/rust-toolchain@stable | |
| with: | |
| components: clippy | |
| targets: wasm32-unknown-unknown | |
| - uses: Swatinem/rust-cache@v2 | |
| with: | |
| prefix-key: ${{ env.RUST_CACHE_KEY }} | |
| - name: Clippy bevy_rapier2d | |
| run: cd bevy_rapier2d && cargo clippy --verbose --features bevy/webgl2 --target wasm32-unknown-unknown | |
| - name: Clippy bevy_rapier3d | |
| run: cd bevy_rapier3d && cargo clippy --verbose --features bevy/webgl2 --target wasm32-unknown-unknown |