From 6b1cb4401a0d201e6bf32eada840f532d87db502 Mon Sep 17 00:00:00 2001 From: nadin-Starkware Date: Sun, 9 Feb 2025 08:53:55 +0200 Subject: [PATCH] refactor(starknet_integration_tests): create load_and_validate_config function commit-id:7c11e54a --- crates/starknet_sequencer_node/src/main.rs | 23 ++++---------------- crates/starknet_sequencer_node/src/utils.rs | 24 +++++++++++++++++++++ 2 files changed, 28 insertions(+), 19 deletions(-) diff --git a/crates/starknet_sequencer_node/src/main.rs b/crates/starknet_sequencer_node/src/main.rs index 82dc91c8bf8..209cf81b377 100644 --- a/crates/starknet_sequencer_node/src/main.rs +++ b/crates/starknet_sequencer_node/src/main.rs @@ -1,14 +1,10 @@ use std::env::args; -use std::process::exit; -use papyrus_config::validators::config_validate; -use papyrus_config::ConfigError; use starknet_infra_utils::set_global_allocator; use starknet_sequencer_infra::trace_util::configure_tracing; -use starknet_sequencer_node::config::node_config::SequencerNodeConfig; use starknet_sequencer_node::servers::run_component_servers; -use starknet_sequencer_node::utils::create_node_modules; -use tracing::{error, info}; +use starknet_sequencer_node::utils::{create_node_modules, load_and_validate_config}; +use tracing::info; set_global_allocator!(); @@ -16,19 +12,8 @@ set_global_allocator!(); async fn main() -> anyhow::Result<()> { configure_tracing().await; - let config = SequencerNodeConfig::load_and_process(args().collect()); - if let Err(ConfigError::CommandInput(clap_err)) = config { - error!("Failed loading configuration: {}", clap_err); - clap_err.exit(); - } - info!("Finished loading configuration."); - - let config = config?; - if let Err(error) = config_validate(&config) { - error!("{}", error); - exit(1); - } - info!("Finished validating configuration."); + let config = + load_and_validate_config(args().collect()).expect("Failed to load and validate config"); // Clients are currently unused, but should not be dropped. let (_clients, servers) = create_node_modules(&config).await; diff --git a/crates/starknet_sequencer_node/src/utils.rs b/crates/starknet_sequencer_node/src/utils.rs index 3a2e1475cb9..a7af3c499ea 100644 --- a/crates/starknet_sequencer_node/src/utils.rs +++ b/crates/starknet_sequencer_node/src/utils.rs @@ -1,3 +1,9 @@ +use std::process::exit; + +use papyrus_config::validators::config_validate; +use papyrus_config::ConfigError; +use tracing::{error, info}; + use crate::clients::{create_node_clients, SequencerNodeClients}; use crate::communication::create_node_channels; use crate::components::create_node_components; @@ -14,3 +20,21 @@ pub async fn create_node_modules( (clients, servers) } + +pub fn load_and_validate_config(args: Vec) -> Result { + let config = SequencerNodeConfig::load_and_process(args); + if let Err(ConfigError::CommandInput(clap_err)) = &config { + error!("Failed loading configuration: {}", clap_err); + clap_err.exit(); + } + info!("Finished loading configuration."); + + let config = config?; + if let Err(error) = config_validate(&config) { + error!("{}", error); + exit(1); + } + info!("Finished validating configuration."); + + Ok(config) +}