build Teku
git clone https://github.com/ConsenSys/teku.git -b merge-interop
cd teku && ./gradlew distTar installDist
rm -rf ~/Library/teku/
rm -rf ~/.local/share/teku/
./build/install/teku/bin/teku genesis mock \
--output-file ./local-genesis.ssz \
--network=minimal \
--Xnetwork-altair-fork-epoch=0 \
--Xnetwork-merge-fork-epoch=10 \
--validator-count=256
./build/install/teku/bin/teku \
--eth1-endpoints=http://localhost:8545 \
--ee-fee-recipient-address=0xfe3b557e8fb62b89f4916b721be55ceb828dbd73 \
--Xinterop-enabled=true \
--Xinterop-number-of-validators=256 \
--Xinterop-owned-validator-start-index=0 \
--Xinterop-owned-validator-count=256 \
--network=minimal \
--Xnetwork-altair-fork-epoch=0 \
--Xnetwork-merge-fork-epoch=2 \
--Xnetwork-merge-total-terminal-difficulty 10000 \
--p2p-enabled=false \
--initial-state ./local-genesis.ssz \
-l DEBUG
specify eth1-endpoints, Xnetwork-merge-fork-epoch and Xnetwork-merge-total-terminal-difficulty params in accordance with execution client you are testing with
-
NOTE: use Xnetwork-merge-fork-epoch to determine when teku start following the EC head (reminder: 6*32 seconds per epoch)
-
NOTE: specify Xnetwork-merge-total-terminal-difficulty in decimal format
-
NOTE: if your EE expose engine APIs on a different endpoint, add
--ee-endpoints=http://localhost:8550
tail -f ~/Library/teku/logs/teku.log
tail -f ~/.local/share/teku/logs/teku.log