Support validator withdrawals (#19)
All checks were successful
Publish Ethereum Fixturenet Stack Container Images / Publish Ethereum Fixturenet Stack Container Images (push) Successful in 23m28s
Test Ethereum Fixturenet Stack / Run Ethereum Fixturenet stack test (push) Successful in 24m11s
Test Ethereum Plugeth Fixturenet Stack / Test fixturenet-plugeth stack (ubuntu-latest) (push) Successful in 31m30s
Test Ethereum Plugeth Fixturenet Stack / Test fixturenet-plugeth stack (ubuntu-latest-arm) (push) Successful in 42m4s

Adds CL spec settings to enable validator withdrawals and expedite them by reducing the delays between withdrawal (and validator exit) initiation and execution.

To create a testnet genesis Beacon state where withdrawals and exits are possible, this also depends on cerc-io/lighthouse#1.

Reviewed-on: #19
Reviewed-by: David Boreham <dboreham@noreply.git.vdb.to>
This commit is contained in:
Roy Crihfield 2024-08-05 14:06:43 +00:00
parent f2d11f314c
commit 61bad072f8
6 changed files with 16 additions and 9 deletions

View File

@ -1,4 +1,2 @@
# Change this file to trigger the job publish-fixturenet-eth-images.yml
Trigger
Trigger
Trigger
4

View File

@ -27,7 +27,7 @@ services:
CERC_ALLOW_UNPROTECTED_TXS: ${CERC_ALLOW_UNPROTECTED_TXS:-false}
env_file:
- ../config/fixturenet-eth/fixturenet-eth.env
- ../config/fixturenet-eth/statediff.env
- ../config/fixturenet-plugeth/statediff.env
image: cerc/fixturenet-plugeth-plugeth:local
volumes:
- fixturenet_plugeth_geth_1_data:/root/ethdata

View File

@ -14,5 +14,5 @@ ENR_URL="http://fixturenet-eth-bootnode-lighthouse:3000/bootnode/enr.dat"
CERC_GETH_VMODULE="rpc/*=5"
CERC_GETH_VERBOSITY=${CERC_GETH_VERBOSITY:-3}
# Used by Lighthouse
SECONDS_PER_ETH1_BLOCK=${SECONDS_PER_ETH1_BLOCK:-3}
# --debug-level
DEBUG_LEVEL=${LIGHTHOUSE_DEBUG_LEVEL:-info}

View File

@ -44,6 +44,11 @@ lcli \
--interop-genesis-state \
--force
# Patch the spec with settings not supported by lcli
sed -i "/^SHARD_COMMITTEE_PERIOD:/s/:.*/: $SHARD_COMMITTEE_PERIOD/" $TESTNET_DIR/config.yaml
sed -i "/^MIN_VALIDATOR_WITHDRAWABILITY_DELAY:/s/:.*/: $MIN_VALIDATOR_WITHDRAWABILITY_DELAY/" $TESTNET_DIR/config.yaml
sed -i "/^MAX_SEED_LOOKAHEAD:/s/:.*/: $MAX_SEED_LOOKAHEAD/" $TESTNET_DIR/config.yaml
echo Specification and genesis.ssz generated at $TESTNET_DIR.
echo "Generating $VALIDATOR_COUNT validators concurrently... (this may take a while)"

View File

@ -38,6 +38,13 @@ SECONDS_PER_SLOT=${SECONDS_PER_SLOT:-3}
# Seconds per Eth1 block
SECONDS_PER_ETH1_BLOCK=${SECONDS_PER_ETH1_BLOCK:-1}
# Min epochs between validator activation and exit
SHARD_COMMITTEE_PERIOD=2
# Min epochs between validator exit and withdrawal
MIN_VALIDATOR_WITHDRAWABILITY_DELAY=1
# Delay for validator activation/exit
MAX_SEED_LOOKAHEAD=1
# Command line arguments for validator client
VC_ARGS=${VC_ARGS:-""}
@ -53,6 +60,3 @@ ETH1_TTD=${ETH1_TTD:-`cat $ETH1_GENESIS_JSON | jq -r '.config.terminalTotalDiffi
ETH1_DEPOSIT_CONTRACT_ADDRESS=${ETH1_DEPOSIT_CONTRACT_ADDRESS:-`cat $ETH1_CONFIG_YAML | grep 'deposit_contract_address' | awk '{ print $2 }' | sed 's/"//g'`}
ETH1_DEPOSIT_CONTRACT_BLOCK=${ETH1_DEPOSIT_CONTRACT_BLOCK:-0x0}
SUGGESTED_FEE_RECIPIENT=`cat ../build/el/accounts.csv | head -1 | cut -d',' -f2`
# --debug-level
DEBUG_LEVEL=${LIGHTHOUSE_DEBUG_LEVEL:-info}