mirror of
https://github.com/sigp/lighthouse.git
synced 2026-03-03 00:31:50 +00:00
Append client version info to graffiti (#7558)
* #7201 Co-Authored-By: Tan Chee Keong <tanck@sigmaprime.io> Co-Authored-By: chonghe <44791194+chong-he@users.noreply.github.com> Co-Authored-By: Jimmy Chen <jimmy@sigmaprime.io> Co-Authored-By: Tan Chee Keong <tanck2005@gmail.com>
This commit is contained in:
@@ -150,6 +150,16 @@ pub struct ValidatorClient {
|
||||
)]
|
||||
pub graffiti: Option<String>,
|
||||
|
||||
#[clap(
|
||||
long,
|
||||
requires = "graffiti",
|
||||
help = "When used, client version info will be prepended to user custom graffiti, with a space in between. \
|
||||
This should only be used with a Lighthouse beacon node.",
|
||||
display_order = 0,
|
||||
help_heading = FLAG_HEADER
|
||||
)]
|
||||
pub graffiti_append: bool,
|
||||
|
||||
#[clap(
|
||||
long,
|
||||
value_name = "GRAFFITI-FILE",
|
||||
|
||||
@@ -7,7 +7,7 @@ use directory::{
|
||||
DEFAULT_HARDCODED_NETWORK, DEFAULT_ROOT_DIR, DEFAULT_SECRET_DIR, DEFAULT_VALIDATOR_DIR,
|
||||
get_network_dir,
|
||||
};
|
||||
use eth2::types::Graffiti;
|
||||
use eth2::types::{Graffiti, GraffitiPolicy};
|
||||
use graffiti_file::GraffitiFile;
|
||||
use initialized_validators::Config as InitializedValidatorsConfig;
|
||||
use lighthouse_validator_store::Config as ValidatorStoreConfig;
|
||||
@@ -55,6 +55,8 @@ pub struct Config {
|
||||
pub graffiti: Option<Graffiti>,
|
||||
/// Graffiti file to load per validator graffitis.
|
||||
pub graffiti_file: Option<GraffitiFile>,
|
||||
/// GraffitiPolicy to append client version info
|
||||
pub graffiti_policy: Option<GraffitiPolicy>,
|
||||
/// Configuration for the HTTP REST API.
|
||||
pub http_api: validator_http_api::Config,
|
||||
/// Configuration for the HTTP REST API.
|
||||
@@ -119,6 +121,7 @@ impl Default for Config {
|
||||
long_timeouts_multiplier: 1,
|
||||
graffiti: None,
|
||||
graffiti_file: None,
|
||||
graffiti_policy: None,
|
||||
http_api: <_>::default(),
|
||||
http_metrics: <_>::default(),
|
||||
beacon_node_fallback: <_>::default(),
|
||||
@@ -233,6 +236,12 @@ impl Config {
|
||||
}
|
||||
}
|
||||
|
||||
config.graffiti_policy = if validator_client_config.graffiti_append {
|
||||
Some(GraffitiPolicy::AppendClientVersions)
|
||||
} else {
|
||||
Some(GraffitiPolicy::PreserveUserGraffiti)
|
||||
};
|
||||
|
||||
if let Some(input_fee_recipient) = validator_client_config.suggested_fee_recipient {
|
||||
config.validator_store.fee_recipient = Some(input_fee_recipient);
|
||||
}
|
||||
|
||||
@@ -486,7 +486,8 @@ impl<E: EthSpec> ProductionValidatorClient<E> {
|
||||
.executor(context.executor.clone())
|
||||
.chain_spec(context.eth2_config.spec.clone())
|
||||
.graffiti(config.graffiti)
|
||||
.graffiti_file(config.graffiti_file.clone());
|
||||
.graffiti_file(config.graffiti_file.clone())
|
||||
.graffiti_policy(config.graffiti_policy);
|
||||
|
||||
// If we have proposer nodes, add them to the block service builder.
|
||||
if proposer_nodes_num > 0 {
|
||||
|
||||
Reference in New Issue
Block a user