Skip to content

Commit a6a2830

Browse files
authored
fix: uniformize keymanager (ethereum#534)
1 parent 35bb9ad commit a6a2830

File tree

12 files changed

+31
-49
lines changed

12 files changed

+31
-49
lines changed

main.star

Lines changed: 1 addition & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -88,10 +88,7 @@ def run(plan, args={}):
8888
src=static_files.KEYMANAGER_PATH_FILEPATH,
8989
name="keymanager_file",
9090
)
91-
keymanager_p12_file = plan.upload_files(
92-
src=static_files.KEYMANAGER_P12_PATH_FILEPATH,
93-
name="keymanager_p12_file",
94-
)
91+
9592
plan.print("Read the prometheus, grafana templates")
9693

9794
plan.print(
@@ -111,7 +108,6 @@ def run(plan, args={}):
111108
args_with_right_defaults.global_log_level,
112109
jwt_file,
113110
keymanager_file,
114-
keymanager_p12_file,
115111
persistent,
116112
xatu_sentry_params,
117113
global_tolerations,

src/cl/cl_launcher.star

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,6 @@ def launch(
2020
el_cl_data,
2121
jwt_file,
2222
keymanager_file,
23-
keymanager_p12_file,
2423
participants,
2524
all_el_contexts,
2625
global_log_level,
@@ -73,7 +72,6 @@ def launch(
7372
jwt_file,
7473
network_params.network,
7574
keymanager_file,
76-
keymanager_p12_file,
7775
),
7876
"launch_method": teku.launch,
7977
},

src/cl/grandine/grandine_launcher.star

Lines changed: 10 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -284,7 +284,13 @@ def get_beacon_config(
284284
"--enable-private-discovery",
285285
]
286286

287-
keymanager_api_cmd = []
287+
keymanager_api_cmd = [
288+
"--enable-validator-api",
289+
"--validator-api-address=0.0.0.0",
290+
"--validator-api-port={0}".format(vc_shared.VALIDATOR_HTTP_PORT_NUM),
291+
"--validator-api-allowed-origins=*",
292+
# "--validator-api-bearer-file=" + constants.KEYMANAGER_MOUNT_PATH_ON_CONTAINER, Not yet supported
293+
]
288294

289295
if network not in constants.PUBLIC_NETWORKS:
290296
cmd.append(
@@ -356,10 +362,9 @@ def get_beacon_config(
356362
VALIDATOR_KEYS_DIRPATH_ON_SERVICE_CONTAINER
357363
] = node_keystore_files.files_artifact_uuid
358364

359-
# Keymanager is still unimplemented in grandine
360-
# if keymanager_enabled:
361-
# cmd.extend(keymanager_api_cmd)
362-
# ports.update(vc_shared.VALIDATOR_KEYMANAGER_USED_PORTS)
365+
if keymanager_enabled:
366+
cmd.extend(keymanager_api_cmd)
367+
ports.update(vc_shared.VALIDATOR_KEYMANAGER_USED_PORTS)
363368

364369
if persistent:
365370
files[BEACON_DATA_DIRPATH_ON_SERVICE_CONTAINER] = Directory(

src/cl/teku/teku_launcher.star

Lines changed: 5 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -131,7 +131,6 @@ def launch(
131131
launcher.jwt_file,
132132
keymanager_enabled,
133133
launcher.keymanager_file,
134-
launcher.keymanager_p12_file,
135134
launcher.network,
136135
image,
137136
beacon_service_name,
@@ -213,7 +212,6 @@ def get_beacon_config(
213212
jwt_file,
214213
keymanager_enabled,
215214
keymanager_file,
216-
keymanager_p12_file,
217215
network,
218216
image,
219217
service_name,
@@ -310,11 +308,9 @@ def get_beacon_config(
310308
"--validator-api-host-allowlist=*",
311309
"--validator-api-port={0}".format(vc_shared.VALIDATOR_HTTP_PORT_NUM),
312310
"--validator-api-interface=0.0.0.0",
313-
"--validator-api-keystore-file="
314-
+ constants.KEYMANAGER_P12_MOUNT_PATH_ON_CONTAINER,
315-
"--validator-api-keystore-password-file="
316-
+ constants.KEYMANAGER_MOUNT_PATH_ON_CONTAINER,
317-
"--validator-api-docs-enabled=true",
311+
"--validator-api-bearer-file=" + constants.KEYMANAGER_MOUNT_PATH_ON_CONTAINER,
312+
"--Xvalidator-api-ssl-enabled=false",
313+
"--Xvalidator-api-unsafe-hosts-enabled=true",
318314
]
319315

320316
if network not in constants.PUBLIC_NETWORKS:
@@ -386,10 +382,9 @@ def get_beacon_config(
386382
files[
387383
VALIDATOR_KEYS_DIRPATH_ON_SERVICE_CONTAINER
388384
] = node_keystore_files.files_artifact_uuid
389-
files[constants.KEYMANAGER_MOUNT_PATH_ON_CLIENTS] = keymanager_file
390-
files[constants.KEYMANAGER_P12_MOUNT_PATH_ON_CLIENTS] = keymanager_p12_file
391385

392386
if keymanager_enabled:
387+
files[constants.KEYMANAGER_MOUNT_PATH_ON_CLIENTS] = keymanager_file
393388
cmd.extend(keymanager_api_cmd)
394389
ports.update(vc_shared.VALIDATOR_KEYMANAGER_USED_PORTS)
395390

@@ -426,13 +421,10 @@ def get_beacon_config(
426421
)
427422

428423

429-
def new_teku_launcher(
430-
el_cl_genesis_data, jwt_file, network, keymanager_file, keymanager_p12_file
431-
):
424+
def new_teku_launcher(el_cl_genesis_data, jwt_file, network, keymanager_file):
432425
return struct(
433426
el_cl_genesis_data=el_cl_genesis_data,
434427
jwt_file=jwt_file,
435428
network=network,
436429
keymanager_file=keymanager_file,
437-
keymanager_p12_file=keymanager_p12_file,
438430
)

src/package_io/input_parser.star

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -19,13 +19,13 @@ DEFAULT_CL_IMAGES = {
1919
"teku": "consensys/teku:latest",
2020
"nimbus": "statusim/nimbus-eth2:multiarch-latest",
2121
"prysm": "gcr.io/prysmaticlabs/prysm/beacon-chain:latest",
22-
"lodestar": "chainsafe/lodestar:latest",
22+
"lodestar": "chainsafe/lodestar:next",
2323
"grandine": "ethpandaops/grandine:develop",
2424
}
2525

2626
DEFAULT_VC_IMAGES = {
2727
"lighthouse": "sigp/lighthouse:latest",
28-
"lodestar": "chainsafe/lodestar:latest",
28+
"lodestar": "chainsafe/lodestar:next",
2929
"nimbus": "statusim/nimbus-validator-client:multiarch-latest",
3030
"prysm": "gcr.io/prysmaticlabs/prysm/validator:latest",
3131
"teku": "consensys/teku:latest",

src/participant_network.star

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,6 @@ def launch_participant_network(
3434
global_log_level,
3535
jwt_file,
3636
keymanager_file,
37-
keymanager_p12_file,
3837
persistent,
3938
xatu_sentry_params,
4039
global_tolerations,
@@ -170,7 +169,6 @@ def launch_participant_network(
170169
el_cl_data,
171170
jwt_file,
172171
keymanager_file,
173-
keymanager_p12_file,
174172
participants,
175173
all_el_contexts,
176174
global_log_level,
@@ -309,7 +307,6 @@ def launch_participant_network(
309307
plan=plan,
310308
launcher=vc.new_vc_launcher(el_cl_genesis_data=el_cl_data),
311309
keymanager_file=keymanager_file,
312-
keymanager_p12_file=keymanager_p12_file,
313310
service_name="vc-{0}-{1}-{2}".format(index_str, vc_type, el_type),
314311
vc_type=vc_type,
315312
image=participant.vc_image,

src/vc/lighthouse.star

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -82,9 +82,6 @@ def get_config(
8282
"--unencrypted-http-transport",
8383
]
8484

85-
if not (constants.NETWORK_NAME.verkle in network or electra_fork_epoch != None):
86-
cmd.append("--produce-block-v3")
87-
8885
if len(extra_params):
8986
cmd.extend([param for param in extra_params])
9087

src/vc/lodestar.star

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,7 @@ VERBOSITY_LEVELS = {
1414

1515
def get_config(
1616
el_cl_genesis_data,
17+
keymanager_file,
1718
image,
1819
participant_log_level,
1920
global_log_level,
@@ -72,6 +73,7 @@ def get_config(
7273
"--keymanager.port={0}".format(vc_shared.VALIDATOR_HTTP_PORT_NUM),
7374
"--keymanager.address=0.0.0.0",
7475
"--keymanager.cors=*",
76+
"--keymanager.tokenFile=" + constants.KEYMANAGER_MOUNT_PATH_ON_CONTAINER,
7577
]
7678

7779
if len(extra_params) > 0:
@@ -87,6 +89,7 @@ def get_config(
8789
ports.update(vc_shared.VALIDATOR_CLIENT_USED_PORTS)
8890

8991
if keymanager_enabled:
92+
files[constants.KEYMANAGER_MOUNT_PATH_ON_CLIENTS] = keymanager_file
9093
cmd.extend(keymanager_api_cmd)
9194
ports.update(vc_shared.VALIDATOR_KEYMANAGER_USED_PORTS)
9295

src/vc/prysm.star

Lines changed: 3 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,7 @@ PRYSM_BEACON_RPC_PORT = 4000
88

99
def get_config(
1010
el_cl_genesis_data,
11+
keymanager_file,
1112
image,
1213
beacon_http_url,
1314
cl_context,
@@ -56,12 +57,7 @@ def get_config(
5657
"--rpc",
5758
"--rpc-port={0}".format(vc_shared.VALIDATOR_HTTP_PORT_NUM),
5859
"--rpc-host=0.0.0.0",
59-
]
60-
61-
keymanager_api_cmd = [
62-
"--rpc",
63-
"--rpc-port={0}".format(vc_shared.VALIDATOR_HTTP_PORT_NUM),
64-
"--rpc-host=0.0.0.0",
60+
"--keymanager-token-file=" + constants.KEYMANAGER_MOUNT_PATH_ON_CONTAINER,
6561
]
6662

6763
if cl_context.client_name != constants.CL_TYPE.prysm:
@@ -86,6 +82,7 @@ def get_config(
8682
ports.update(vc_shared.VALIDATOR_CLIENT_USED_PORTS)
8783

8884
if keymanager_enabled:
85+
files[constants.KEYMANAGER_MOUNT_PATH_ON_CLIENTS] = keymanager_file
8986
cmd.extend(keymanager_api_cmd)
9087
ports.update(vc_shared.VALIDATOR_KEYMANAGER_USED_PORTS)
9188

src/vc/teku.star

Lines changed: 4 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,6 @@ vc_shared = import_module("./shared.star")
66
def get_config(
77
el_cl_genesis_data,
88
keymanager_file,
9-
keymanager_p12_file,
109
image,
1110
beacon_http_url,
1211
cl_context,
@@ -61,10 +60,9 @@ def get_config(
6160
"--validator-api-host-allowlist=*",
6261
"--validator-api-port={0}".format(vc_shared.VALIDATOR_HTTP_PORT_NUM),
6362
"--validator-api-interface=0.0.0.0",
64-
"--validator-api-keystore-file="
65-
+ constants.KEYMANAGER_P12_MOUNT_PATH_ON_CONTAINER,
66-
"--validator-api-keystore-password-file="
67-
+ constants.KEYMANAGER_MOUNT_PATH_ON_CONTAINER,
63+
"--validator-api-bearer-file=" + constants.KEYMANAGER_MOUNT_PATH_ON_CONTAINER,
64+
"--Xvalidator-api-ssl-enabled=false",
65+
"--Xvalidator-api-unsafe-hosts-enabled=true",
6866
]
6967

7068
if len(extra_params) > 0:
@@ -74,14 +72,13 @@ def get_config(
7472
files = {
7573
constants.GENESIS_DATA_MOUNTPOINT_ON_CLIENTS: el_cl_genesis_data.files_artifact_uuid,
7674
vc_shared.VALIDATOR_CLIENT_KEYS_MOUNTPOINT: node_keystore_files.files_artifact_uuid,
77-
constants.KEYMANAGER_MOUNT_PATH_ON_CLIENTS: keymanager_file,
78-
constants.KEYMANAGER_P12_MOUNT_PATH_ON_CLIENTS: keymanager_p12_file,
7975
}
8076

8177
ports = {}
8278
ports.update(vc_shared.VALIDATOR_CLIENT_USED_PORTS)
8379

8480
if keymanager_enabled:
81+
files[constants.KEYMANAGER_MOUNT_PATH_ON_CLIENTS] = keymanager_file
8582
cmd.extend(keymanager_api_cmd)
8683
ports.update(vc_shared.VALIDATOR_KEYMANAGER_USED_PORTS)
8784

0 commit comments

Comments
 (0)