mirror of
https://github.com/sigp/lighthouse.git
synced 2026-03-20 05:14:35 +00:00
Encode Execution Engine Client Version In Graffiti (#5290)
* Add `engine_clientVersionV1` structs * Implement `engine_clientVersionV1` * Update to latest spec changes * Implement GraffitiCalculator Service * Added Unit Tests for GraffitiCalculator * Address Mac's Comments * Remove need to use clap in beacon chain * Merge remote-tracking branch 'upstream/unstable' into el_client_version_graffiti * Merge branch 'unstable' into el_client_version_graffiti # Conflicts: # beacon_node/beacon_chain/Cargo.toml
This commit is contained in:
@@ -6,6 +6,7 @@ use crate::notifier::spawn_notifier;
|
||||
use crate::Client;
|
||||
use beacon_chain::attestation_simulator::start_attestation_simulator_service;
|
||||
use beacon_chain::data_availability_checker::start_availability_cache_maintenance_service;
|
||||
use beacon_chain::graffiti_calculator::start_engine_version_cache_refresh_service;
|
||||
use beacon_chain::otb_verification_service::start_otb_verification_service;
|
||||
use beacon_chain::proposer_prep_service::start_proposer_prep_service;
|
||||
use beacon_chain::schema_change::migrate_schema;
|
||||
@@ -164,7 +165,7 @@ where
|
||||
let runtime_context = self.runtime_context.clone();
|
||||
let eth_spec_instance = self.eth_spec_instance.clone();
|
||||
let chain_config = config.chain.clone();
|
||||
let graffiti = config.graffiti;
|
||||
let beacon_graffiti = config.beacon_graffiti;
|
||||
|
||||
let store = store.ok_or("beacon_chain_start_method requires a store")?;
|
||||
let runtime_context =
|
||||
@@ -203,7 +204,7 @@ where
|
||||
MigratorConfig::default().epochs_per_migration(chain_config.epochs_per_migration),
|
||||
)
|
||||
.chain_config(chain_config)
|
||||
.graffiti(graffiti)
|
||||
.beacon_graffiti(beacon_graffiti)
|
||||
.event_handler(event_handler)
|
||||
.execution_layer(execution_layer)
|
||||
.validator_monitor_config(config.validator_monitor.clone());
|
||||
@@ -967,6 +968,10 @@ where
|
||||
runtime_context.executor.clone(),
|
||||
beacon_chain.clone(),
|
||||
);
|
||||
start_engine_version_cache_refresh_service(
|
||||
beacon_chain.as_ref(),
|
||||
runtime_context.executor.clone(),
|
||||
);
|
||||
start_attestation_simulator_service(
|
||||
beacon_chain.task_executor.clone(),
|
||||
beacon_chain.clone(),
|
||||
|
||||
@@ -1,3 +1,4 @@
|
||||
use beacon_chain::graffiti_calculator::GraffitiOrigin;
|
||||
use beacon_chain::validator_monitor::ValidatorMonitorConfig;
|
||||
use beacon_chain::TrustedSetup;
|
||||
use beacon_processor::BeaconProcessorConfig;
|
||||
@@ -9,7 +10,6 @@ use serde::{Deserialize, Serialize};
|
||||
use std::fs;
|
||||
use std::path::PathBuf;
|
||||
use std::time::Duration;
|
||||
use types::Graffiti;
|
||||
|
||||
/// Default directory name for the freezer database under the top-level data dir.
|
||||
const DEFAULT_FREEZER_DB_DIR: &str = "freezer_db";
|
||||
@@ -63,8 +63,8 @@ pub struct Config {
|
||||
/// This is the method used for the 2019 client interop in Canada.
|
||||
pub dummy_eth1_backend: bool,
|
||||
pub sync_eth1_chain: bool,
|
||||
/// Graffiti to be inserted everytime we create a block.
|
||||
pub graffiti: Graffiti,
|
||||
/// Graffiti to be inserted everytime we create a block if the validator doesn't specify.
|
||||
pub beacon_graffiti: GraffitiOrigin,
|
||||
pub validator_monitor: ValidatorMonitorConfig,
|
||||
#[serde(skip)]
|
||||
/// The `genesis` field is not serialized or deserialized by `serde` to ensure it is defined
|
||||
@@ -104,7 +104,7 @@ impl Default for Config {
|
||||
eth1: <_>::default(),
|
||||
execution_layer: None,
|
||||
trusted_setup: None,
|
||||
graffiti: Graffiti::default(),
|
||||
beacon_graffiti: GraffitiOrigin::default(),
|
||||
http_api: <_>::default(),
|
||||
http_metrics: <_>::default(),
|
||||
monitoring_api: None,
|
||||
|
||||
Reference in New Issue
Block a user