on: push name: CI Build jobs: ci: runs-on: ubuntu-latest strategy: matrix: rust: - stable - beta - nightly steps: - uses: actions/checkout@v1 - uses: actions-rs/toolchain@v1 with: profile: minimal toolchain: ${{ matrix.rust }} override: true components: rustfmt, clippy - uses: actions-rs/cargo@v1 with: command: build args: --release - uses: actions-rs/cargo@v1 with: command: test args: --release - uses: actions-rs/cargo@v1 with: command: fmt args: --all -- --check - uses: actions-rs/cargo@v1 with: command: clippy args: -- -D warnings - name: Run cargo-tarpaulin uses: actions-rs/tarpaulin@v0.1 with: version: '0.15.0' out-type: Xml run-types: 'Tests' args: '-- --test-threads 1' - name: Upload to codecov.io uses: codecov/codecov-action@v1.0.2 with: token: ${{ secrets.CODECOV_SECRET }} - name: Archive code coverage results uses: actions/upload-artifact@v1 with: name: code-coverage-report path: cobertura.xml - name: Archive build uses: actions/upload-artifact@v2 with: name: receqif path: target/release/receqif