Skip to main content

Mountain/Binary/Service/
ConfigurationInitialize.rs

1// Configuration Initialize Module — Initializes and merges application
2// configurations.
3
4use crate::{
5	Environment::{
6		ConfigurationProvider::Loading::initialize_and_merge_configurations,
7		MountainEnvironment::MountainEnvironment,
8	},
9	dev_log,
10};
11
12/// Initializes and merges all application configurations.
13///
14/// # Arguments
15///
16/// * `Environment` - The Mountain environment instance
17///
18/// # Returns
19///
20/// A `Result` indicating success or failure.
21pub async fn ConfigurationInitialize(Environment:&std::sync::Arc<MountainEnvironment>) -> Result<(), String> {
22	match initialize_and_merge_configurations(Environment).await {
23		Ok(()) => {
24			dev_log!(
25				"config",
26				"[Config] [Initialize] Configuration initialized and merged successfully."
27			);
28			Ok(())
29		},
30		Err(e) => {
31			dev_log!("config", "error: [Config] [Initialize] Failed: {}", e);
32			Err(format!("Failed to initialize and merge configurations: {}", e))
33		},
34	}
35}