From 7750c095cba2838d04a5a4e132fcfc62fbae92b5 Mon Sep 17 00:00:00 2001 From: Alexey Proshutinskiy Date: Fri, 22 Sep 2023 15:55:17 +0300 Subject: [PATCH 1/5] feat(decider): allow to set ipfs multiaddr from env --- crates/server-config/src/node_config.rs | 33 ++++++++++++++++++++----- 1 file changed, 27 insertions(+), 6 deletions(-) diff --git a/crates/server-config/src/node_config.rs b/crates/server-config/src/node_config.rs index e42662e9ac..616b7f4f47 100644 --- a/crates/server-config/src/node_config.rs +++ b/crates/server-config/src/node_config.rs @@ -257,24 +257,42 @@ impl UnresolvedNodeConfig { } if let Ok(decider_api_endpoint) = std::env::var("FLUENCE_ENV_CONNECTOR_API_ENDPOINT") { self.system_services.decider.network_api_endpoint = decider_api_endpoint; - log::warn!("Override configuration of decider system spell (api endpoint) from ENV"); + log::warn!( + "Override configuration of decider system spell (api endpoint) from ENV to {}", + decider_api_endpoint + ); } if let Ok(decider_contract_addr) = std::env::var("FLUENCE_ENV_CONNECTOR_CONTRACT_ADDRESS") { self.system_services.decider.matcher_address = decider_contract_addr; log::warn!( - "Override configuration of decider system spell (contract address) from ENV" + "Override configuration of decider system spell (contract address) from ENV to {}", + decider_contract_addr ); } if let Ok(decider_from_block) = std::env::var("FLUENCE_ENV_CONNECTOR_FROM_BLOCK") { self.system_services.decider.start_block = decider_from_block; - log::warn!("Override configuration of decider system spell (from block) from ENV"); + log::warn!( + "Override configuration of decider system spell (from block) from ENV to {}", + decider_from_block + ); } if let Ok(decider_wallet_key) = std::env::var("FLUENCE_ENV_CONNECTOR_WALLET_KEY") { self.system_services.decider.wallet_key = Some(decider_wallet_key); - log::warn!("Override configuration of decider system spell (wallet key) from ENV"); + log::warn!( + "Override configuration of decider system spell (wallet key) from ENV to {}", + decider_wallet_key + ); + } + + if let Ok(worker_ipfs_multiaddr) = std::env::var("FLUENCE_ENV_DECIDER_IPFS_MULTIADDR") { + self.system_services.decider.worker_ipfs_multiaddr = worker_ipfs_multiaddr; + log::warn!( + "Override configuration of decider system spell (ipfs multiaddr) from ENV to {}", + worker_ipfs_multiaddr + ); } if let Ok(worker_gas) = std::env::var("FLUENCE_ENV_CONNECTOR_WORKER_GAS") { @@ -282,7 +300,7 @@ impl UnresolvedNodeConfig { Ok(worker_gas) => { self.system_services.decider.worker_gas = worker_gas; log::warn!( - "Override configuration of decider system spell (worker gas) from ENV" + "Override configuration of decider system spell (worker gas) from ENV to {}", worker_gas ); } Err(err) => log::warn!( @@ -294,7 +312,10 @@ impl UnresolvedNodeConfig { if let Ok(decider_wallet_key) = std::env::var("FLUENCE_ENV_CONNECTOR_WALLET_KEY") { self.system_services.decider.wallet_key = Some(decider_wallet_key); - log::warn!("Override configuration of decider system spell (wallet key) from ENV"); + log::warn!( + "Override configuration of decider system spell (wallet key) from ENV to {}", + decider_wallet_key + ); } } } From fe9dcd753210866b8e70fe46a79c71c7ac1fce16 Mon Sep 17 00:00:00 2001 From: Alexey Proshutinskiy Date: Fri, 22 Sep 2023 22:18:22 +0300 Subject: [PATCH 2/5] fixes --- crates/server-config/src/node_config.rs | 35 +++++++++---------------- crates/system-services/src/distro.rs | 7 ++++- 2 files changed, 18 insertions(+), 24 deletions(-) diff --git a/crates/server-config/src/node_config.rs b/crates/server-config/src/node_config.rs index 616b7f4f47..6f8875ee6b 100644 --- a/crates/server-config/src/node_config.rs +++ b/crates/server-config/src/node_config.rs @@ -222,86 +222,83 @@ impl UnresolvedNodeConfig { if let Ok(aqua_ipfs_external_addr) = std::env::var("FLUENCE_ENV_AQUA_IPFS_EXTERNAL_API_MULTIADDR") { - self.system_services.aqua_ipfs.external_api_multiaddr = aqua_ipfs_external_addr; log::warn!( "Override configuration of aqua-ipfs system service (external multiaddr) from ENV" ); + self.system_services.aqua_ipfs.external_api_multiaddr = aqua_ipfs_external_addr; } if let Ok(aqua_ipfs_local_addr) = std::env::var("FLUENCE_ENV_AQUA_IPFS_LOCAL_API_MULTIADDR") { - self.system_services.aqua_ipfs.local_api_multiaddr = aqua_ipfs_local_addr; log::warn!( "Override configuration of aqua-ipfs system service (local multiaddr) from ENV" ); + self.system_services.aqua_ipfs.local_api_multiaddr = aqua_ipfs_local_addr; } if let Ok(enable_decider) = std::env::var("FLUENCE_ENV_CONNECTOR_JOIN_ALL_DEALS") { match enable_decider.as_str() { "true" => { - self.system_services.enable.push(ServiceKey::Decider); log::warn!( "Override configuration of system services (enable decider) from ENV" ); + self.system_services.enable.push(ServiceKey::Decider); } "false" => { - self.system_services - .enable - .retain(|key| *key != ServiceKey::Decider); log::warn!( "Override configuration of system services (disable decider) from ENV" ); + self.system_services + .enable + .retain(|key| *key != ServiceKey::Decider); } _ => {} } } if let Ok(decider_api_endpoint) = std::env::var("FLUENCE_ENV_CONNECTOR_API_ENDPOINT") { - self.system_services.decider.network_api_endpoint = decider_api_endpoint; log::warn!( "Override configuration of decider system spell (api endpoint) from ENV to {}", decider_api_endpoint ); + self.system_services.decider.network_api_endpoint = decider_api_endpoint; } if let Ok(decider_contract_addr) = std::env::var("FLUENCE_ENV_CONNECTOR_CONTRACT_ADDRESS") { - self.system_services.decider.matcher_address = decider_contract_addr; log::warn!( "Override configuration of decider system spell (contract address) from ENV to {}", decider_contract_addr ); + self.system_services.decider.matcher_address = decider_contract_addr; } if let Ok(decider_from_block) = std::env::var("FLUENCE_ENV_CONNECTOR_FROM_BLOCK") { - self.system_services.decider.start_block = decider_from_block; log::warn!( "Override configuration of decider system spell (from block) from ENV to {}", decider_from_block ); + self.system_services.decider.start_block = decider_from_block; } if let Ok(decider_wallet_key) = std::env::var("FLUENCE_ENV_CONNECTOR_WALLET_KEY") { + log::warn!("Override configuration of decider system spell (wallet key) from ENV"); self.system_services.decider.wallet_key = Some(decider_wallet_key); - log::warn!( - "Override configuration of decider system spell (wallet key) from ENV to {}", - decider_wallet_key - ); } if let Ok(worker_ipfs_multiaddr) = std::env::var("FLUENCE_ENV_DECIDER_IPFS_MULTIADDR") { - self.system_services.decider.worker_ipfs_multiaddr = worker_ipfs_multiaddr; log::warn!( "Override configuration of decider system spell (ipfs multiaddr) from ENV to {}", worker_ipfs_multiaddr ); + self.system_services.decider.worker_ipfs_multiaddr = worker_ipfs_multiaddr; } if let Ok(worker_gas) = std::env::var("FLUENCE_ENV_CONNECTOR_WORKER_GAS") { match worker_gas.parse() { Ok(worker_gas) => { - self.system_services.decider.worker_gas = worker_gas; log::warn!( "Override configuration of decider system spell (worker gas) from ENV to {}", worker_gas ); + self.system_services.decider.worker_gas = worker_gas; } Err(err) => log::warn!( "Unable to override worker gas, value is not a valid u64: {}", @@ -309,14 +306,6 @@ impl UnresolvedNodeConfig { ), } } - - if let Ok(decider_wallet_key) = std::env::var("FLUENCE_ENV_CONNECTOR_WALLET_KEY") { - self.system_services.decider.wallet_key = Some(decider_wallet_key); - log::warn!( - "Override configuration of decider system spell (wallet key) from ENV to {}", - decider_wallet_key - ); - } } } diff --git a/crates/system-services/src/distro.rs b/crates/system-services/src/distro.rs index b0ad5a56f2..4da8a5c008 100644 --- a/crates/system-services/src/distro.rs +++ b/crates/system-services/src/distro.rs @@ -142,7 +142,12 @@ pub fn default_aqua_ipfs_distro(config: &AquaIpfsConfig) -> eyre::Result id, + ServiceStatus::Existing(id) => id, + }; + let set_local_result = call( name.clone(), "set_local_api_multiaddr".to_string(), From a2f0b43672507f58c908d65cd2f3f4adbe3f58b2 Mon Sep 17 00:00:00 2001 From: Alexey Proshutinskiy Date: Fri, 22 Sep 2023 23:09:59 +0300 Subject: [PATCH 3/5] update aqua-ipfs --- Cargo.lock | 4 ++-- crates/system-services/Cargo.toml | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index b519b3b490..8e90add4d2 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -217,9 +217,9 @@ checksum = "a4668cab20f66d8d020e1fbc0ebe47217433c1b6c8f2040faf858554e394ace6" [[package]] name = "aqua-ipfs-distro" -version = "0.5.17" +version = "0.5.20" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4babf22570f433b4ccabdfeb57a152712e35b562d36abc096197efc0f1b50d03" +checksum = "63178298024f3d55029d308292ae71d292b5934f9860431074b84f9eace5fa0c" dependencies = [ "built 0.5.2", "maplit", diff --git a/crates/system-services/Cargo.toml b/crates/system-services/Cargo.toml index fe3367a864..8252c348c7 100644 --- a/crates/system-services/Cargo.toml +++ b/crates/system-services/Cargo.toml @@ -6,7 +6,7 @@ edition = "2021" # See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html [dependencies] -aqua-ipfs-distro = "=0.5.17" +aqua-ipfs-distro = "=0.5.20" decider-distro = "=0.5.1" registry-distro = "=0.8.7" trust-graph-distro = "=0.4.7" From 004c0267c2cd8900d0d8d8e2612d3839d4489173 Mon Sep 17 00:00:00 2001 From: Alexey Proshutinskiy Date: Fri, 22 Sep 2023 23:16:08 +0300 Subject: [PATCH 4/5] fix --- crates/system-services/src/distro.rs | 9 +++------ 1 file changed, 3 insertions(+), 6 deletions(-) diff --git a/crates/system-services/src/distro.rs b/crates/system-services/src/distro.rs index 4da8a5c008..5b3dfbaaab 100644 --- a/crates/system-services/src/distro.rs +++ b/crates/system-services/src/distro.rs @@ -142,12 +142,9 @@ pub fn default_aqua_ipfs_distro(config: &AquaIpfsConfig) -> eyre::Result id, - ServiceStatus::Existing(id) => id, - }; - + if let Some(ServiceStatus::Created(id)) | ServiceStatus::Existing(id) = + deployment.services.get(&name) + { let set_local_result = call( name.clone(), "set_local_api_multiaddr".to_string(), From d8a57f4c57e56d36f8344c5db7a77a69ff5c7e80 Mon Sep 17 00:00:00 2001 From: Alexey Proshutinskiy Date: Fri, 22 Sep 2023 23:17:24 +0300 Subject: [PATCH 5/5] fix --- crates/system-services/src/distro.rs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/crates/system-services/src/distro.rs b/crates/system-services/src/distro.rs index 5b3dfbaaab..f36eb14937 100644 --- a/crates/system-services/src/distro.rs +++ b/crates/system-services/src/distro.rs @@ -142,7 +142,7 @@ pub fn default_aqua_ipfs_distro(config: &AquaIpfsConfig) -> eyre::Result