Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
E
ethereum-package
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
vicotor
ethereum-package
Commits
86fa8efc
Unverified
Commit
86fa8efc
authored
Oct 19, 2023
by
Barnabas Busa
Committed by
GitHub
Oct 19, 2023
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
fix: path based storage disable for elecra (#316)
parent
6e8e290a
Changes
5
Show whitespace changes
Inline
Side-by-side
Showing
5 changed files
with
56 additions
and
7 deletions
+56
-7
config.yml
.circleci/config.yml
+12
-0
petra.json
.circleci/tests/petra.json
+16
-0
geth_launcher.star
src/el/geth/geth_launcher.star
+23
-6
input_parser.star
src/package_io/input_parser.star
+3
-0
participant_network.star
src/participant_network.star
+2
-1
No files found.
.circleci/config.yml
View file @
86fa8efc
...
...
@@ -282,6 +282,12 @@ jobs:
-
<<
:
*setup_kurtosis
-
checkout
-
run
:
kurtosis run ${PWD} "$(cat ./.circleci/tests/disable-peer-scoring.json)"
petra
:
executor
:
ubuntu_vm
steps
:
-
<<
:
*setup_kurtosis
-
checkout
-
run
:
kurtosis run ${PWD} "$(cat ./.circleci/tests/petra.json)"
workflows
:
check_latest_version
:
...
...
@@ -389,3 +395,9 @@ workflows:
branches
:
ignore
:
-
main
-
petra
:
filters
:
branches
:
ignore
:
-
main
.circleci/tests/petra.json
0 → 100644
View file @
86fa8efc
{
"participants"
:
[
{
"el_client_type"
:
"geth"
,
"el_client_image"
:
"ethpandaops/geth:gballet-kaustinen-with-shapella-a45a9f2"
,
"cl_client_type"
:
"lodestar"
,
"cl_client_image"
:
"ethpandaops/lodestar:g11tech-verge"
,
"count"
:
2
}
],
"network_params"
:
{
"electra_fork_epoch"
:
0
,
"deneb_fork_epoch"
:
1000
},
"additional_services"
:
[]
}
src/el/geth/geth_launcher.star
View file @
86fa8efc
...
...
@@ -107,6 +107,7 @@ def launch(
extra_params,
extra_env_vars,
launcher.electra_fork_epoch,
launcher.final_genesis_timestamp,
)
service = plan.add_service(service_name, config)
...
...
@@ -146,16 +147,30 @@ def get_config(
extra_params,
extra_env_vars,
electra_fork_epoch,
final_genesis_timestamp,
):
init_datadir_cmd_str = "geth init {0} --state.scheme=path --datadir={1} {2}".format(
"--cache.preimages" if electra_fork_epoch != None else "",
# TODO: Remove this once electra fork has path based storage scheme implemented
if electra_fork_epoch != None:
init_datadir_cmd_str = "geth init --cache.preimages --datadir={0} {1}".format(
EXECUTION_DATA_DIRPATH_ON_CLIENT_CONTAINER,
constants.GENESIS_CONFIG_MOUNT_PATH_ON_CONTAINER + "/genesis.json",
)
else:
init_datadir_cmd_str = "geth init --state.scheme=path --datadir={0} {1}".format(
EXECUTION_DATA_DIRPATH_ON_CLIENT_CONTAINER,
constants.GENESIS_CONFIG_MOUNT_PATH_ON_CONTAINER + "/genesis.json",
)
cmd = [
"geth",
"--state.scheme=path",
# Disable path based storage scheme for electra fork
"{0}".format("--state.scheme=path" if electra_fork_epoch == None else ""),
# Override prague fork timestamp for electra fork
"{0}".format(
"--override.prague=" + final_genesis_timestamp
if electra_fork_epoch != None
else ""
),
"--verbosity=" + verbosity_level,
"--datadir=" + EXECUTION_DATA_DIRPATH_ON_CLIENT_CONTAINER,
"--networkid=" + network_id,
...
...
@@ -232,10 +247,12 @@ def get_config(
def new_geth_launcher(
network_id,
el_cl_genesis_data,
final_genesis_timestamp,
electra_fork_epoch=None,
):
return struct(
network_id=network_id,
el_cl_genesis_data=el_cl_genesis_data,
final_genesis_timestamp=final_genesis_timestamp,
electra_fork_epoch=electra_fork_epoch,
)
src/package_io/input_parser.star
View file @
86fa8efc
...
...
@@ -309,6 +309,9 @@ def parse_network_params(input_args):
if result["network_params"]["electra_fork_epoch"] != None:
# if electra is defined, then deneb needs to be set very high
result["network_params"]["deneb_fork_epoch"] = HIGH_DENEB_VALUE_FORK_VERKLE
# TODO: remove once transition is complete
if result["network_params"]["electra_fork_epoch"] != 0:
fail("electra_fork_epoch can only be 0 or None")
if (
result["network_params"]["capella_fork_epoch"] > 0
...
...
src/participant_network.star
View file @
86fa8efc
...
...
@@ -98,7 +98,7 @@ def launch_participant_network(
# we are running electra - experimental
elif network_params.electra_fork_epoch != None:
ethereum_genesis_generator_image = (
"ethpandaops/ethereum-genesis-generator:3.0.0-rc.1
0
"
"ethpandaops/ethereum-genesis-generator:3.0.0-rc.1
4
"
)
else:
fail(
...
...
@@ -132,6 +132,7 @@ def launch_participant_network(
"launcher": geth.new_geth_launcher(
network_params.network_id,
el_cl_data,
final_genesis_timestamp,
network_params.electra_fork_epoch,
),
"launch_method": geth.launch,
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment