-
-
Notifications
You must be signed in to change notification settings - Fork 57
41 lines (38 loc) · 1.23 KB
/
benchmarks.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
name: Benchmarks
on:
workflow_dispatch: {}
schedule:
- cron: '0 0 * * *'
jobs:
check_changes:
runs-on: ubuntu-latest
name: Check latest commit
outputs:
should_run: ${{steps.should_run.outputs.should_run}}
steps:
- uses: actions/checkout@v2
- name: print latest_commit
run: echo ${{github.sha}}
- id: should_run
continue-on-error: true
name: check latest commit is less than a day
if: ${{ github.event_name == 'schedule' }}
run: test -z $(git rev-list --after="24 hours" ${{github.sha}}) && echo "::set-output name=should_run::false"
benchmark:
needs: check_changes
if: ${{needs.check_changes.outputs.should_run != 'false'}}
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- uses: dtolnay/rust-toolchain@nightly
- run: cd crates/steel-core && cargo bench --bench my_benchmark -- --output-format bencher | tee output.txt
- uses: actions/cache@v1
with:
path: ./cache
key: ${{ runner.os }}-benchmark
- uses: rhysd/github-action-benchmark@v1
with:
tool: 'cargo'
output-file-path: crates/steel-core/output.txt
github-token: ${{secrets.GITHUB_TOKEN}}
auto-push: true