43 lines
1.0 KiB
YAML
43 lines
1.0 KiB
YAML
name: Continuous Integration
|
|
|
|
on:
|
|
push:
|
|
paths-ignore:
|
|
- "**/README.md"
|
|
pull_request:
|
|
workflow_dispatch:
|
|
|
|
env:
|
|
CARGO_TERM_COLOR: always
|
|
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
|
|
|
jobs:
|
|
rust-checks:
|
|
name: Rust Checks
|
|
runs-on: ubuntu-latest
|
|
strategy:
|
|
fail-fast: false
|
|
matrix:
|
|
action:
|
|
- command: build
|
|
args: --release
|
|
- command: fmt
|
|
args: --all -- --check --color always
|
|
- command: clippy
|
|
args: --all-targets --all-features --workspace -- -D warnings
|
|
steps:
|
|
- name: Checkout repository
|
|
uses: actions/checkout@v4
|
|
- name: Enable caching
|
|
uses: Swatinem/rust-cache@v2
|
|
- name: Install gcc-multilib
|
|
run: sudo apt-get install gcc-multilib
|
|
- name: Setup Rust
|
|
uses: esp-rs/xtensa-toolchain@v1.5
|
|
with:
|
|
default: true
|
|
buildtargets: esp32
|
|
ldproxy: true
|
|
- name: Run command
|
|
run: cargo ${{ matrix.action.command }} ${{ matrix.action.args }}
|