orchard/.github/workflows/bench.yml

34 lines
970 B
YAML

name: Benchmarks
on:
push:
branches:
- main
pull_request:
branches:
- main
env:
CARGO_TERM_COLOR: always
jobs:
build:
name: Run orchard benchmarks
runs-on: ubuntu-latest
env:
CRITERION_TOKEN: ${{ secrets.CRITERION_TOKEN }}
steps:
- uses: actions/checkout@v2
- name: Run benchmarks
run: |
# run benchmarks and save baseline to "criterion.dev.temp"
cargo bench -- --verbose --noplot --save-baseline criterion.dev.temp
# set the path to the file to upload to criterion.dev
echo "::set-env name=CRITERION_FILE_PATH::$(find $(find . -type d -name criterion.dev.temp) -name raw.csv)"
- name: Upload benchmarks
run: |
# upload the file
curl -F 'raw.csv=@${{ env.CRITERION_FILE_PATH }}' \
'https://api.criterion.dev/v1/${{ github.repository }}/measurements?token=${{ secrets.CRITERION_TOKEN }}&commit=${{ github.sha }}'