name: build
on: [push]
jobs:
build:
runs-on: ${{ matrix.os }}
strategy:
matrix:
os: [ubuntu-latest, windows-latest, macOS-latest]
rust: [stable, nightly]
steps:
- uses: actions/checkout@master
- uses: hecrj/setup-rust-action@v1
with:
rust-version: ${{ matrix.rust }}
- name: Build
run: cargo build --all-features --release --verbose
- name: Run tests
run: cargo test --all-features --release --verbose
- uses: actions/upload-artifact@master
if: matrix.os == 'ubuntu-latest' && matrix.rust == 'stable'
with:
name: minittc-ubuntu
path: target/release/minittc
- uses: actions/upload-artifact@master
if: matrix.os == 'macOS-latest' && matrix.rust == 'stable'
with:
name: minittc-macos
path: target/release/minittc
- uses: actions/upload-artifact@master
if: matrix.os == 'windows-latest' && matrix.rust == 'stable'
with:
name: minittc-windows
path: target/release/minittc.exe