Improve GA config #4
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Windsock Benches | ||
on: | ||
push: | ||
branches: [ main ] | ||
pull_request: | ||
branches: [ main ] | ||
# Cancel already running jobs | ||
concurrency: | ||
group: windsock_benches_${{ github.head_ref }} | ||
cancel-in-progress: true | ||
env: | ||
CARGO_TERM_COLOR: always | ||
RUST_BACKTRACE: 1 | ||
jobs: | ||
windsock_benches: | ||
name: "Windsock benches" | ||
runs-on: ubuntu-20.04 | ||
steps: | ||
- uses: actions/checkout@v3 | ||
- uses: Swatinem/rust-cache@v2 | ||
# This workflow can get everything it needs from the `build_check_and_upload` cache. | ||
# So to keep our cache usage down we manually recreate the key used by ubuntu-20.04 release builds. | ||
shared-key: "ubuntu-20.04 - --release-build_check_and_upload" | ||
save-if: false | ||
- name: Ensure that custom benches run | ||
run: | | ||
cargo windsock --bench-length-seconds 5 --operations-per-second 100 | ||
cargo windsock --bench-length-seconds 5 --operations-per-second 100 --profilers flamegraph --name cassandra,compression=none,driver=scylla,operation=read_i64,protocol=v4,shotover=standard,topology=single | ||
cargo windsock --bench-length-seconds 5 --operations-per-second 100 --profilers sys_monitor --name kafka,shotover=standard,size=1B,topology=single | ||
# windsock/examples/cassandra.rs - this can stay here until windsock is moved to its own repo | ||
cargo run --release --example cassandra -- --bench-length-seconds 5 --operations-per-second 100 | ||
- name: Ensure that tests did not create or modify any files that arent .gitignore'd | ||
run: | | ||
if [ -n "$(git status --porcelain)" ]; then | ||
git status | ||
exit 1 | ||
fi |