Skip to content

Commit be28692

Browse files
Merge pull request #3 from agglayer/preallocs
feat: preallocs for deployer
2 parents e2de208 + 637cbef commit be28692

6 files changed

Lines changed: 51 additions & 32 deletions

File tree

kurtosis.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
name: github.com/ethpandaops/optimism-package
1+
name: github.com/agglayer/optimism-package
22
description: |
33
# Optimism Package
44
This is a Kurtosis package for deploying an Optimism Rollup

network_params.yaml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -45,9 +45,9 @@ optimism_package:
4545
tx_fuzzer_params:
4646
tx_fuzzer_extra_args: []
4747
op_contract_deployer_params:
48-
image: us-docker.pkg.dev/oplabs-tools-artifacts/images/op-deployer:v0.4.0-rc.2
49-
l1_artifacts_locator: https://storage.googleapis.com/oplabs-contract-artifacts/artifacts-v1-02024c5a26c16fc1a5c716fff1c46b5bf7f23890d431bb554ddbad60971211d4.tar.gz
50-
l2_artifacts_locator: https://storage.googleapis.com/oplabs-contract-artifacts/artifacts-v1-02024c5a26c16fc1a5c716fff1c46b5bf7f23890d431bb554ddbad60971211d4.tar.gz
48+
image: xavierromero/op-deployer:20250314
49+
l1_artifacts_locator: https://storage.googleapis.com/oplabs-contract-artifacts/artifacts-v1-fffcbb0ebf7f83311791534a41e65ef90df47797f9ca8f86941452f597f7128c.tar.gz
50+
l2_artifacts_locator: https://storage.googleapis.com/oplabs-contract-artifacts/artifacts-v1-fffcbb0ebf7f83311791534a41e65ef90df47797f9ca8f86941452f597f7128c.tar.gz
5151
global_log_level: "info"
5252
global_node_selectors: {}
5353
global_tolerations: []

src/contracts/contract_deployer.star

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -281,7 +281,7 @@ def deploy_contracts(
281281
)
282282

283283
apply_cmds = [
284-
"op-deployer apply --l1-rpc-url $L1_RPC_URL --private-key $PRIVATE_KEY --workdir /network-data",
284+
"op-deployer apply --l1-rpc-url $L1_RPC_URL --private-key $PRIVATE_KEY --workdir /network-data --predeployed-file /network-data/allocs/predeployed_allocs.json",
285285
]
286286
for chain in optimism_args.chains:
287287
network_id = chain.network_params.network_id
@@ -296,6 +296,7 @@ def deploy_contracts(
296296
]
297297
)
298298

