summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/buildtool/serve_api/remote/serve_target_level_cache_client.cpp4
-rw-r--r--src/buildtool/serve_api/remote/serve_target_level_cache_client.hpp2
-rw-r--r--src/buildtool/serve_api/serve_service/TARGETS10
-rw-r--r--src/buildtool/serve_api/serve_service/just_serve.proto30
-rw-r--r--src/buildtool/serve_api/serve_service/serve_server_implementation.cpp6
-rw-r--r--src/buildtool/serve_api/serve_service/source_tree.cpp (renamed from src/buildtool/serve_api/serve_service/target_level_cache_server.cpp)27
-rw-r--r--src/buildtool/serve_api/serve_service/source_tree.hpp (renamed from src/buildtool/serve_api/serve_service/target_level_cache_server.hpp)10
7 files changed, 45 insertions, 44 deletions
diff --git a/src/buildtool/serve_api/remote/serve_target_level_cache_client.cpp b/src/buildtool/serve_api/remote/serve_target_level_cache_client.cpp
index 3109d4d9..b414b7ac 100644
--- a/src/buildtool/serve_api/remote/serve_target_level_cache_client.cpp
+++ b/src/buildtool/serve_api/remote/serve_target_level_cache_client.cpp
@@ -19,7 +19,7 @@
ServeTargetLevelCacheClient::ServeTargetLevelCacheClient(
std::string const& server,
Port port) noexcept {
- stub_ = justbuild::just_serve::TargetLevelCache::NewStub(
+ stub_ = justbuild::just_serve::SourceTree::NewStub(
CreateChannelWithCredentials(server, port));
}
@@ -41,7 +41,7 @@ auto ServeTargetLevelCacheClient::ServeCommitTree(std::string const& commit_id,
return std::nullopt;
}
if (response.status() !=
- ::justbuild::just_serve::ServeCommitTreeStatus::OK) {
+ ::justbuild::just_serve::ServeCommitTreeResponse::OK) {
logger_.Emit(LogLevel::Debug,
"ServeCommitTree response returned with {}",
static_cast<int>(response.status()));
diff --git a/src/buildtool/serve_api/remote/serve_target_level_cache_client.hpp b/src/buildtool/serve_api/remote/serve_target_level_cache_client.hpp
index a9b2a3d2..551759cb 100644
--- a/src/buildtool/serve_api/remote/serve_target_level_cache_client.hpp
+++ b/src/buildtool/serve_api/remote/serve_target_level_cache_client.hpp
@@ -39,7 +39,7 @@ class ServeTargetLevelCacheClient {
-> std::optional<std::string>;
private:
- std::unique_ptr<justbuild::just_serve::TargetLevelCache::Stub> stub_;
+ std::unique_ptr<justbuild::just_serve::SourceTree::Stub> stub_;
Logger logger_{"RemoteTLCClient"};
};
diff --git a/src/buildtool/serve_api/serve_service/TARGETS b/src/buildtool/serve_api/serve_service/TARGETS
index ba2b09e3..ec94ee76 100644
--- a/src/buildtool/serve_api/serve_service/TARGETS
+++ b/src/buildtool/serve_api/serve_service/TARGETS
@@ -6,11 +6,11 @@
, "deps": [["@", "bazel_remote_apis", "", "remote_execution_proto"]]
, "stage": ["justbuild", "just_serve"]
}
-, "target_level_cache_server":
+, "source_tree":
{ "type": ["@", "rules", "CC", "library"]
- , "name": ["target_level_cache_server"]
- , "hdrs": ["target_level_cache_server.hpp"]
- , "srcs": ["target_level_cache_server.cpp"]
+ , "name": ["source_tree"]
+ , "hdrs": ["source_tree.hpp"]
+ , "srcs": ["source_tree.cpp"]
, "proto": ["just_serve_proto"]
, "deps":
[ ["src/buildtool/logging", "logging"]
@@ -37,7 +37,7 @@
, "deps": [["src/buildtool/logging", "logging"]]
, "stage": ["src", "buildtool", "serve_api", "serve_service"]
, "private-deps":
- [ "target_level_cache_server"
+ [ "source_tree"
, ["@", "fmt", "", "fmt"]
, ["@", "grpc", "", "grpc++"]
, ["@", "json", "", "json"]
diff --git a/src/buildtool/serve_api/serve_service/just_serve.proto b/src/buildtool/serve_api/serve_service/just_serve.proto
index c20f77aa..d798fd76 100644
--- a/src/buildtool/serve_api/serve_service/just_serve.proto
+++ b/src/buildtool/serve_api/serve_service/just_serve.proto
@@ -30,20 +30,6 @@ message ServeCommitTreeRequest {
bool sync_tree = 3;
}
-enum ServeCommitTreeStatus{
- // All good
- OK = 0;
-
- // Failed to upload tree remotely
- SYNC_ERROR = 1;
-
- // Tree not found
- NOT_FOUND = 2;
-
- // Internaly, something is very broken
- INTERNAL_ERROR = 3;
-}
-
// A response message for
// [TargetLevelCache.ServeCommitTree][justbuild.just_serve.TargetLevelCache.ServeCommitTree].
@@ -51,13 +37,27 @@ message ServeCommitTreeResponse {
// The requested Git tree hash.
string tree = 1;
+ enum ServeCommitTreeStatus{
+ // All good
+ OK = 0;
+
+ // Failed to upload tree remotely
+ SYNC_ERROR = 1;
+
+ // Tree not found
+ NOT_FOUND = 2;
+
+ // Internaly, something is very broken
+ INTERNAL_ERROR = 3;
+ }
+
// If the status has a code `OK` or `SYNC_ERROR`, the tree is correct.
// For any other value, the `tree` field is not set.
ServeCommitTreeStatus status = 2;
}
// Services for improved interaction with the target-level cache.
-service TargetLevelCache {
+service SourceTree {
// Retrieve the Git-subtree identifier from a given Git commit.
//
// There are no method-specific errors.
diff --git a/src/buildtool/serve_api/serve_service/serve_server_implementation.cpp b/src/buildtool/serve_api/serve_service/serve_server_implementation.cpp
index 1a83e467..f1113cdd 100644
--- a/src/buildtool/serve_api/serve_service/serve_server_implementation.cpp
+++ b/src/buildtool/serve_api/serve_service/serve_server_implementation.cpp
@@ -28,7 +28,7 @@
#include "src/buildtool/file_system/file_system_manager.hpp"
#include "src/buildtool/file_system/git_repo.hpp"
#include "src/buildtool/logging/logger.hpp"
-#include "src/buildtool/serve_api/serve_service/target_level_cache_server.hpp"
+#include "src/buildtool/serve_api/serve_service/source_tree.hpp"
#include "src/buildtool/storage/config.hpp"
namespace {
@@ -47,11 +47,11 @@ auto TryWrite(std::string const& file, T const& content) noexcept -> bool {
} // namespace
auto ServeServerImpl::Run() -> bool {
- TargetLevelCacheService tlc{};
+ SourceTreeService sts{};
grpc::ServerBuilder builder;
- builder.RegisterService(&tlc);
+ builder.RegisterService(&sts);
std::shared_ptr<grpc::ServerCredentials> creds;
if (Auth::GetAuthMethod() == AuthMethod::kTLS) {
diff --git a/src/buildtool/serve_api/serve_service/target_level_cache_server.cpp b/src/buildtool/serve_api/serve_service/source_tree.cpp
index e0451c63..8d91c2f5 100644
--- a/src/buildtool/serve_api/serve_service/target_level_cache_server.cpp
+++ b/src/buildtool/serve_api/serve_service/source_tree.cpp
@@ -12,7 +12,7 @@
// See the License for the specific language governing permissions and
// limitations under the License.
-#include "src/buildtool/serve_api/serve_service/target_level_cache_server.hpp"
+#include "src/buildtool/serve_api/serve_service/source_tree.hpp"
#include "fmt/core.h"
#include "src/buildtool/common/artifact.hpp"
@@ -24,7 +24,7 @@
#include "src/buildtool/serve_api/remote/config.hpp"
#include "src/buildtool/storage/config.hpp"
-auto TargetLevelCacheService::CreateExecutionApi(
+auto SourceTreeService::CreateExecutionApi(
std::optional<RemoteExecutionConfig::ServerAddress> const& address)
-> gsl::not_null<IExecutionApi::Ptr> {
if (address) {
@@ -37,7 +37,7 @@ auto TargetLevelCacheService::CreateExecutionApi(
return std::make_unique<LocalApi>();
}
-auto TargetLevelCacheService::GetTreeFromCommit(
+auto SourceTreeService::GetTreeFromCommit(
std::filesystem::path const& repo_path,
std::string const& commit,
std::string const& subdir,
@@ -66,13 +66,13 @@ auto TargetLevelCacheService::GetTreeFromCommit(
return std::nullopt;
}
-auto TargetLevelCacheService::ServeCommitTree(
+auto SourceTreeService::ServeCommitTree(
::grpc::ServerContext* /* context */,
const ::justbuild::just_serve::ServeCommitTreeRequest* request,
::justbuild::just_serve::ServeCommitTreeResponse* response)
-> ::grpc::Status {
- using ServeCommitTreeStatus =
- ::justbuild::just_serve::ServeCommitTreeStatus;
+ using ServeCommitTreeResponse =
+ ::justbuild::just_serve::ServeCommitTreeResponse;
auto const& commit{request->commit()};
auto const& subdir{request->subdir()};
// try in local build root Git cache
@@ -86,7 +86,7 @@ auto TargetLevelCacheService::ServeCommitTree(
auto str = fmt::format("Failed to SetGitCAS at {}",
StorageConfig::GitRoot().string());
logger_->Emit(LogLevel::Debug, str);
- response->set_status(ServeCommitTreeStatus::INTERNAL_ERROR);
+ response->set_status(ServeCommitTreeResponse::INTERNAL_ERROR);
return ::grpc::Status::OK;
}
auto git_api = GitApi{&repo};
@@ -97,13 +97,13 @@ auto TargetLevelCacheService::ServeCommitTree(
auto str = fmt::format("Failed to sync tree {}", *tree_id);
logger_->Emit(LogLevel::Debug, str);
*(response->mutable_tree()) = std::move(*tree_id);
- response->set_status(ServeCommitTreeStatus::SYNC_ERROR);
+ response->set_status(ServeCommitTreeResponse::SYNC_ERROR);
return ::grpc::Status::OK;
}
}
// set response
*(response->mutable_tree()) = std::move(*tree_id);
- response->set_status(ServeCommitTreeStatus::OK);
+ response->set_status(ServeCommitTreeResponse::OK);
return ::grpc::Status::OK;
}
// try given extra repositories, in order
@@ -118,7 +118,8 @@ auto TargetLevelCacheService::ServeCommitTree(
auto str =
fmt::format("Failed to SetGitCAS at {}", path.string());
logger_->Emit(LogLevel::Debug, str);
- response->set_status(ServeCommitTreeStatus::INTERNAL_ERROR);
+ response->set_status(
+ ServeCommitTreeResponse::INTERNAL_ERROR);
return ::grpc::Status::OK;
}
auto git_api = GitApi{&repo};
@@ -129,16 +130,16 @@ auto TargetLevelCacheService::ServeCommitTree(
auto str = fmt::format("Failed to sync tree {}", *tree_id);
logger_->Emit(LogLevel::Debug, str);
*(response->mutable_tree()) = std::move(*tree_id);
- response->set_status(ServeCommitTreeStatus::SYNC_ERROR);
+ response->set_status(ServeCommitTreeResponse::SYNC_ERROR);
}
}
// set response
*(response->mutable_tree()) = std::move(*tree_id);
- response->set_status(ServeCommitTreeStatus::OK);
+ response->set_status(ServeCommitTreeResponse::OK);
return ::grpc::Status::OK;
}
}
// commit not found
- response->set_status(ServeCommitTreeStatus::NOT_FOUND);
+ response->set_status(ServeCommitTreeResponse::NOT_FOUND);
return ::grpc::Status::OK;
}
diff --git a/src/buildtool/serve_api/serve_service/target_level_cache_server.hpp b/src/buildtool/serve_api/serve_service/source_tree.hpp
index 826d4031..a1599508 100644
--- a/src/buildtool/serve_api/serve_service/target_level_cache_server.hpp
+++ b/src/buildtool/serve_api/serve_service/source_tree.hpp
@@ -12,8 +12,8 @@
// See the License for the specific language governing permissions and
// limitations under the License.
-#ifndef TARGET_LEVEL_CACHE_SERVER_HPP
-#define TARGET_LEVEL_CACHE_SERVER_HPP
+#ifndef INCLUDED_SRC_BUILDTOOL_SERVE_API_SERVE_SERVICE_SOURCE_TREE_HPP
+#define INCLUDED_SRC_BUILDTOOL_SERVE_API_SERVE_SERVICE_SOURCE_TREE_HPP
#include <filesystem>
#include <memory>
@@ -27,8 +27,8 @@
#include "src/buildtool/execution_api/remote/config.hpp"
#include "src/buildtool/logging/logger.hpp"
-class TargetLevelCacheService final
- : public justbuild::just_serve::TargetLevelCache::Service {
+class SourceTreeService final
+ : public justbuild::just_serve::SourceTree::Service {
public:
// Retrieve the tree of a commit.
@@ -67,4 +67,4 @@ class TargetLevelCacheService final
std::shared_ptr<Logger> const& logger) -> std::optional<std::string>;
};
-#endif // TARGET_LEVEL_CACHE_SERVER_HPP
+#endif