From e77fb01a063cc4de1dd33a881de2174487a680e6 Mon Sep 17 00:00:00 2001 From: Michael Sproul Date: Sun, 6 Apr 2025 19:08:59 +1000 Subject: [PATCH] Remove CLI conflict for secrets-dir and datadir (#7265) Redo this PR: - https://github.com/sigp/lighthouse/pull/5480 After a regression during the switch to `clap_derive`. - https://github.com/sigp/lighthouse/pull/6300 - Remove `conflicts_with` - Add test to prevent future regression --- lighthouse/tests/validator_client.rs | 16 ++++++++++++++++ validator_client/src/cli.rs | 1 - 2 files changed, 16 insertions(+), 1 deletion(-) diff --git a/lighthouse/tests/validator_client.rs b/lighthouse/tests/validator_client.rs index eccd97d486..b9edeceaee 100644 --- a/lighthouse/tests/validator_client.rs +++ b/lighthouse/tests/validator_client.rs @@ -70,6 +70,22 @@ fn validators_and_secrets_dir_flags() { }); } +#[test] +fn datadir_and_secrets_dir_flags() { + let dir = TempDir::new().expect("Unable to create temporary directory"); + CommandLineTest::new() + .flag("datadir", dir.path().join("data").to_str()) + .flag("secrets-dir", dir.path().join("secrets").to_str()) + .run_with_no_datadir() + .with_config(|config| { + assert_eq!( + config.validator_dir, + dir.path().join("data").join("validators") + ); + assert_eq!(config.secrets_dir, dir.path().join("secrets")); + }); +} + #[test] fn validators_dir_alias_flags() { let dir = TempDir::new().expect("Unable to create temporary directory"); diff --git a/validator_client/src/cli.rs b/validator_client/src/cli.rs index 18bd736957..3dd138619b 100644 --- a/validator_client/src/cli.rs +++ b/validator_client/src/cli.rs @@ -67,7 +67,6 @@ pub struct ValidatorClient { #[clap( long, value_name = "SECRETS_DIRECTORY", - conflicts_with = "datadir", help = "The directory which contains the password to unlock the validator \ voting keypairs. Each password should be contained in a file where the \ name is the 0x-prefixed hex representation of the validators voting public \