From f821e6b70c59037384ac6afb3a44517fe46953e6 Mon Sep 17 00:00:00 2001 From: Paul Cristian Sarbu Date: Tue, 12 Sep 2023 17:59:20 +0200 Subject: just serve: add remote execution endpoint and --fetch-absent option The serve service will communicate with this endpoint when needed, as well as ensure artifacts it provides are synced with the remote execution CAS, if requested by the client. If just-mr is given the --fetch-absent option, it Always produce present roots irrespective of the 'absent' pragma. For Git repositories marked with the 'absent' pragma, first try to fetch any commit trees provided by the serve endpoint from the execution endpoint CAS, before reverting to a network fetch. Co-authored-by: Klaus Aehlig Co-authored-by: Alberto Sartori --- src/buildtool/serve_api/remote/serve_api.cpp | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) (limited to 'src/buildtool/serve_api/remote/serve_api.cpp') diff --git a/src/buildtool/serve_api/remote/serve_api.cpp b/src/buildtool/serve_api/remote/serve_api.cpp index 67b5a8d4..7b57d7d0 100644 --- a/src/buildtool/serve_api/remote/serve_api.cpp +++ b/src/buildtool/serve_api/remote/serve_api.cpp @@ -24,7 +24,8 @@ ServeApi::ServeApi(ServeApi&& other) noexcept = default; ServeApi::~ServeApi() = default; auto ServeApi::RetrieveTreeFromCommit(std::string const& commit, - std::string const& subdir) + std::string const& subdir, + bool sync_tree) -> std::optional { - return tlc_->ServeCommitTree(commit, subdir); + return tlc_->ServeCommitTree(commit, subdir, sync_tree); } -- cgit v1.2.3