Skip to content
Closed
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
25 changes: 18 additions & 7 deletions src/el/erigon/erigon_launcher.star
Original file line number Diff line number Diff line change
Expand Up @@ -169,10 +169,6 @@ def get_config(
if network_params.gas_limit > 0:
cmd.append("--miner.gaslimit={0}".format(network_params.gas_limit))

if constants.NETWORK_NAME.shadowfork in network_params.network: # shadowfork
if launcher.osaka_enabled:
cmd.append("--override.osaka=" + str(launcher.osaka_time))

files = {
constants.GENESIS_DATA_MOUNTPOINT_ON_CLIENTS: launcher.el_cl_genesis_data.files_artifact_uuid,
constants.JWT_MOUNTPOINT_ON_CLIENTS: launcher.jwt_file,
Expand Down Expand Up @@ -235,11 +231,27 @@ def get_config(
if len(participant.el_extra_params) > 0:
cmd.extend([param for param in participant.el_extra_params])

cmd_str = " ".join(cmd)

# Handle osaka parameter conditionally for shadowfork
if constants.NETWORK_NAME.shadowfork in network_params.network:
# Create wrapper script that conditionally adds osaka parameter
wrapper_script = 'OSAKA_TIME="' + str(launcher.osaka_time) + '"; '
wrapper_script += (
'if [ "$OSAKA_TIME" != "null" ] && [ "$OSAKA_TIME" != "" ]; then '
)
wrapper_script += 'OSAKA_PARAM="--override.osaka=$OSAKA_TIME"; '
wrapper_script += 'else OSAKA_PARAM=""; fi; '
wrapper_script += cmd_str + " $OSAKA_PARAM"
final_cmd_str = wrapper_script
else:
final_cmd_str = cmd_str

if network_params.network not in constants.PUBLIC_NETWORKS:
command_arg = [init_datadir_cmd_str, " ".join(cmd)]
command_arg = [init_datadir_cmd_str, final_cmd_str]
command_arg_str = " && ".join(command_arg)
else:
command_arg_str = " ".join(cmd)
command_arg_str = final_cmd_str

env_vars = participant.el_extra_env_vars
config_args = {
Expand Down Expand Up @@ -316,5 +328,4 @@ def new_erigon_launcher(el_cl_genesis_data, jwt_file, networkid):
jwt_file=jwt_file,
networkid=networkid,
osaka_time=el_cl_genesis_data.osaka_time,
osaka_enabled=el_cl_genesis_data.osaka_enabled,
)
23 changes: 17 additions & 6 deletions src/el/geth/geth_launcher.star
Original file line number Diff line number Diff line change
Expand Up @@ -246,9 +246,6 @@ def get_config(
]
)
)
if constants.NETWORK_NAME.shadowfork in network_params.network: # shadowfork
if launcher.osaka_enabled:
cmd.append("--override.osaka=" + str(launcher.osaka_time))

elif (
network_params.network not in constants.PUBLIC_NETWORKS
Expand All @@ -266,14 +263,29 @@ def get_config(
cmd.extend([param for param in participant.el_extra_params])

cmd_str = " ".join(cmd)

# Handle osaka parameter conditionally for shadowfork
if constants.NETWORK_NAME.shadowfork in network_params.network:
# Create wrapper script that conditionally adds osaka parameter
wrapper_script = 'OSAKA_TIME="' + str(launcher.osaka_time) + '"; '
wrapper_script += (
'if [ "$OSAKA_TIME" != "null" ] && [ "$OSAKA_TIME" != "" ]; then '
)
wrapper_script += 'OSAKA_PARAM="--override.osaka=$OSAKA_TIME"; '
wrapper_script += 'else OSAKA_PARAM=""; fi; '
wrapper_script += cmd_str + " $OSAKA_PARAM"
final_cmd_str = wrapper_script
else:
final_cmd_str = cmd_str

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

files = {
constants.GENESIS_DATA_MOUNTPOINT_ON_CLIENTS: launcher.el_cl_genesis_data.files_artifact_uuid,
Expand Down Expand Up @@ -377,5 +389,4 @@ def new_geth_launcher(
jwt_file=jwt_file,
networkid=networkid,
osaka_time=el_cl_genesis_data.osaka_time,
osaka_enabled=el_cl_genesis_data.osaka_enabled,
)
Original file line number Diff line number Diff line change
Expand Up @@ -2,11 +2,9 @@ def new_el_cl_genesis_data(
files_artifact_uuid,
genesis_validators_root,
osaka_time=0,
osaka_enabled=False,
):
return struct(
files_artifact_uuid=files_artifact_uuid,
genesis_validators_root=genesis_validators_root,
osaka_time=osaka_time,
osaka_enabled=osaka_enabled,
)
Original file line number Diff line number Diff line change
Expand Up @@ -101,20 +101,10 @@ def generate_el_cl_genesis_data(
node_selectors=global_node_selectors,
)

osaka_enabled_check = plan.run_sh(
name="check-osaka-enabled",
description="Check if osaka time is enabled (not false)",
run="test \"$(jq '.config.osakaTime // false' /data/genesis.json | tr -d '\n')\" != \"false\" && echo true || echo false",
files={"/data": genesis.files_artifacts[0]},
tolerations=shared_utils.get_tolerations(global_tolerations=global_tolerations),
node_selectors=global_node_selectors,
)

result = el_cl_genesis_data.new_el_cl_genesis_data(
genesis.files_artifacts[0],
genesis_validators_root.output,
osaka_time.output,
osaka_enabled_check.output == "true",
)

return result
Expand Down