mirror of
https://github.com/sigp/lighthouse.git
synced 2026-04-18 21:38:31 +00:00
Embed trusted setup in network config (#3851)
* Load trusted setup in network config * Fix trusted setup serialize and deserialize * Load trusted setup from hardcoded preset instead of a file * Truncate after deserialising trusted setup * Fix beacon node script * Remove hardcoded setup file * Add length checks
This commit is contained in:
@@ -513,13 +513,12 @@ pub fn cli_app<'a, 'b>() -> App<'a, 'b> {
|
||||
)
|
||||
/* 4844 settings */
|
||||
.arg(
|
||||
Arg::with_name("trusted-setup-file")
|
||||
.long("trusted-setup-file")
|
||||
Arg::with_name("trusted-setup-file-override")
|
||||
.long("trusted-setup-file-override")
|
||||
.value_name("FILE")
|
||||
.help("File containing the trusted setup parameters. \
|
||||
NOTE: This is only for the devnet, the trusted setup params \
|
||||
must be embedded into the ethspec once parameter loading \
|
||||
is supported in the ckzg library")
|
||||
.help("Path to a json file containing the trusted setup params. \
|
||||
NOTE: This will override the trusted setup that is generated \
|
||||
from the mainnet kzg ceremony. Use with caution")
|
||||
.takes_value(true)
|
||||
)
|
||||
/*
|
||||
|
||||
@@ -2,6 +2,7 @@ use beacon_chain::chain_config::{
|
||||
ReOrgThreshold, DEFAULT_PREPARE_PAYLOAD_LOOKAHEAD_FACTOR,
|
||||
DEFAULT_RE_ORG_MAX_EPOCHS_SINCE_FINALIZATION, DEFAULT_RE_ORG_THRESHOLD,
|
||||
};
|
||||
use beacon_chain::TrustedSetup;
|
||||
use clap::ArgMatches;
|
||||
use clap_utils::flags::DISABLE_MALLOC_TUNING_FLAG;
|
||||
use client::{ClientConfig, ClientGenesis};
|
||||
@@ -371,8 +372,19 @@ pub fn get_config<E: EthSpec>(
|
||||
}
|
||||
|
||||
// 4844 params
|
||||
if let Some(trusted_setup_file) = cli_args.value_of("trusted-setup-file") {
|
||||
client_config.trusted_setup_file = Some(PathBuf::from(trusted_setup_file));
|
||||
client_config.trusted_setup = context
|
||||
.eth2_network_config
|
||||
.as_ref()
|
||||
.and_then(|config| config.kzg_trusted_setup.clone());
|
||||
|
||||
// Override default trusted setup file if required
|
||||
// TODO: consider removing this when we get closer to launch
|
||||
if let Some(trusted_setup_file_path) = cli_args.value_of("trusted-setup-file-override") {
|
||||
let file = std::fs::File::open(trusted_setup_file_path)
|
||||
.map_err(|e| format!("Failed to open trusted setup file: {}", e))?;
|
||||
let trusted_setup: TrustedSetup = serde_json::from_reader(file)
|
||||
.map_err(|e| format!("Unable to read trusted setup file: {}", e))?;
|
||||
client_config.trusted_setup = Some(trusted_setup);
|
||||
}
|
||||
|
||||
if let Some(freezer_dir) = cli_args.value_of("freezer-dir") {
|
||||
|
||||
Reference in New Issue
Block a user