Skip to content

Rust (Build & Test)

Rust (Build & Test) #1

Workflow file for this run

name: Rust (Build & Test)
on:
push:
branches: [ "main" ]
pull_request:
branches: [ "main" ]
workflow_dispatch:
env:
CARGO_TERM_COLOR: always
RUST_BACKTRACE: 1
jobs:
testing:
strategy:
fail-fast: true
matrix:
os: ["ubuntu-22.04", "windows-2022"]
runs-on: ${{ matrix.os }}
steps:
- uses: actions/checkout@v3
- uses: actions/cache@v3
with:
path: |
~/.cargo/bin/
~/.cargo/registry/index/
~/.cargo/registry/cache/
~/.cargo/git/db/
target/
key: ${{ matrix.os }}-cargo-${{ hashFiles('**/Cargo.toml') }}
- uses: actions-rs/toolchain@v1
with:
toolchain: stable
components: rustfmt, clippy
- name: Lint rust code
run: cargo clippy -- -D warnings
- name: Attempt to build (debug)
run: cargo build --verbose
- name: Run tests
run: cargo test --verbose
- name: Upload target directory
uses: actions/upload-artifact@v3
with:
name: build-artifacts
path: target/