nimbus-eth2/docs/kiln_geth_local_testnet.md

32 lines
1.2 KiB
Markdown

# How to run Geth
- Clone Geth: `git clone https://github.com/ethereum/go-ethereum.git ~/go-ethereum`
- Build Geth with `make geth`
- Run `scripts/run-catalyst.sh` to run Geth. It listens on port 8551.
# Verify Geth and Nimbus interoperate
- Clone Nimbus
- Run `scripts/run-catalyst.sh`. This depends on the paths set up in the first section. If those are changed, adjust accordingly.
- Run `./env.sh nim c -r scripts/test_merge_vectors.nim`. It should show output akin to:
```
[Suite] Merge test vectors
[OK] getPayload, newPayload, and forkchoiceUpdated
```
# How to run Nimbus local testnet with Geth
- Check out branch `kiln`
- Run (and keep running) `./scripts/run-catalyst.sh`.
- Run `./scripts/launch_local_testnet.sh --preset minimal --nodes 4 --disable-htop --stop-at-epoch 7 -- --verify-finalization --discv5:no`
This creates a 4-node local testnet with 128 validators.
The Nimbus console output will be similar to
![./nimbus_localhost_run.png](./nimbus_localhost_run.png)
The broken pipe on `tail` is normal, and unrelated to merge aspects of Nimbus.
Meanwhile, Nimbus is interacting with Geth in preparing, getting, and executing payloads:
![./kiln_geth_logs.png](./kiln_geth_logs.png)