probe-lab / hermes

A Gossipsub listener and tracer.
Other
29 stars 5 forks source link

feat: Add support for custom networks #34

Closed samcm closed 4 months ago

samcm commented 4 months ago

Adds support for custom devnets (like those running in Kurtosis, or longer-lived devnets like pectra-devnet-1). The configs are all loaded via URLs instead of a local directory.

Example flags

"eth",
"--devp2p.host",
"0.0.0.0",
"--libp2p.host",
"0.0.0.0",
"--prysm.host",
"127.0.0.1",
"--prysm.port.http",
"33001",
"--prysm.port.grpc",
"33003",
"--chain",
"devnet",
"--genesis.ssz.url",
"http://127.0.0.1:40000/network-configs/genesis.ssz",
"--config.yaml.url",
"http://127.0.0.1:40000/network-configs/config.yaml",
"--bootnodes.yaml.url",
"http://127.0.0.1:40000/network-configs/boot_enr.yaml",
"--deposit-contract-block.txt.url",
"http://127.0.0.1:40000/network-configs/deposit_contract_block.txt",

Example Kurtosis config

participants:
  - el_type: nethermind
    cl_type: prysm
  - el_type: geth
    cl_type: lighthouse
additional_services:
- apache
- dora
apache_port: 40000
port_publisher:
  nat_exit_ip: $MY_PRIVATE_IPV4_ADDRESS
  cl:
    enabled: true
    port: 33000
samcm commented 4 months ago

@cortze Awesome! I've tried it on a kurtosis local devnet (using the config in the OP) and it all worked as expected! 👌