name: Rust on: push: branches: [ master ] pull_request: branches: [ master ] env: CARGO_TERM_COLOR: always jobs: build: runs-on: ubuntu-latest steps: - name: Checkout sources uses: actions/checkout@v2 - name: Install rust toolchain uses: actions-rs/toolchain@v1 with: profile: minimal toolchain: stable override: true components: rustfmt, clippy - name: Setup rust smart caching uses: Swatinem/rust-cache@v1.3.0 - name: Cargo fmt uses: actions-rs/cargo@v1 with: command: fmt args: --all -- --check - name: Cargo clippy uses: actions-rs/cargo@v1 with: command: clippy args: --no-deps -- -D warnings - name: Cargo build uses: actions-rs/cargo@v1 with: command: build - name: Cargo test uses: actions-rs/cargo@v1 with: command: test