mirror of
https://github.com/sigp/lighthouse.git
synced 2026-03-10 04:01:51 +00:00
Adds ENR "eth2" field and Fork logic to networking (#953)
* Merge #913 * Correct release tests * Completed release test corrections * Initial work on upgrading discovery * Updates discovery to latest version * Update ENR initialisation logic * Remove debug statements * Shifts timing units to slots * Initial work * Add initial fork versioning and EnrForkId * Correct linking for EnrForkId * Adds eth2 field to local ENR * Initial work to eth2 field integration * Integrate eth2 field into discovery * temp commit * Add a timer to adjust fork versions during a hard fork for the ENR
This commit is contained in:
@@ -150,6 +150,14 @@ pub fn cli_app<'a, 'b>() -> App<'a, 'b> {
|
||||
automatically.")
|
||||
.takes_value(true),
|
||||
)
|
||||
/* Client/chain related arguments */
|
||||
.arg(
|
||||
Arg::with_name("disabled-forks")
|
||||
.long("disabled-forks")
|
||||
.value_name("STRING")
|
||||
.help("A comma separated list of forks that will be disabled.")
|
||||
.takes_value(true),
|
||||
)
|
||||
/* REST API related arguments */
|
||||
.arg(
|
||||
Arg::with_name("http")
|
||||
|
||||
@@ -187,6 +187,19 @@ pub fn get_configs<E: EthSpec>(
|
||||
client_config.network.secret_key_hex = Some(p2p_priv_key.to_string());
|
||||
}
|
||||
|
||||
/*
|
||||
* Chain specification
|
||||
*/
|
||||
if let Some(disabled_forks_str) = cli_args.value_of("disabled-forks") {
|
||||
client_config.disabled_forks = disabled_forks_str
|
||||
.split(',')
|
||||
.map(|fork_name| {
|
||||
fork_name
|
||||
.parse()
|
||||
.map_err(|_| format!("Invalid fork name: {}", fork_name))
|
||||
})
|
||||
.collect::<Result<Vec<String>>>()?;
|
||||
}
|
||||
/*
|
||||
* Http server
|
||||
*/
|
||||
|
||||
@@ -72,7 +72,7 @@ impl<E: EthSpec> ProductionBeaconNode<E> {
|
||||
/// Client behaviour is defined by the given `client_config`.
|
||||
pub fn new(
|
||||
context: RuntimeContext<E>,
|
||||
client_config: ClientConfig,
|
||||
mut client_config: ClientConfig,
|
||||
) -> impl Future<Item = Self, Error = String> {
|
||||
let http_eth2_config = context.eth2_config().clone();
|
||||
let spec = context.eth2_config().spec.clone();
|
||||
@@ -124,7 +124,7 @@ impl<E: EthSpec> ProductionBeaconNode<E> {
|
||||
.system_time_slot_clock()?
|
||||
.websocket_event_handler(client_config.websocket_server.clone())?
|
||||
.build_beacon_chain()?
|
||||
.network(&client_config.network)?
|
||||
.network(&mut client_config.network)?
|
||||
.notifier()?;
|
||||
|
||||
let builder = if client_config.rest_api.enabled {
|
||||
|
||||
Reference in New Issue
Block a user