stacks-core icon indicating copy to clipboard operation
stacks-core copied to clipboard

Remove puppet-chain directory and binary

Open kantai opened this issue 3 years ago • 3 comments

The puppet-chain binary doesn't seem to be used anymore -- clarinet integrate and devnet do not use it for setting up a local regtest environment, and our integration tests do not use it either.

It could still be useful for developers trying to spin up their own bitcoin regtest environment. However, I feel pretty ambivalent about supporting that use case through the puppet-chain: we don't really cover that use case with our tests, so the current level of support is at best "waiting for an undetected regression", and we're probably better off just eliminating puppet-chain and supporting local regtest through direct bitcoin interaction (that's what our neon_integrations tests do).

kantai avatar Jul 12 '22 14:07 kantai

This came up from a discussion started by @wileyj in the stacks-core-devs discord.

kantai avatar Jul 12 '22 14:07 kantai

adding some more context: puppet-chain is currently used in the "net-test" tests that are disabled in the github action workflow currently: https://github.com/stacks-network/stacks-blockchain/blob/master/.github/workflows/ci.yml#L73-L75

puppet-chain is still built/installed in Dockerfiles, ex: https://github.com/stacks-network/stacks-blockchain/blob/master/Dockerfile#L16-L19

and the net-test test would likely need to be adjusted or removed to account for puppet-chain removal: https://github.com/stacks-network/stacks-blockchain/blob/master/net-test/bin/start.sh#L57-L83

wileyj avatar Jul 12 '22 14:07 wileyj

As an alternative to removing it, could the source be moved to ./contrib and remove the compilation from build scripts/Dockerfiles as a default?

wileyj avatar Jul 12 '22 14:07 wileyj

Looks like this happened.

jcnelson avatar Dec 05 '22 15:12 jcnelson