name: Main
on:
push:
branches: [main]
jobs:
build-linux:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v2
- name: Rust cargo cache
uses: actions/cache@v1
env:
cache-name: cache-rust-cargo
with:
path: |
~/.cargo
target
key: ${{ runner.os }}-build-${{ env.cache-name }}
- name: Rust toolchain
uses: actions-rs/toolchain@v1
with:
toolchain: stable
- run: |
cargo build --verbose --all
cargo test --verbose
cargo doc --verbose
- uses: "marvinpinto/action-automatic-releases@latest"
with:
repo_token: "${{ secrets.GITHUB_TOKEN }}"
automatic_release_tag: "latest"
prerelease: true
draft: false
title: "Development Build"
build-windows:
runs-on: windows-latest
steps:
- name: Checkout
uses: actions/checkout@v2
- name: Rust cargo cache
uses: actions/cache@v1
env:
cache-name: cache-rust-cargo
with:
path: |
~/.cargo
target
key: ${{ runner.os }}-build-${{ env.cache-name }}
- name: Rust toolchain
uses: actions-rs/toolchain@v1
with:
toolchain: stable
- run: |
cargo build --verbose --all
cargo test --verbose
cargo doc --verbose
build-macos:
runs-on: macos-latest
steps:
- name: Checkout
uses: actions/checkout@v2
- name: Rust cargo cache
uses: actions/cache@v1
env:
cache-name: cache-rust-cargo
with:
path: |
~/.cargo
target
key: ${{ runner.os }}-build-${{ env.cache-name }}
- name: Rust toolchain
uses: actions-rs/toolchain@v1
with:
toolchain: stable
- run: |
cargo build --verbose --all
cargo test --verbose
cargo doc --verbose