diff options
author | Paul Cristian Sarbu <paul.cristian.sarbu@huawei.com> | 2023-12-08 13:45:51 +0100 |
---|---|---|
committer | Paul Cristian Sarbu <paul.cristian.sarbu@huawei.com> | 2023-12-12 14:37:18 +0100 |
commit | 569d3e045efe7d15ecbf4331d093c83f48d3cc38 (patch) | |
tree | f0fb56537154c2ed8f01b706de0df0e3a2bf673c | |
parent | c26ec6a240877717157ac76357e2ba2496fcd9d6 (diff) | |
download | justbuild-569d3e045efe7d15ecbf4331d093c83f48d3cc38.tar.gz |
build_utils: Be specific in target cache entry store location...
...by specifying which TargetCache instance to use. This will allow
'just serve' to store target cache entries into the correct sharded
location.
-rw-r--r-- | src/buildtool/main/build_utils.cpp | 6 | ||||
-rw-r--r-- | src/buildtool/main/build_utils.hpp | 5 |
2 files changed, 7 insertions, 4 deletions
diff --git a/src/buildtool/main/build_utils.cpp b/src/buildtool/main/build_utils.cpp index 50557b71..2453e5e6 100644 --- a/src/buildtool/main/build_utils.cpp +++ b/src/buildtool/main/build_utils.cpp @@ -70,7 +70,8 @@ void WriteTargetCacheEntries( std::size_t jobs, gsl::not_null<IExecutionApi*> const& local_api, gsl::not_null<IExecutionApi*> const& remote_api, - TargetCacheWriteStrategy strategy) { + TargetCacheWriteStrategy strategy, + TargetCache<true> const& tc) { if (strategy == TargetCacheWriteStrategy::Disable) { return; } @@ -88,8 +89,7 @@ void WriteTargetCacheEntries( }; for (auto const& [key, target] : cache_targets) { if (auto entry = TargetCacheEntry::FromTarget(target, extra_infos)) { - if (not Storage::Instance().TargetCache().Store( - key, *entry, downloader)) { + if (not tc.Store(key, *entry, downloader)) { Logger::Log(LogLevel::Warning, "Failed writing target cache entry for {}", key.Id().ToString()); diff --git a/src/buildtool/main/build_utils.hpp b/src/buildtool/main/build_utils.hpp index 193d5717..116ef1a9 100644 --- a/src/buildtool/main/build_utils.hpp +++ b/src/buildtool/main/build_utils.hpp @@ -28,6 +28,8 @@ #include "gsl/gsl" #include "src/buildtool/common/artifact.hpp" #include "src/buildtool/execution_api/common/execution_api.hpp" +#include "src/buildtool/storage/storage.hpp" +#include "src/buildtool/storage/target_cache.hpp" #endif // BOOTSTRAP_BUILD_TOOL // Return disjoint maps for artifacts and runfiles @@ -58,7 +60,8 @@ void WriteTargetCacheEntries( std::size_t jobs, gsl::not_null<IExecutionApi*> const& local_api, gsl::not_null<IExecutionApi*> const& remote_api, - TargetCacheWriteStrategy strategy = TargetCacheWriteStrategy::Sync); + TargetCacheWriteStrategy strategy = TargetCacheWriteStrategy::Sync, + TargetCache<true> const& tc = Storage::Instance().TargetCache()); #endif // BOOTSTRAP_BUILD_TOOL #endif // INCLUDED_SRC_BUILDOOL_MAIN_BUILD_UTILS_HPP |