name: Rust
on:
push:
branches: [ main ]
pull_request:
branches: [ main ]
env:
CARGO_TERM_COLOR: always
jobs:
build:
strategy:
matrix:
toolchain: [stable]
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
with:
fetch-depth: 0
- uses: actions-rs/toolchain@v1
with:
toolchain: ${{ matrix.toolchain }}
override: true
components: clippy, rustfmt, clippy
- name: Cargo check
run: |
cargo install cargo-check
cargo check --verbose
- name: Build
run: cargo build --verbose
- name: Build tests
run: cargo test --verbose --no-run
- name: Run tests
run: cargo test --verbose --no-fail-fast -- --test-threads=1
- name: Fmt check
run: cargo fmt -- --check
- uses: actions-rs/cargo@v1
with:
command: clippy
- name: Push to coveralls.io
env:
COVERALLS_REPO_TOKEN: ${{ secrets.COVERALLS_REPO_TOKEN }}
run: |
cargo install cargo-tarpaulin
cargo tarpaulin --ciserver github-ci --coveralls $COVERALLS_REPO_TOKEN