name: Rust on: push: branches: [ main ] pull_request: branches: [ main ] env: CARGO_TERM_COLOR: always jobs: build: name: Build & test runs-on: ubuntu-latest steps: - uses: actions/checkout@v2 - name: Add WASM target run: rustup target add wasm32-wasi - name: Build run: cargo build --verbose - name: Run tests run: cargo test -j 1 --verbose fmt: name: Rustfmt 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 rustfmt - uses: actions-rs/cargo@v1 with: command: fmt args: --all -- --check clippy: name: Clippy runs-on: ubuntu-latest steps: - uses: actions/checkout@v1 - uses: actions-rs/toolchain@v1 with: toolchain: stable components: clippy - name: Add WASM target run: rustup target add wasm32-wasi - uses: actions-rs/cargo@v1 with: command: clippy args: --all-features --all-targets