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 /src | |
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.
Diffstat (limited to 'src')
-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 |