name: Rust on: push: branches: [ master ] pull_request: branches: [ master ] env: CARGO_TERM_COLOR: always jobs: build: runs-on: ubuntu-latest steps: - name: Install build tools run: sudo apt-get update && sudo apt-get install build-essential binutils-arm-none-eabi mgba-qt -y - uses: actions/checkout@v2 - name: Nightly rust with required components uses: actions-rs/toolchain@v1 with: toolchain: nightly components: clippy, rust-src - name: Cache uses: actions/cache@v2.1.1 with: path: | ~/.cargo/registry ~/.cargo/git target key: ${{ runner.os }}-cargo-${{ hashFiles('**/Cargo.lock') }}-${{ steps.rust_install.outputs.rustc_hash }} - name: install mgba-test-runner run: cargo install --git https://github.com/corwinkuiper/mgba-test-runner.git - name: Build run: cargo build --verbose - name: Run Tests run: cargo test --verbose - name: Run Clippy run: cargo clippy --verbose