From 19b093d4ac68c5ae9dd835e3b17a8ef02c4c4616 Mon Sep 17 00:00:00 2001 From: Matteo Collina Date: Thu, 9 Jul 2026 11:49:33 +0200 Subject: [PATCH 1/2] meta: make benchmark category a dropdown Signed-off-by: Matteo Collina --- .github/workflows/benchmark.yml | 58 +++++++++++++++++++++++++++++++-- 1 file changed, 56 insertions(+), 2 deletions(-) diff --git a/.github/workflows/benchmark.yml b/.github/workflows/benchmark.yml index b989dd1faaef45..b0a1e73f6c3db5 100644 --- a/.github/workflows/benchmark.yml +++ b/.github/workflows/benchmark.yml @@ -16,8 +16,62 @@ on: description: The expect HEAD of the PR category: required: true - type: string - description: The category (or categories) of tests to run, for example buffers, cluster etc. Maps to a folders in node/benchmark + type: choice + description: The category of tests to run. Maps to a folder in node/benchmark + options: + - abort_controller + - assert + - async_hooks + - blob + - buffers + - child_process + - cluster + - console + - crypto + - dgram + - diagnostics_channel + - dns + - domain + - error + - es + - esm + - events + - ffi + - fs + - http + - http2 + - https + - internal + - mime + - misc + - module + - napi + - net + - os + - path + - perf_hooks + - permission + - process + - querystring + - readline + - source_map + - sqlite + - streams + - string_decoder + - test_runner + - timers + - tls + - ts + - url + - util + - v8 + - validators + - vm + - websocket + - webstorage + - webstreams + - worker + - zlib filter: type: string description: A substring to restrict the benchmarks to run in a category. e.g. `net-c2c` From 34277b187c3554968e3b57a1959630de3541e4ed Mon Sep 17 00:00:00 2001 From: Matteo Collina Date: Thu, 9 Jul 2026 11:50:57 +0200 Subject: [PATCH 2/2] meta: allow categories override for multiple categories Signed-off-by: Matteo Collina --- .github/workflows/benchmark.yml | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/.github/workflows/benchmark.yml b/.github/workflows/benchmark.yml index b0a1e73f6c3db5..d469a779f194aa 100644 --- a/.github/workflows/benchmark.yml +++ b/.github/workflows/benchmark.yml @@ -17,7 +17,7 @@ on: category: required: true type: choice - description: The category of tests to run. Maps to a folder in node/benchmark + description: The category of tests to run. Maps to a folder in node/benchmark. Ignored when `categories` is set. options: - abort_controller - assert @@ -72,6 +72,9 @@ on: - webstreams - worker - zlib + categories: + type: string + description: Space-separated list of categories to run. Overrides `category` when set, for running multiple categories at once. filter: type: string description: A substring to restrict the benchmarks to run in a category. e.g. `net-c2c` @@ -182,7 +185,7 @@ jobs: --filter "$FILTER" \ --runs ${{ inputs.runs }} \ --old ./base_node --new ./node \ - -- ${{ inputs.category }} \ + -- ${{ inputs.categories || inputs.category }} \ | tee /dev/stderr \ > ${{ matrix.system }}.csv echo "> [!WARNING] "