Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
31 changes: 4 additions & 27 deletions src/el/geth/geth_launcher.star
Original file line number Diff line number Diff line change
Expand Up @@ -111,11 +111,6 @@ def get_config(
else:
gcmode_archive = False

init_datadir_cmd_str = "geth init --datadir={0} {1}".format(
EXECUTION_DATA_DIRPATH_ON_CLIENT_CONTAINER,
constants.GENESIS_CONFIG_MOUNT_PATH_ON_CONTAINER + "/genesis.json",
)

public_ports = {}
public_ports_for_component = None
if port_publisher.el_enabled:
Expand Down Expand Up @@ -162,7 +157,9 @@ def get_config(
else ""
),
"{0}".format(
"--networkid={0}".format(launcher.networkid)
"--override.genesis={0}".format(
constants.GENESIS_CONFIG_MOUNT_PATH_ON_CONTAINER + "/genesis.json"
)
if network_params.network not in constants.PUBLIC_NETWORKS
else ""
),
Expand All @@ -181,7 +178,6 @@ def get_config(
"--ws.port={0}".format(WS_PORT_NUM),
"--ws.api=admin,engine,net,eth,web3,debug,txpool",
"--ws.origins=*",
"--allow-insecure-unlock",
"--nat=extip:" + port_publisher.el_nat_exit_ip,
"--authrpc.port={0}".format(ENGINE_RPC_PORT_NUM),
"--authrpc.addr=0.0.0.0",
Expand Down Expand Up @@ -236,16 +232,6 @@ def get_config(
]
)
)
if constants.NETWORK_NAME.shadowfork in network_params.network: # shadowfork
cmd.append(
"--override.osaka=" + str(launcher.shadowfork_times["osaka_time"])
)
cmd.append(
"--override.bpo1=" + str(launcher.shadowfork_times["bpo_1_time"])
)
cmd.append(
"--override.bpo2=" + str(launcher.shadowfork_times["bpo_2_time"])
)

