mirror of
https://github.com/zellij-org/zellij.git
synced 2024-11-27 06:25:42 +03:00
6689f67436
Install `cargo-make` explicitly in the workflow, even tough it should be cached from the previous steps. There are some corner cases in which gh messes the caching up and can't access it.
79 lines
1.8 KiB
YAML
79 lines
1.8 KiB
YAML
name: Rust
|
|
|
|
on:
|
|
push:
|
|
branches: [ main ]
|
|
pull_request:
|
|
branches: [ main ]
|
|
|
|
env:
|
|
CARGO_TERM_COLOR: always
|
|
|
|
jobs:
|
|
build:
|
|
name: Build & Test
|
|
|
|
strategy:
|
|
fail-fast: false
|
|
matrix:
|
|
os: [ ubuntu-latest, macos-latest ]
|
|
|
|
runs-on: ${{ matrix.os }}
|
|
|
|
steps:
|
|
- uses: actions/checkout@v3
|
|
- uses: actions/cache@v3
|
|
with:
|
|
path: |
|
|
~/.cargo/bin/
|
|
~/.cargo/registry
|
|
~/.cargo/git
|
|
target
|
|
key: ${{ runner.os }}-cargo-${{ hashFiles('**/Cargo.lock') }}
|
|
- name: Add WASM target
|
|
run: rustup target add wasm32-wasi
|
|
- name: Install cargo-make
|
|
run: test -x "${HOME}/.cargo/bin/cargo-make" || cargo install --debug cargo-make
|
|
- name: Build
|
|
run: cargo make build
|
|
- name: Test
|
|
run: cargo make test
|
|
|
|
format:
|
|
name: Check Formatting
|
|
runs-on: ubuntu-latest
|
|
|
|
steps:
|
|
- uses: actions/checkout@v3
|
|
- uses: actions/cache@v3
|
|
with:
|
|
path: |
|
|
~/.cargo/bin/
|
|
~/.cargo/registry
|
|
~/.cargo/git
|
|
target
|
|
key: ${{ runner.os }}-cargo-${{ hashFiles('**/Cargo.lock') }}
|
|
- name: Install cargo-make
|
|
run: test -x "${HOME}/.cargo/bin/cargo-make" || cargo install --debug cargo-make
|
|
- name: Check Format
|
|
run: cargo make check-format
|
|
|
|
clippy:
|
|
name: Check Clippy Lints
|
|
runs-on: ubuntu-latest
|
|
|
|
steps:
|
|
- uses: actions/checkout@v3
|
|
- uses: actions/cache@v3
|
|
with:
|
|
path: |
|
|
~/.cargo/bin/
|
|
~/.cargo/registry
|
|
~/.cargo/git
|
|
target
|
|
key: ${{ runner.os }}-cargo-${{ hashFiles('**/Cargo.lock') }}
|
|
- name: Install cargo-make
|
|
run: test -x "${HOME}/.cargo/bin/cargo-make" || cargo install --debug cargo-make
|
|
- name: Check clippy lints
|
|
run: cargo make clippy
|