chore: release v5.3.0 (#454) #161
This file contains hidden or 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: Flamegraphs | |
| on: | |
| push: | |
| branches: [main] | |
| workflow_dispatch: | |
| concurrency: | |
| group: ${{ github.workflow }}-${{ github.ref }} | |
| cancel-in-progress: true | |
| env: | |
| CARGO_TERM_COLOR: always | |
| jobs: | |
| flamegraph: | |
| name: Generate flamegraphs | |
| runs-on: ubuntu-latest | |
| timeout-minutes: 20 | |
| permissions: | |
| contents: write | |
| steps: | |
| - uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6.0.3 | |
| with: | |
| # peaceiris/actions-gh-pages uses its own github_token input; | |
| # no git config credentials are needed for the bench → gh-pages | |
| # publish flow. | |
| persist-credentials: false | |
| - uses: dtolnay/rust-toolchain@29eef336d9b2848a0b548edc03f92a220660cdb8 # stable | |
| with: | |
| toolchain: stable | |
| - uses: Swatinem/rust-cache@c19371144df3bb44fab255c43d04cbc2ab54d1c4 # v2.9.1 | |
| with: | |
| prefix-key: flamegraph | |
| - name: Install inferno | |
| run: | | |
| if ! command -v inferno-flamegraph &> /dev/null; then | |
| cargo install inferno --locked | |
| fi | |
| - name: Run instrumented benchmarks | |
| run: | | |
| cargo run --release --manifest-path tools/db_bench/Cargo.toml \ | |
| --features flamegraph -- \ | |
| --benchmark all --num 100000 --flamegraph | |
| - name: Generate flamegraph SVG | |
| run: | | |
| cd target/flamegraphs | |
| inferno-flamegraph --title "db_bench all workloads" all.folded > flamegraph.svg | |
| rm -f all.folded | |
| - name: Deploy to gh-pages | |
| if: github.ref == 'refs/heads/main' | |
| uses: peaceiris/actions-gh-pages@84c30a85c19949d7eee79c4ff27748b70285e453 # v4.1.0 | |
| with: | |
| github_token: ${{ secrets.GITHUB_TOKEN }} | |
| publish_dir: ./target/flamegraphs | |
| destination_dir: flamegraphs/${{ github.sha }} | |
| keep_files: true |