name: RustDeploy
on:
push:
branches: [ master, main ]
jobs:
build:
runs-on: ubuntu-latest
strategy:
matrix:
rust: [stable]
steps:
- uses: actions/checkout@v1
- uses: hecrj/setup-rust-action@master
with:
rust-version: ${{ matrix.rust }}
- name: Build
run: cargo build --verbose
- name: Run tests
run: cargo test --verbose
- name: Document
run: cargo doc
- name: Publish
run: cargo publish --token ${{ secrets.CARGO_TOKEN }} --allow-dirty || true
bench:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v1
- uses: hecrj/setup-rust-action@master
with:
rust-version: nightly
- name: benchmark
run: cargo bench | tee output.txt
- name: Store benchmark result
uses: rhysd/github-action-benchmark@v1
with:
tool: 'cargo'
output-file-path: output.txt
github-token: ${{ secrets.PERSONAL_GITHUB_TOKEN }}
auto-push: true
alert-threshold: '200%'
comment-on-alert: true
fail-on-alert: true