299+
allocs_artifact = plan.get_files_artifact(name="predeployed_allocs.json")
299300
op_deployer_output = plan.run_sh(
300301
name="op-deployer-apply",
301302
description="Apply L2 contract deployments",
@@ -313,6 +314,7 @@ def deploy_contracts(
313314
],
314315
files={
315316
"/network-data": op_deployer_configure.files_artifacts[0],
317+
"/network-data/allocs": allocs_artifact,
316318
}
317319
| contracts_extra_files,
318320
run=" && ".join(apply_cmds),

src/package_io/input_parser.star

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -239,6 +239,7 @@ def input_parser(plan, input_args):
239239
extra_params=result["batcher_params"]["extra_params"],
240240
),
241241
proposer_params=struct(
242+
enabled=result["proposer_params"]["enabled"],
242243
image=result["proposer_params"]["image"],
243244
extra_params=result["proposer_params"]["extra_params"],
244245
game_type=result["proposer_params"]["game_type"],
@@ -610,6 +611,7 @@ def default_proxyd_params():
610611

611612
def default_proposer_params():
612613
return {
614+
"enabled": True,
613615
"image": DEFAULT_PROPOSER_IMAGES["op-proposer"],
614616
"extra_params": [],
615617
"game_type": 1,
@@ -682,9 +684,9 @@ def default_op_contract_deployer_global_deploy_overrides():
682684

683685
def default_op_contract_deployer_params():
684686
return {
685-
"image": "us-docker.pkg.dev/oplabs-tools-artifacts/images/op-deployer:v0.4.0-rc.2",
686-
"l1_artifacts_locator": "https://storage.googleapis.com/oplabs-contract-artifacts/artifacts-v1-02024c5a26c16fc1a5c716fff1c46b5bf7f23890d431bb554ddbad60971211d4.tar.gz",
687-
"l2_artifacts_locator": "https://storage.googleapis.com/oplabs-contract-artifacts/artifacts-v1-02024c5a26c16fc1a5c716fff1c46b5bf7f23890d431bb554ddbad60971211d4.tar.gz",
687+
"image": "xavierromero/op-deployer:20250314",
688+
"l1_artifacts_locator": "https://storage.googleapis.com/oplabs-contract-artifacts/artifacts-v1-fffcbb0ebf7f83311791534a41e65ef90df47797f9ca8f86941452f597f7128c.tar.gz",
689+
"l2_artifacts_locator": "https://storage.googleapis.com/oplabs-contract-artifacts/artifacts-v1-fffcbb0ebf7f83311791534a41e65ef90df47797f9ca8f86941452f597f7128c.tar.gz",
688690
"global_deploy_overrides": default_op_contract_deployer_global_deploy_overrides(),
689691
}
690692

src/package_io/sanity_check.star

Lines changed: 15 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -153,7 +153,21 @@ SUBCATEGORY_PARAMS = {
153153
],
154154
"proxyd_params": ["image", "tag", "extra_params"],
155155
"batcher_params": ["image", "extra_params"],
156-
"proposer_params": ["image", "extra_params", "game_type", "proposal_interval"],
156+
"proposer_params": [
157+
"enabled",
158+
"image",
159+
"extra_params",
160+
"game_type",
161+
"proposal_interval",
162+
],
163+
"challenger_params": [
164+
"enabled",
165+
"image",
166+
"extra_params",
167+
"cannon_prestate_path",
168+
"cannon_prestates_url",
169+
"cannon_trace_types",
170+
],
157171
"mev_params": ["rollup_boost_image", "builder_host", "builder_port"],
158172
"da_server_params": [
159173
"enabled",

src/participant_network.star

Lines changed: 24 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -107,29 +107,30 @@ def launch_participant_network(
107107
"state",
108108
".opChainDeployments[{0}].DisputeGameFactoryProxy".format(l2_num),
109109
)
110-
proposer_key = util.read_network_config_value(
111-
plan,
112-
deployment_output,
113-
"proposer-{0}".format(network_params.network_id),
114-
".privateKey",
115-
)
116-
op_proposer_image = (
117-
proposer_params.image
118-
if proposer_params.image != ""
119-
else input_parser.DEFAULT_PROPOSER_IMAGES["op-proposer"]
120-
)
121-
op_proposer_launcher.launch(
122-
plan,
123-
"op-proposer-{0}".format(l2_services_suffix),
124-
op_proposer_image,
125-
all_cl_contexts[0],
126-
l1_config_env_vars,
127-
proposer_key,
128-
game_factory_address,
129-
proposer_params,
130-
network_params,
131-
observability_helper,
132-
)
110+
if proposer_params.enabled:
111+
proposer_key = util.read_network_config_value(
112+
plan,
113+
deployment_output,
114+
"proposer-{0}".format(network_params.network_id),
115+
".privateKey",
116+
)
117+
op_proposer_image = (
118+
proposer_params.image
119+
if proposer_params.image != ""
120+
else input_parser.DEFAULT_PROPOSER_IMAGES["op-proposer"]
121+
)
122+
op_proposer_launcher.launch(
123+
plan,
124+
"op-proposer-{0}".format(l2_services_suffix),
125+
op_proposer_image,
126+
all_cl_contexts[0],
127+
l1_config_env_vars,
128+
proposer_key,
129+
game_factory_address,
130+
proposer_params,
131+
network_params,
132+
observability_helper,
133+
)
133134

134135
return struct(
135136
name=network_params.name,

0 commit comments

Comments
 (0)