name: Continuous Benchmarking with Bencher on: push: paths: - 'src/**' - 'benches/**' - 'ogg_pager/**' branches: - main workflow_dispatch: jobs: benchmark_with_bencher: defaults: run: working-directory: 'lofty' name: Benchmark with Bencher runs-on: ubuntu-latest env: BENCHER_PROJECT: lofty BENCHER_BRANCH: main BENCHER_API_TOKEN: ${{ secrets.BENCHER_API_TOKEN }} steps: - uses: actions/checkout@v4 - name: Install callgrind run: | sudo apt-get update sudo apt-get install -y valgrind - name: Install iai-callgrind-runner run: | version=$(cargo metadata --format-version=1 |\ jq '.packages[] | select(.name == "iai-callgrind").version' |\ tr -d '"' ) cargo install iai-callgrind-runner --version $version - uses: bencherdev/bencher@main - name: Run Bencher run: | bencher run --adapter rust_iai_callgrind --err "cargo bench"