elif (
network_params.network not in constants.PUBLIC_NETWORKS
Expand All @@ -262,15 +248,7 @@ def get_config(
# this is a repeated<proto type>, we convert it into Starlark
cmd.extend([param for param in participant.el_extra_params])

cmd_str = " ".join(cmd)
if network_params.network not in constants.PUBLIC_NETWORKS:
subcommand_strs = [
init_datadir_cmd_str,
cmd_str,
]
command_str = " && ".join(subcommand_strs)
else:
command_str = cmd_str
command_str = " ".join(cmd)

files = {
constants.GENESIS_DATA_MOUNTPOINT_ON_CLIENTS: launcher.el_cl_genesis_data.files_artifact_uuid,
Expand Down Expand Up @@ -373,5 +351,4 @@ def new_geth_launcher(
el_cl_genesis_data=el_cl_genesis_data,
jwt_file=jwt_file,
networkid=networkid,
shadowfork_times=el_cl_genesis_data.shadowfork_times,
)
18 changes: 12 additions & 6 deletions src/network_launcher/public_network.star
Original file line number Diff line number Diff line change
Expand Up @@ -122,18 +122,24 @@ def launch(
timeout="6h", # 6 hours should be enough for the biggest network
)

# We are running a public network
dummy_genesis_data = plan.run_sh(
name="dummy-genesis-data",
description="Creating network configs folder",
run="mkdir /network-configs",
fetch_osaka_time = plan.run_sh(
name="fetch-osaka-time",
description="Fetching osaka time from genesis",
run="mkdir -p /network-configs && \
cd /network-configs && \
BASE_URL=https://raw.githubusercontent.com/eth-clients/"
+ network_params.network
+ "/main/metadata && \
curl -fsSL -o genesis.json \"$BASE_URL/genesis.json\" || echo \"genesis.json not found\" && \
jq '.config.osakaTime' /network-configs/genesis.json | tr -d '\n'",
store=[StoreSpec(src="/network-configs/", name="el_cl_genesis_data")],
tolerations=shared_utils.get_tolerations(global_tolerations=global_tolerations),
node_selectors=global_node_selectors,
)
el_cl_data = el_cl_genesis_data.new_el_cl_genesis_data(
dummy_genesis_data.files_artifacts[0],
fetch_osaka_time.files_artifacts[0],
constants.GENESIS_VALIDATORS_ROOT[network_params.network],
fetch_osaka_time.output,
)
final_genesis_timestamp = constants.GENESIS_TIME[network_params.network]
network_id = constants.NETWORK_ID[network_params.network]
Expand Down
2 changes: 1 addition & 1 deletion src/participant_network.star
Original file line number Diff line number Diff line change
Expand Up @@ -605,6 +605,6 @@ def launch_participant_network(
el_cl_data.genesis_validators_root,
el_cl_data.files_artifact_uuid,
network_id,
el_cl_data.shadowfork_times.get("osaka_time", ""),
el_cl_data.osaka_time,
el_cl_data.shadowfork_block_height,
)
Original file line number Diff line number Diff line change
@@ -1,12 +1,12 @@
def new_el_cl_genesis_data(
files_artifact_uuid,
genesis_validators_root,
shadowfork_times={},
osaka_time="",
shadowfork_block_height="",
):
return struct(
files_artifact_uuid=files_artifact_uuid,
genesis_validators_root=genesis_validators_root,
shadowfork_times=shadowfork_times,
osaka_time=osaka_time,
shadowfork_block_height=shadowfork_block_height,
)
Original file line number Diff line number Diff line change
Expand Up @@ -94,8 +94,7 @@ def generate_el_cl_genesis_data(
tolerations=shared_utils.get_tolerations(global_tolerations=global_tolerations),
node_selectors=global_node_selectors,
)
shadowfork_times = {}

osaka_time = ""
osaka_time = plan.run_sh(
name="read-osaka-time",
description="Reading osaka time from genesis",
Expand All @@ -105,32 +104,6 @@ def generate_el_cl_genesis_data(
node_selectors=global_node_selectors,
)

bpo_1_time = plan.run_sh(
name="read-bpo-1-time",
description="Reading bpo 1 time from genesis",
run="jq '.config.bpo1Time' /data/genesis.json | tr -d '\n'",
files={"/data": genesis.files_artifacts[0]},
tolerations=shared_utils.get_tolerations(global_tolerations=global_tolerations),
node_selectors=global_node_selectors,
)

bpo_2_time = plan.run_sh(
name="read-bpo-2-time",
description="Reading bpo 2 time from genesis",
run="jq '.config.bpo2Time' /data/genesis.json | tr -d '\n'",
files={"/data": genesis.files_artifacts[0]},
tolerations=shared_utils.get_tolerations(global_tolerations=global_tolerations),
node_selectors=global_node_selectors,
)

shadowfork_times = {
"osaka_time": osaka_time.output,
"bpo_1_time": bpo_1_time.output,
"bpo_2_time": bpo_2_time.output,
}

plan.print("Shadowfork times: {0}".format(shadowfork_times))

shadowfork_block_height = ""
if latest_block != "":
block_height_result = plan.run_sh(
Expand All @@ -147,7 +120,7 @@ def generate_el_cl_genesis_data(
result = el_cl_genesis_data.new_el_cl_genesis_data(
genesis.files_artifacts[0],
genesis_validators_root.output,
shadowfork_times,
osaka_time.output,
shadowfork_block_height,
)

Expand Down
5 changes: 1 addition & 4 deletions src/spamoor/spamoor.star
Original file line number Diff line number Diff line change
Expand Up @@ -40,10 +40,7 @@ def launch_spamoor(
spammers = []

for index, spammer in enumerate(spamoor_params.spammers):
if (
"peerdas" in network_params.network
or network_params.fulu_fork_epoch != constants.FAR_FUTURE_EPOCH
) and "blob" in spammer["scenario"]:
if (osaka_time != "") and "blob" in spammer["scenario"]:
if "config" not in spammer:
spammer["config"] = {}
spammer["config"]["fulu_activation"] = osaka_time
Expand Down