summaryrefslogtreecommitdiff
path: root/src/buildtool/main/build_utils.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/buildtool/main/build_utils.cpp')
-rw-r--r--src/buildtool/main/build_utils.cpp14
1 files changed, 11 insertions, 3 deletions
diff --git a/src/buildtool/main/build_utils.cpp b/src/buildtool/main/build_utils.cpp
index e15e5296..46773ca2 100644
--- a/src/buildtool/main/build_utils.cpp
+++ b/src/buildtool/main/build_utils.cpp
@@ -55,14 +55,22 @@ void WriteTargetCacheEntries(
extra_infos,
std::size_t jobs,
gsl::not_null<IExecutionApi*> const& local_api,
- gsl::not_null<IExecutionApi*> const& remote_api) {
+ gsl::not_null<IExecutionApi*> const& remote_api,
+ TargetCacheWriteStrategy strategy) {
+ if (strategy == TargetCacheWriteStrategy::Disable) {
+ return;
+ }
if (!cache_targets.empty()) {
Logger::Log(LogLevel::Info,
"Backing up artifacts of {} export targets",
cache_targets.size());
}
- auto downloader = [&local_api, &remote_api, &jobs](auto infos) {
- return remote_api->ParallelRetrieveToCas(infos, local_api, jobs, false);
+ auto downloader = [&local_api, &remote_api, &jobs, strategy](auto infos) {
+ return remote_api->ParallelRetrieveToCas(
+ infos,
+ local_api,
+ jobs,
+ strategy == TargetCacheWriteStrategy::Split);
};
for (auto const& [key, target] : cache_targets) {
if (auto entry = TargetCacheEntry::FromTarget(target, extra_infos)) {