IntersectMBO / cardano-node

The core component that is used to participate in a Cardano decentralised blockchain.
https://cardano.org
Apache License 2.0
3.05k stars 721 forks source link

[FR] - cardano-testnet: DevX improvements #5848

Open klntsky opened 3 months ago

klntsky commented 3 months ago

External

Area Other

Describe the feature you'd like

We're considering replacing Plutip with cardano-testnet, and we'd like to see some changes upstream for our convenience.

  1. We'd like to make running the test suite optional, configurable via a CLI option. We really need faster startup times.
  2. We'd like to see more structured output (e.g. JSON) so that we can parse the TMP dir to get the node socket path, etc.

If we implement these changes in a PR, would it be considered for acceptance?

smelc commented 3 months ago

cc @Jimbo4350 @carbolymer

carbolymer commented 3 months ago

We'd like to make running the test suite optional, configurable via a CLI option. We really need faster startup times.

Actually, there are no tests executed when you're starting cardano-testnet using the cardano-testnet executable. It may appear so, because we're leveraging hedgehog's PropertyT when setting up the testnet nodes. So we're kind of abusing it to print debugging information by failing the test suite. All it does is starting the nodes and doing the healthcheck, so I think you won't get more speedup than it is right now (speaking about version in master).

We'd like to see more structured output (e.g. JSON) so that we can parse the TMP dir to get the node socket path, etc.

Definitely, if you feel that you can make the output both human readable and machine readable (by some toggle?) we'd be up for it.

If we implement these changes in a PR, would it be considered for acceptance?

Sure, if it won't be disruptive too much. It would be preferable if you could submit your changes in few smaller PRs.

klntsky commented 3 months ago

@carbolymer Thank you!

I have one more question: would it be possible for it to start instantly in the latest era, skipping the initial era transitions?

carbolymer commented 3 months ago

That's supported already. In some of the test cases we're starting in Conway already, for example in here: https://github.com/IntersectMBO/cardano-node/blob/3d5df51000fbbf7492eba48f2bbc2472706abe17/cardano-testnet/test/cardano-testnet-test/Cardano/Testnet/Test/Gov/ProposeNewConstitution.hs#L74

github-actions[bot] commented 2 months ago

This issue is stale because it has been open 30 days with no activity. Remove stale label or comment or this will be closed in 120 days.