summaryrefslogtreecommitdiff
path: root/src/buildtool/execution_api/remote/bazel
diff options
context:
space:
mode:
authorMaksim Denisov <denisov.maksim@huawei.com>2024-09-02 17:55:35 +0200
committerMaksim Denisov <denisov.maksim@huawei.com>2024-09-09 13:07:13 +0200
commit56f91aac0c25e6e80dbaae087227502312accee6 (patch)
tree98996ba1159a492d2ec7e0a0d8116722215e36f1 /src/buildtool/execution_api/remote/bazel
parente8d9f711ab3bc67c2ee64fae427b45b63dc47284 (diff)
downloadjustbuild-56f91aac0c25e6e80dbaae087227502312accee6.tar.gz
Return ArtifactDigest from CreateActionDigestFromCommandLine
Diffstat (limited to 'src/buildtool/execution_api/remote/bazel')
-rw-r--r--src/buildtool/execution_api/remote/bazel/bazel_action.cpp12
-rw-r--r--src/buildtool/execution_api/remote/bazel/bazel_action.hpp7
-rw-r--r--src/buildtool/execution_api/remote/bazel/bazel_api.cpp17
3 files changed, 21 insertions, 15 deletions
diff --git a/src/buildtool/execution_api/remote/bazel/bazel_action.cpp b/src/buildtool/execution_api/remote/bazel/bazel_action.cpp
index dcbddb8d..15ca949f 100644
--- a/src/buildtool/execution_api/remote/bazel/bazel_action.cpp
+++ b/src/buildtool/execution_api/remote/bazel/bazel_action.cpp
@@ -16,6 +16,7 @@
#include <utility> // std::move
+#include "src/buildtool/common/artifact_digest_factory.hpp"
#include "src/buildtool/execution_api/bazel_msg/bazel_blob_container.hpp"
#include "src/buildtool/execution_api/bazel_msg/bazel_msg_factory.hpp"
#include "src/buildtool/execution_api/remote/bazel/bazel_response.hpp"
@@ -24,7 +25,7 @@
BazelAction::BazelAction(
std::shared_ptr<BazelNetwork> network,
- bazel_re::Digest root_digest,
+ ArtifactDigest root_digest,
std::vector<std::string> command,
std::string cwd,
std::vector<std::string> output_files,
@@ -112,7 +113,7 @@ auto BazelAction::Execute(Logger const* logger) noexcept
}
auto BazelAction::CreateBundlesForAction(BazelBlobContainer* blobs,
- bazel_re::Digest const& exec_dir,
+ ArtifactDigest const& exec_dir,
bool do_not_cache) const noexcept
-> std::optional<bazel_re::Digest> {
using StoreFunc = BazelMsgFactory::ActionDigestRequest::BlobStoreFunc;
@@ -134,5 +135,10 @@ auto BazelAction::CreateBundlesForAction(BazelBlobContainer* blobs,
.timeout = timeout_,
.skip_action_cache = do_not_cache,
.store_blob = std::move(store_blob)};
- return BazelMsgFactory::CreateActionDigestFromCommandLine(request);
+ auto const action_digest =
+ BazelMsgFactory::CreateActionDigestFromCommandLine(request);
+ if (not action_digest) {
+ return std::nullopt;
+ }
+ return ArtifactDigestFactory::ToBazel(*action_digest);
}
diff --git a/src/buildtool/execution_api/remote/bazel/bazel_action.hpp b/src/buildtool/execution_api/remote/bazel/bazel_action.hpp
index 7bf62a45..c990cc8e 100644
--- a/src/buildtool/execution_api/remote/bazel/bazel_action.hpp
+++ b/src/buildtool/execution_api/remote/bazel/bazel_action.hpp
@@ -21,6 +21,7 @@
#include <string>
#include <vector>
+#include "src/buildtool/common/artifact_digest.hpp"
#include "src/buildtool/common/bazel_types.hpp"
#include "src/buildtool/execution_api/common/execution_action.hpp"
#include "src/buildtool/execution_api/remote/bazel/bazel_network.hpp"
@@ -42,7 +43,7 @@ class BazelAction final : public IExecutionAction {
private:
std::shared_ptr<BazelNetwork> const network_;
- bazel_re::Digest const root_digest_;
+ ArtifactDigest const root_digest_;
std::vector<std::string> const cmdline_;
std::string const cwd_;
std::vector<std::string> output_files_;
@@ -54,7 +55,7 @@ class BazelAction final : public IExecutionAction {
explicit BazelAction(
std::shared_ptr<BazelNetwork> network,
- bazel_re::Digest root_digest,
+ ArtifactDigest root_digest,
std::vector<std::string> command,
std::string cwd,
std::vector<std::string> output_files,
@@ -63,7 +64,7 @@ class BazelAction final : public IExecutionAction {
std::map<std::string, std::string> const& properties) noexcept;
[[nodiscard]] auto CreateBundlesForAction(BazelBlobContainer* blobs,
- bazel_re::Digest const& exec_dir,
+ ArtifactDigest const& exec_dir,
bool do_not_cache) const noexcept
-> std::optional<bazel_re::Digest>;
};
diff --git a/src/buildtool/execution_api/remote/bazel/bazel_api.cpp b/src/buildtool/execution_api/remote/bazel/bazel_api.cpp
index ee672503..cb4ca14b 100644
--- a/src/buildtool/execution_api/remote/bazel/bazel_api.cpp
+++ b/src/buildtool/execution_api/remote/bazel/bazel_api.cpp
@@ -213,15 +213,14 @@ auto BazelApi::CreateAction(
std::map<std::string, std::string> const& env_vars,
std::map<std::string, std::string> const& properties) const noexcept
-> IExecutionAction::Ptr {
- return std::unique_ptr<BazelAction>{
- new BazelAction{network_,
- static_cast<bazel_re::Digest>(root_digest),
- command,
- cwd,
- output_files,
- output_dirs,
- env_vars,
- properties}};
+ return std::unique_ptr<BazelAction>{new BazelAction{network_,
+ root_digest,
+ command,
+ cwd,
+ output_files,
+ output_dirs,
+ env_vars,
+ properties}};
}
// NOLINTNEXTLINE(misc-no-recursion, google-default-arguments)