Skip to content

add select edge case tests (#348) #610

add select edge case tests (#348)

add select edge case tests (#348) #610

Workflow file for this run

name: bench
on:
workflow_dispatch:
push:
branches: [master]
schedule:
- cron: "42 9 * * *"
permissions:
contents: write
concurrency:
group: bench-${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
jobs:
rowbinary:
name: "${{ matrix.script }}"
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
include:
- script: bench/encode.exs
suite_name: Ch RowBinary Encode
artifact_name: encode-benchmark
output_path: bench/output/encode-github-action-benchmark.json
- script: bench/decode.exs
suite_name: Ch RowBinary Decode
artifact_name: decode-benchmark
output_path: bench/output/decode-github-action-benchmark.json
env:
MIX_ENV: bench
BENCHMARK_OUTPUT_PATH: ${{ matrix.output_path }}
steps:
- uses: actions/checkout@v6
- id: beam
uses: erlef/setup-beam@v1
with:
elixir-version: 1.19
otp-version: 28
- uses: actions/cache@v5
with:
path: |
deps
_build
key: bench-${{ steps.beam.outputs.elixir-version }}-${{ steps.beam.outputs.otp-version }}-${{ hashFiles('**/mix.lock') }}
restore-keys: |
bench-${{ steps.beam.outputs.elixir-version }}-${{ steps.beam.outputs.otp-version }}-
- run: mix deps.get --only $MIX_ENV
- run: mix compile --warnings-as-errors
- run: mix run ${{ matrix.script }}
- uses: actions/upload-artifact@v7
with:
name: ${{ matrix.artifact_name }}
path: ${{ matrix.output_path }}
- name: Publish benchmark history
uses: benchmark-action/github-action-benchmark@v1
with:
name: ${{ matrix.suite_name }}
tool: customBiggerIsBetter
output-file-path: ${{ matrix.output_path }}
github-token: ${{ secrets.GITHUB_TOKEN }}
auto-push: ${{ github.event_name != 'pull_request' }}
comment-always: ${{ github.event_name == 'pull_request' }}
comment-on-alert: ${{ github.event_name == 'pull_request' }}
save-data-file: ${{ github.event_name != 'pull_request' }}
fail-on-alert: false
alert-threshold: "120%"
benchmark-data-dir-path: dev/bench
max-items-in-chart: 60