name: Build
on:
push:
branches: [ master ]
pull_request:
branches: [ master ]
jobs:
build:
strategy:
matrix:
os: [ macos-latest, ubuntu-latest ]
runs-on: ${{ matrix.os }}
steps:
- name: Checkout
uses: actions/checkout@v3
- name: Install Rust
run: curl https://sh.rustup.rs -sSf | sh -s -- -y
- name: Install C++ (Linux)
if: runner.os == 'Linux'
run: |
sudo apt update
sudo apt install -y build-essential cmake
- name: Lint
run: cargo clippy -- -Dwarnings
- name: Build
run: cargo build
- name: Test
env:
RUST_LOG: debug
RUST_BACKTRACE: 1
run: cargo test -- --test-threads 1
- name: Build release
run: cargo build --release