It would be nice if we could use "recent" generated state with custom deposit address.
Currently we can either:
--deposit-contract-address 0x... should override deposit contract address in generated yaml file.
Implement flag.
@mpetrunic have you considered using the eth2-testnets format to define testnets? We can take a --testnet-dir flag which will load those configs.
We also have an lcli command for generating these directories:
lcli --spec mainnet new-testnet
--deposit-contract-address 0xaA888248144Bc5d584a7f400839d0D912F21C39A \
--deposit-contract-deploy-block 2355031 \
--effective-balance-increment 100000000 \
--ejection-balance 1600000000 \
--eth1-follow-distance 16 \
--genesis-fork-version 0x00000539 \
--max-effective-balance 3200000000 \
--min-deposit-amount 100000000 \
--min-genesis-active-validator-count 16 \
--min-genesis-delay 3600 \
--min-genesis-time 1584316800 \
--testnet-dir ~/.lighthouse/testnet
Can I configure genesis with 8 interop validators preloaded like with "recent" subcommand?
Can I configure genesis with 8 interop validators preloaded like with "recent" subcommand?
Hmm, I haven't used recent with an eth1-based testnet before... Do you have a deposit contract deployed somewhere with those interop validators already deposited?
Yeah, we are trying to have working chain with preloaded interop validators at genesis state while being able to add new validators trough deposit contract on private eth1 chain.
Here is working docker-compose: https://github.com/NodeFactoryIo/ChainGuardian/blob/mpetrunic/lighthouse/docker-compose.yml
@paulhauner @AgeManning
Manage to get it working with this script:
https://github.com/NodeFactoryIo/ChainGuardian/blob/mpetrunic/lighthouse/start.sh
but it seems that it's not tracking eth1 chain and deposits. Keep getting this error message:
lighthouse_beacon_node | Mar 23 15:30:18.107 ERRO No valid eth1_data votes, `votes_to_consider` empty, outcome: casting `state.eth1_data` as eth1 vote, genesis_time: 1584976710, earliest_block_timestamp: None, lowest_block_number: None, service: eth1_rpc
I ran the docker-compose and it seems that the issue is because when the compose environment comes up, it deploys the deposit contract then immediately starts Lighthouse. Since the configuration sets ETH1_FOLLOW_DISTANCE = 16, there's nothing to vote on until 16 blocks have passed.
See the following logs, when eth1 block #14 is the latest block we get the "No valid eth1_data votes" error. As soon as block #15 reaches the canonical chain (blocks are zero-indexed, so this means 16 blocks exist) we stop getting the error.
cg_eth1_node | INFO [03-24|06:55:24.001] Successfully sealed new block number=21 sealhash=5499cb…a87833 hash=9dd141…ba4fef elapsed=13.999s
cg_eth1_node | INFO [03-24|06:55:24.001] 🔗 block reached canonical chain number=14 hash=ed2455…efdd11
cg_eth1_node | INFO [03-24|06:55:24.001] 🔨 mined potential block number=21 hash=9dd141…ba4fef
lighthouse_validators | Mar 24 06:55:24.001 INFO All validators active slot: 45, epoch: 5, total_validators: 32, active_validators: 32, proposers: 8, service: notifier
cg_eth1_node | INFO [03-24|06:55:24.003] Commit new mining work number=22 sealhash=79babb…c58772 uncles=0 txs=0 gas=0 fees=0 elapsed=1.462ms
lighthouse_beacon_node | Mar 24 06:55:27.104 ERRO No valid eth1_data votes, `votes_to_consider` empty, outcome: casting `state.eth1_data` as eth1 vote, genesis_time: 1585032651, earliest_block_timestamp: 0, lowest_block_number: 0, service: eth1_rpc
lighthouse_beacon_node | Mar 24 06:55:27.115 INFO Block from local validator block_slot: 46, block_root: 0x77f4…f694, service: http
lighthouse_validators | Mar 24 06:55:27.116 INFO Successfully published block slot: 46,
... truncated ...
cg_eth1_node | INFO [03-24|06:55:38.001] Successfully sealed new block number=22 sealhash=79babb…c58772 hash=0861a5…db6a87 elapsed=13.998s
cg_eth1_node | INFO [03-24|06:55:38.001] 🔗 block reached canonical chain number=15 hash=0d5dbf…196221
cg_eth1_node | INFO [03-24|06:55:38.001] 🔨 mined potential block number=22 hash=0861a5…db6a87
cg_eth1_node | INFO [03-24|06:55:38.002] Commit new mining work number=23 sealhash=d050d7…8de3bd uncles=0 txs=0 gas=0 fees=0 elapsed=1.043ms
lighthouse_beacon_node | Mar 24 06:55:39.118 INFO Block from local validator block_slot: 48, block_root: 0x3d42…7e26, service: http
lighthouse_validators | Mar 24 06:55:39.119 INFO Successfully published block slot: 48, attestations: 1, deposits: 0, service: block
@mpetrunic, are you still in need of this flag or does the testnet directory suffice? :)
Testnet directory will suffice once we figure out eth1 data votes an deposits 😄
Ok, thanks! I'll close this for now, feel free to reopen if you wish.