From afa55dd6d4b797787bb4f383f2b1c2f456430738 Mon Sep 17 00:00:00 2001 From: Paul Cristian Sarbu Date: Wed, 13 Dec 2023 10:33:07 +0100 Subject: just serve target description: Client-side and API implementation --- src/buildtool/serve_api/remote/target_client.hpp | 12 ++++++++++++ 1 file changed, 12 insertions(+) (limited to 'src/buildtool/serve_api/remote/target_client.hpp') diff --git a/src/buildtool/serve_api/remote/target_client.hpp b/src/buildtool/serve_api/remote/target_client.hpp index 9219fb3d..66c6dcf2 100644 --- a/src/buildtool/serve_api/remote/target_client.hpp +++ b/src/buildtool/serve_api/remote/target_client.hpp @@ -23,6 +23,7 @@ #include "justbuild/just_serve/just_serve.grpc.pb.h" #include "src/buildtool/common/artifact.hpp" +#include "src/buildtool/common/artifact_digest.hpp" #include "src/buildtool/common/remote/port.hpp" #include "src/buildtool/execution_api/common/create_execution_api.hpp" #include "src/buildtool/logging/logger.hpp" @@ -54,6 +55,17 @@ class TargetClient { std::string const& target) -> std::optional>; + /// \brief Retrieve the artifact digest of the blob containing the export + /// target description fields required by just describe. + /// \param[in] target_root_id Hash of target-level root tree. + /// \param[in] target_file Relative path of the target file. + /// \param[in] target Name of the target to interrogate. + /// \returns The artifact digest, or nullopt on errors. + [[nodiscard]] auto ServeTargetDescription(std::string const& target_root_id, + std::string const& target_file, + std::string const& target) + -> std::optional; + private: std::unique_ptr stub_; Logger logger_{"RemoteTargetClient"}; -- cgit v1.2.3