|
|
|
name: CI
|
|
|
|
|
|
|
|
on:
|
|
|
|
pull_request:
|
|
|
|
push:
|
|
|
|
branches:
|
|
|
|
- staging
|
|
|
|
- trying
|
|
|
|
|
|
|
|
jobs:
|
|
|
|
build_and_test:
|
|
|
|
name: Build and test on ${{ matrix.os }}
|
|
|
|
runs-on: ${{ matrix.os }}
|
|
|
|
strategy:
|
|
|
|
matrix:
|
|
|
|
os: [ubuntu-latest, windows-latest, macOS-latest]
|
|
|
|
|
|
|
|
steps:
|
|
|
|
- uses: actions/checkout@master
|
|
|
|
|
|
|
|
- name: Install nightly
|
|
|
|
uses: actions-rs/toolchain@v1
|
|
|
|
with:
|
|
|
|
toolchain: nightly
|
|
|
|
override: true
|
|
|
|
|
|
|
|
- name: check
|
|
|
|
uses: actions-rs/cargo@v1
|
|
|
|
with:
|
|
|
|
command: check
|
|
|
|
args: --all --benches --bins --examples --tests
|
|
|
|
|
|
|
|
- name: check unstable
|
|
|
|
uses: actions-rs/cargo@v1
|
|
|
|
with:
|
|
|
|
command: check
|
|
|
|
args: --features unstable --all --benches --bins --examples --tests
|
|
|
|
|
|
|
|
- name: tests
|
|
|
|
uses: actions-rs/cargo@v1
|
|
|
|
with:
|
|
|
|
command: test
|
|
|
|
args: --all --doc --features unstable
|
|
|
|
|
|
|
|
check_fmt_and_docs:
|
|
|
|
name: Checking fmt and docs
|
|
|
|
runs-on: ubuntu-latest
|
|
|
|
steps:
|
|
|
|
- uses: actions/checkout@master
|
|
|
|
|
|
|
|
- id: component
|
|
|
|
uses: actions-rs/components-nightly@v1
|
|
|
|
with:
|
|
|
|
component: rustfmt
|
|
|
|
|
|
|
|
- uses: actions-rs/toolchain@v1
|
|
|
|
with:
|
|
|
|
toolchain: ${{ steps.component.outputs.toolchain }}
|
|
|
|
override: true
|
|
|
|
|
|
|
|
- name: setup
|
|
|
|
run: |
|
|
|
|
rustup component add rustfmt
|
|
|
|
test -x $HOME/.cargo/bin/mdbook || ./ci/install-mdbook.sh
|
|
|
|
rustc --version
|
|
|
|
|
|
|
|
- name: mdbook
|
|
|
|
run: |
|
|
|
|
mdbook build docs
|
|
|
|
- name: fmt
|
|
|
|
run: cargo fmt --all -- --check
|
|
|
|
|
|
|
|
- name: Docs
|
|
|
|
run: cargo doc --features docs
|
|
|
|
|
|
|
|
clippy_check:
|
|
|
|
name: Clippy check
|
|
|
|
runs-on: ubuntu-latest
|
|
|
|
steps:
|
|
|
|
- uses: actions/checkout@v1
|
|
|
|
- id: component
|
|
|
|
uses: actions-rs/components-nightly@v1
|
|
|
|
with:
|
|
|
|
component: clippy
|
|
|
|
- uses: actions-rs/toolchain@v1
|
|
|
|
with:
|
|
|
|
toolchain: ${{ steps.component.outputs.toolchain }}
|
|
|
|
override: true
|
|
|
|
- run: rustup component add clippy
|
|
|
|
- uses: actions-rs/clippy-check@v1
|
|
|
|
with:
|
|
|
|
token: ${{ secrets.GITHUB_TOKEN }}
|