name: CI

on: [pull_request, push]

jobs:

  ###################################################
  # Main Builds
  ###################################################

  build:
    runs-on: ${{ matrix.os }}

    strategy:
      fail-fast: false
      matrix:
        rust: [stable, beta, nightly]
        os: [ubuntu-latest, windows-latest, macOS-latest]

    steps:
      - name: Checkout
        uses: actions/checkout@v2

      - name: Install rust
        uses: actions-rs/toolchain@v1
        with:
          toolchain: ${{ matrix.rust }}
          profile: minimal
          override: true

      - uses: davidB/rust-cargo-make@v1
        with:
          version: '0.32.9'

      - name: Build and run tests
        env:
          CARGO_MAKE_RUN_CODECOV: true
        run: |
          cargo make --no-workspace workspace-ci-flow

Move to doing CI using GitHub Actions
Move to doing CI using GitHub Actions

Travis CI is now limiting open source projects
to only so much build time. Moving to GitHub
Actions allows us to not have such constrained
build resource limits.
