Skip to content

feat(runner): add tx-firehose standalone tx tool - #3628

Merged
mkoura merged 1 commit into
masterfrom
add_tx_firehose
Aug 19, 2026
Merged

feat(runner): add tx-firehose standalone tx tool#3628
mkoura merged 1 commit into
masterfrom
add_tx_firehose

Conversation

@mkoura

@mkoura mkoura commented Aug 19, 2026

Copy link
Copy Markdown
Collaborator

Add tx-firehose next to the existing tx-centrifuge in the regression runner, mirroring the integration in ../cardonnay/flake.nix (cardano-node ref leios-prototype). Both live on their own cardano-node refs and are built on demand, tx-centrifuge when ENABLE_TX_CENTRIFUGE is set and tx-firehose when ENABLE_TX_FIREHOSE is set.

The build logic is the same for every such tool, with the tool name as the only variable, so runner/source_tx_centrifuge.sh is generalized into runner/source_tx_tool.sh (tx_tool_build <tool> <rev> and tx_tool_print_path_prepend <tool>) and driven from a <tool>:<enable var>:<rev var>:<default rev> table in regression.sh.

That table is the single source of truth. The loop records the enabled tools in ENABLED_TX_TOOLS, which is exported and expanded into _req_cmds in the testrun step, so the availability check does not repeat the list of enable variables and adding a tool means editing one place. The list is space-separated, so tool names are rejected if they contain whitespace.

Neither tool belongs in the dev environment: having them in flake.nix would always build extra cardano-node instances from their refs just to enter the dev shell. They are therefore available only in a real testrun through regression.sh, and both are removed from
scripts/build_and_link_node_bins.sh and scripts/check_dev_env.sh (where tx-centrifuge would otherwise always be reported as missing). The now-unused common.sh sourcing in build_and_link_node_bins.sh goes away with them.

Dropping the extra flake input also re-resolved the remaining ones, so flake.lock bumps.

Add tx-firehose next to the existing tx-centrifuge in the regression
runner, mirroring the integration in ../cardonnay/flake.nix
(cardano-node ref leios-prototype). Both live on their own cardano-node
refs and are built on demand, tx-centrifuge when ENABLE_TX_CENTRIFUGE is
set and tx-firehose when ENABLE_TX_FIREHOSE is set.

The build logic is the same for every such tool, with the tool name as
the only variable, so `runner/source_tx_centrifuge.sh` is generalized
into `runner/source_tx_tool.sh` (`tx_tool_build <tool> <rev>` and
`tx_tool_print_path_prepend <tool>`) and driven from a
`<tool>:<enable var>:<rev var>:<default rev>` table in regression.sh.

That table is the single source of truth. The loop records the enabled
tools in `ENABLED_TX_TOOLS`, which is exported and expanded into
`_req_cmds` in the testrun step, so the availability check does not
repeat the list of enable variables and adding a tool means editing one
place. The list is space-separated, so tool names are rejected if they
contain whitespace.

Neither tool belongs in the dev environment: having them in flake.nix
would always build extra cardano-node instances from their refs just to
enter the dev shell. They are therefore available only in a real testrun
through regression.sh, and both are removed from
`scripts/build_and_link_node_bins.sh` and `scripts/check_dev_env.sh`
(where tx-centrifuge would otherwise always be reported as missing). The
now-unused `common.sh` sourcing in `build_and_link_node_bins.sh` goes
away with them.

Dropping the extra flake input also re-resolved the remaining ones, so
flake.lock bumps.
@mkoura
mkoura requested a review from saratomaz as a code owner August 19, 2026 14:16
@mkoura
mkoura merged commit f20bb6d into master Aug 19, 2026
2 checks passed
@mkoura
mkoura deleted the add_tx_firehose branch August 19, 2026 14:19
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant