diff options
Diffstat (limited to 'tvix/store/src/utils.rs')
-rw-r--r-- | tvix/store/src/utils.rs | 11 |
1 files changed, 8 insertions, 3 deletions
diff --git a/tvix/store/src/utils.rs b/tvix/store/src/utils.rs index 0a1888f6f2e1..19e0dce568ce 100644 --- a/tvix/store/src/utils.rs +++ b/tvix/store/src/utils.rs @@ -9,11 +9,12 @@ use tokio::io::{self, AsyncWrite}; use tvix_castore::{blobservice::BlobService, directoryservice::DirectoryService}; use url::Url; -use crate::composition::{ - with_registry, Composition, DeserializeWithRegistry, ServiceBuilder, REG, -}; +use crate::composition::REG; use crate::nar::{NarCalculationService, SimpleRenderer}; use crate::pathinfoservice::PathInfoService; +use tvix_castore::composition::{ + with_registry, Composition, DeserializeWithRegistry, ServiceBuilder, +}; #[derive(serde::Deserialize, Default)] pub struct CompositionConfigs { @@ -127,6 +128,10 @@ impl From<ServiceUrlsMemory> for ServiceUrls { } } +/// Deserializes service addresses into composition config, configuring each +/// service as the single "root". +/// If the `xp-composition-cli` feature is enabled, and a file specified in the +/// `--experimental-store-composition` parameter, this is used instead. pub async fn addrs_to_configs( urls: impl Into<ServiceUrls>, ) -> Result<CompositionConfigs, Box<dyn std::error::Error + Send + Sync>> { |