Search before asking
Description
Test cluster setup is duplicated in three places:
- Rust: testcontainers-rs (async, builder pattern)
- C++: raw docker run shell commands with TCP polling
- Python: testcontainers Python library (sync, pytest fixture)
All three duplicate constants (image name, version, ports, network), orchestration logic (create network, ZK, coordinator, tablet server, wait, and cluster config.
C++ via CXX, watch out for async/sync boundary and generics limitations, it's not trivial
Willingness to contribute