Skip to content

Daily benchmark

Daily benchmark #26

Workflow file for this run

name: Daily
on:
# Run daily at midnight.
schedule:
- cron: 0 0 * * *
# Run whenever this workflow is changed.
push:
branches: [main]
# Allow running manually.
workflow_dispatch:
env:
# Force colorful output, even though we're running in Github Actions.
CARGO_TERM_COLOR: always
jobs:
bench:
name: Run benchmarks
runs-on: ubuntu-latest
steps:
- name: Checkout repository
uses: actions/checkout@v4
- name: Install Rust
uses: dtolnay/rust-toolchain@stable
- name: Cache build files
uses: Leafwing-Studios/cargo-cache@v1
- name: Install Bencher
uses: bencherdev/bencher@main
# Run benchmarks, piping output to both `results.txt` and stdout.
- name: Run benchmarks
run: cargo bench -- 2>&1 | tee results.txt
- name: Upload benchmarks
env:
BENCHER_PROJECT: bevy
BENCHER_API_TOKEN: ${{ secrets.BENCHER_API_TOKEN }}
BENCHER_TESTBED: github-actions
# --no-hash: Do not use the Git hash, because we care about the Bevy commit and not our
# own.
# --file: Upload saved Criterion output instead of running a command.
run: |
bencher run \
--adapter rust_criterion \
--no-hash \
--err \
--file results.txt