33 lines
1.1 KiB
Bash
33 lines
1.1 KiB
Bash
|
#!/usr/bin/env bash
|
||
|
|
||
|
set -Eeuo pipefail
|
||
|
|
||
|
source ./vars.env
|
||
|
|
||
|
# Function to output SLOT_PER_EPOCH for mainnet or minimal
|
||
|
get_spec_preset_value() {
|
||
|
case "$SPEC_PRESET" in
|
||
|
mainnet) echo 32 ;;
|
||
|
minimal) echo 8 ;;
|
||
|
gnosis) echo 16 ;;
|
||
|
*) echo "Unsupported preset: $SPEC_PRESET" >&2; exit 1 ;;
|
||
|
esac
|
||
|
}
|
||
|
|
||
|
SLOT_PER_EPOCH=$(get_spec_preset_value $SPEC_PRESET)
|
||
|
echo "slot_per_epoch=$SLOT_PER_EPOCH"
|
||
|
|
||
|
genesis_file=$1
|
||
|
|
||
|
# Update future hardforks time in the EL genesis file based on the CL genesis time
|
||
|
GENESIS_TIME=$(lcli pretty-ssz --spec $SPEC_PRESET --testnet-dir $TESTNET_DIR BeaconState $TESTNET_DIR/genesis.ssz | jq | grep -Po 'genesis_time": "\K.*\d')
|
||
|
echo $GENESIS_TIME
|
||
|
CAPELLA_TIME=$((GENESIS_TIME + (CAPELLA_FORK_EPOCH * $SLOT_PER_EPOCH * SECONDS_PER_SLOT)))
|
||
|
echo $CAPELLA_TIME
|
||
|
sed -i 's/"shanghaiTime".*$/"shanghaiTime": '"$CAPELLA_TIME"',/g' $genesis_file
|
||
|
CANCUN_TIME=$((GENESIS_TIME + (DENEB_FORK_EPOCH * $SLOT_PER_EPOCH * SECONDS_PER_SLOT)))
|
||
|
echo $CANCUN_TIME
|
||
|
sed -i 's/"cancunTime".*$/"cancunTime": '"$CANCUN_TIME"',/g' $genesis_file
|
||
|
cat $genesis_file
|
||
|
|