diff options
Diffstat (limited to 'third_party/rust/naga/.github/workflows/pipeline.yml')
-rw-r--r-- | third_party/rust/naga/.github/workflows/pipeline.yml | 100 |
1 files changed, 100 insertions, 0 deletions
diff --git a/third_party/rust/naga/.github/workflows/pipeline.yml b/third_party/rust/naga/.github/workflows/pipeline.yml new file mode 100644 index 0000000000..46c427ee0f --- /dev/null +++ b/third_party/rust/naga/.github/workflows/pipeline.yml @@ -0,0 +1,100 @@ +# Regular testing. +name: pipeline +on: [push, pull_request] + +jobs: + test-msrv: + name: Test MSRV and dependencies minimal-versions + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v2 + - uses: actions-rs/toolchain@v1 + with: + profile: minimal + toolchain: "1.56.0" + override: true + - uses: taiki-e/install-action@cargo-hack + - uses: taiki-e/install-action@cargo-minimal-versions + # nightly is only used by cargo-minimal-versions to regenerate the lock file + - run: rustup toolchain add nightly --no-self-update + - name: Test all features + run: cargo minimal-versions test --all-features --workspace + - name: Check snapshots + run: git diff --exit-code -- tests/out + test: + name: Test Nightly + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v2 + - uses: actions-rs/toolchain@v1 + with: + profile: minimal + toolchain: nightly + override: true + - uses: actions-rs/cargo@v1 + name: Default test + with: + # Our intention here is to test `naga` with no features enabled. But + # since `cli` is the default package, a plain `cargo test` will build + # `naga` with the features requested in `cli/Cargo.toml`. Passing + # `--package naga` causes us to use the default features in the + # top-level `Cargo.toml` instead. + command: test + args: --package naga + - uses: actions-rs/cargo@v1 + name: Test all features + with: + command: test + args: --all-features --workspace + - name: Check snapshots + run: git diff --exit-code -- tests/out + - uses: actions-rs/cargo@v1 + name: Check benchmarks + with: + command: check + args: --benches + clippy: + name: Clippy + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v2 + - uses: actions-rs/toolchain@v1 + with: + profile: minimal + toolchain: stable + override: true + - run: rustup component add clippy + - uses: actions-rs/cargo@v1 + with: + command: clippy + args: --all-features --workspace -- -D warnings + documentation: + name: Documentation + runs-on: ubuntu-latest + env: + RUSTDOCFLAGS: -Dwarnings + steps: + - uses: actions/checkout@v2 + - uses: actions-rs/toolchain@v1 + with: + profile: minimal + toolchain: stable + override: true + - uses: actions-rs/cargo@v1 + with: + command: doc + args: -p naga --all-features --document-private-items + fmt: + name: Format + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v2 + - uses: actions-rs/toolchain@v1 + with: + profile: minimal + toolchain: stable + override: true + components: rustfmt + - name: run rustfmt + run: | + cargo fmt -- --check |