diff options
4 files changed, 20 insertions, 22 deletions
diff --git a/src/buildtool/execution_api/remote/bazel/bazel_cas_client.cpp b/src/buildtool/execution_api/remote/bazel/bazel_cas_client.cpp index 817a0f05..91da34ec 100644 --- a/src/buildtool/execution_api/remote/bazel/bazel_cas_client.cpp +++ b/src/buildtool/execution_api/remote/bazel/bazel_cas_client.cpp @@ -32,7 +32,6 @@ #include "src/buildtool/common/remote/client_common.hpp" #include "src/buildtool/common/remote/retry.hpp" #include "src/buildtool/common/remote/retry_config.hpp" -#include "src/buildtool/execution_api/common/bytestream_utils.hpp" #include "src/buildtool/execution_api/common/message_limits.hpp" #include "src/buildtool/file_system/object_type.hpp" #include "src/buildtool/logging/log_level.hpp" @@ -395,15 +394,13 @@ auto BazelCasClient::UpdateSingleBlob(std::string const& instance_name, auto BazelCasClient::IncrementalReadSingleBlob(std::string const& instance_name, ArtifactDigest const& digest) const noexcept -> ByteStreamClient::IncrementalReader { - return stream_->IncrementalRead( - ByteStreamUtils::ReadRequest{instance_name, digest}); + return stream_->IncrementalRead(instance_name, digest); } auto BazelCasClient::ReadSingleBlob(std::string const& instance_name, ArtifactDigest const& digest) const noexcept -> std::optional<ArtifactBlob> { - if (auto data = stream_->Read( - ByteStreamUtils::ReadRequest{instance_name, digest})) { + if (auto data = stream_->Read(instance_name, digest)) { return ArtifactBlob{digest, std::move(*data), /*is_exec=*/false}; } return std::nullopt; diff --git a/src/buildtool/execution_api/remote/bazel/bytestream_client.hpp b/src/buildtool/execution_api/remote/bazel/bytestream_client.hpp index 452c0abe..e4f8f465 100644 --- a/src/buildtool/execution_api/remote/bazel/bytestream_client.hpp +++ b/src/buildtool/execution_api/remote/bazel/bytestream_client.hpp @@ -29,6 +29,7 @@ #include "google/bytestream/bytestream.pb.h" #include "gsl/gsl" #include "src/buildtool/auth/authentication.hpp" +#include "src/buildtool/common/artifact_digest.hpp" #include "src/buildtool/common/remote/client_common.hpp" #include "src/buildtool/common/remote/port.hpp" #include "src/buildtool/execution_api/common/artifact_blob.hpp" @@ -77,11 +78,15 @@ class ByteStreamClient { IncrementalReader( gsl::not_null<google::bytestream::ByteStream::Stub*> const& stub, - ByteStreamUtils::ReadRequest&& read_request, + std::string const& instance_name, + ArtifactDigest const& digest, Logger const* logger) : logger_{logger} { google::bytestream::ReadRequest request{}; - request.set_resource_name(std::move(read_request).ToString()); + + auto resource_name = + ByteStreamUtils::ReadRequest{instance_name, digest}.ToString(); + request.set_resource_name(std::move(resource_name)); reader_ = stub->Read(&ctx_, request); } }; @@ -93,14 +98,16 @@ class ByteStreamClient { CreateChannelWithCredentials(server, port, auth)); } - [[nodiscard]] auto IncrementalRead(ByteStreamUtils::ReadRequest&& request) - const noexcept -> IncrementalReader { - return IncrementalReader{stub_.get(), std::move(request), &logger_}; + [[nodiscard]] auto IncrementalRead( + std::string const& instance_name, + ArtifactDigest const& digest) const noexcept -> IncrementalReader { + return IncrementalReader{stub_.get(), instance_name, digest, &logger_}; } - [[nodiscard]] auto Read(ByteStreamUtils::ReadRequest&& request) - const noexcept -> std::optional<std::string> { - auto reader = IncrementalRead(std::move(request)); + [[nodiscard]] auto Read(std::string const& instance_name, + ArtifactDigest const& digest) const noexcept + -> std::optional<std::string> { + auto reader = IncrementalRead(instance_name, digest); std::string output{}; auto data = reader.Next(); while (data and not data->empty()) { diff --git a/test/buildtool/execution_api/bazel/TARGETS b/test/buildtool/execution_api/bazel/TARGETS index edbaf311..19797ea1 100644 --- a/test/buildtool/execution_api/bazel/TARGETS +++ b/test/buildtool/execution_api/bazel/TARGETS @@ -58,7 +58,6 @@ , ["@", "src", "src/buildtool/common/remote", "remote_common"] , ["@", "src", "src/buildtool/crypto", "hash_function"] , ["@", "src", "src/buildtool/execution_api/common", "artifact_blob"] - , ["@", "src", "src/buildtool/execution_api/common", "bytestream_utils"] , ["@", "src", "src/buildtool/execution_api/common", "common"] , ["@", "src", "src/buildtool/execution_api/common", "ids"] , ["@", "src", "src/buildtool/execution_api/remote", "bazel_network"] diff --git a/test/buildtool/execution_api/bazel/bytestream_client.test.cpp b/test/buildtool/execution_api/bazel/bytestream_client.test.cpp index 96a95701..f607bc3a 100644 --- a/test/buildtool/execution_api/bazel/bytestream_client.test.cpp +++ b/test/buildtool/execution_api/bazel/bytestream_client.test.cpp @@ -27,7 +27,6 @@ #include "src/buildtool/common/remote/remote_common.hpp" #include "src/buildtool/crypto/hash_function.hpp" #include "src/buildtool/execution_api/common/artifact_blob.hpp" -#include "src/buildtool/execution_api/common/bytestream_utils.hpp" #include "src/buildtool/execution_api/remote/config.hpp" #include "src/buildtool/file_system/object_type.hpp" #include "test/utils/hermeticity/test_hash_function_type.hpp" @@ -59,8 +58,7 @@ TEST_CASE("ByteStream Client: Transfer single blob", "[execution_api]") { ArtifactBlob const blob{digest, content, /*is_exec=*/false}; CHECK(stream.Write(instance_name, blob)); - auto const data = - stream.Read(ByteStreamUtils::ReadRequest{instance_name, digest}); + auto const data = stream.Read(instance_name, digest); CHECK(data == content); } @@ -96,15 +94,12 @@ TEST_CASE("ByteStream Client: Transfer single blob", "[execution_api]") { CHECK(stream.Write(instance_name, blob)); SECTION("Download large blob") { - auto const data = stream.Read( - ByteStreamUtils::ReadRequest{instance_name, digest}); - + auto const data = stream.Read(instance_name, digest); CHECK(data == content); } SECTION("Incrementally download large blob") { - auto reader = stream.IncrementalRead( - ByteStreamUtils::ReadRequest{instance_name, digest}); + auto reader = stream.IncrementalRead(instance_name, digest); std::string data{}; auto chunk = reader.Next(); |