summaryrefslogtreecommitdiff
path: root/src/buildtool/serve_api/serve_service/target_utils.cpp
diff options
context:
space:
mode:
authorMaksim Denisov <denisov.maksim@huawei.com>2024-06-27 12:22:09 +0200
committerMaksim Denisov <denisov.maksim@huawei.com>2024-07-05 12:58:35 +0200
commitf82adab238f4b45d43049687c8e52bf7372ba053 (patch)
treef09ba0ef72ef1c13122233960759cd5b938249d5 /src/buildtool/serve_api/serve_service/target_utils.cpp
parent5bc6265b2ffe43370b4cddd0a9e4c09b059ef131 (diff)
downloadjustbuild-f82adab238f4b45d43049687c8e52bf7372ba053.tar.gz
Pass StorageConfig and Storage to Serve
Diffstat (limited to 'src/buildtool/serve_api/serve_service/target_utils.cpp')
-rw-r--r--src/buildtool/serve_api/serve_service/target_utils.cpp13
1 files changed, 7 insertions, 6 deletions
diff --git a/src/buildtool/serve_api/serve_service/target_utils.cpp b/src/buildtool/serve_api/serve_service/target_utils.cpp
index c2dd0422..a6463c37 100644
--- a/src/buildtool/serve_api/serve_service/target_utils.cpp
+++ b/src/buildtool/serve_api/serve_service/target_utils.cpp
@@ -25,8 +25,6 @@
#include "src/buildtool/file_system/git_repo.hpp"
#include "src/buildtool/file_system/object_type.hpp"
#include "src/buildtool/logging/log_level.hpp"
-#include "src/buildtool/storage/config.hpp"
-#include "src/buildtool/storage/storage.hpp"
auto IsTreeInRepo(std::string const& tree_id,
std::filesystem::path const& repo_path,
@@ -54,12 +52,13 @@ auto IsTreeInRepo(std::string const& tree_id,
}
auto GetServingRepository(RemoteServeConfig const& serve_config,
+ StorageConfig const& storage_config,
std::string const& tree_id,
std::shared_ptr<Logger> const& logger)
-> std::optional<std::filesystem::path> {
// try the Git cache repository
- if (IsTreeInRepo(tree_id, StorageConfig::Instance().GitRoot(), logger)) {
- return StorageConfig::Instance().GitRoot();
+ if (IsTreeInRepo(tree_id, storage_config.GitRoot(), logger)) {
+ return storage_config.GitRoot();
}
// check the known repositories
for (auto const& path : serve_config.known_repositories) {
@@ -71,6 +70,7 @@ auto GetServingRepository(RemoteServeConfig const& serve_config,
}
auto DetermineRoots(RemoteServeConfig const& serve_config,
+ StorageConfig const& storage_config,
std::string const& main_repo,
std::filesystem::path const& repo_config_path,
gsl::not_null<RepositoryConfig*> const& repository_config,
@@ -103,6 +103,7 @@ auto DetermineRoots(RemoteServeConfig const& serve_config,
// root parser
auto parse_keyword_root =
[&serve_config,
+ &storage_config,
&desc = desc,
&repo = repo,
&error_msg = error_msg,
@@ -122,8 +123,8 @@ auto DetermineRoots(RemoteServeConfig const& serve_config,
}
// find the serving repository for the root tree
auto tree_id = *parsed_root->first.GetAbsentTreeId();
- auto repo_path =
- GetServingRepository(serve_config, tree_id, logger);
+ auto repo_path = GetServingRepository(
+ serve_config, storage_config, tree_id, logger);
if (not repo_path) {
error_msg = fmt::format(
"{} tree {} is not known", keyword, tree_id);