summaryrefslogtreecommitdiff
path: root/src/buildtool/execution_api/common
diff options
context:
space:
mode:
Diffstat (limited to 'src/buildtool/execution_api/common')
-rw-r--r--src/buildtool/execution_api/common/TARGETS3
-rw-r--r--src/buildtool/execution_api/common/create_execution_api.hpp6
2 files changed, 7 insertions, 2 deletions
diff --git a/src/buildtool/execution_api/common/TARGETS b/src/buildtool/execution_api/common/TARGETS
index 3c580d4d..4a9c60e1 100644
--- a/src/buildtool/execution_api/common/TARGETS
+++ b/src/buildtool/execution_api/common/TARGETS
@@ -32,7 +32,8 @@
, "hdrs": ["create_execution_api.hpp"]
, "stage": ["src", "buildtool", "execution_api", "common"]
, "deps":
- [ ["src/buildtool/common/remote", "remote_common"]
+ [ ["src/buildtool/common", "config"]
+ , ["src/buildtool/common/remote", "remote_common"]
, ["src/buildtool/execution_api/local", "local"]
, ["src/buildtool/execution_api/remote", "bazel"]
]
diff --git a/src/buildtool/execution_api/common/create_execution_api.hpp b/src/buildtool/execution_api/common/create_execution_api.hpp
index 02fcee4b..c62d0f17 100644
--- a/src/buildtool/execution_api/common/create_execution_api.hpp
+++ b/src/buildtool/execution_api/common/create_execution_api.hpp
@@ -20,15 +20,19 @@
#include "gsl/gsl"
#include "src/buildtool/common/remote/remote_common.hpp"
+#include "src/buildtool/common/repository_config.hpp"
#include "src/buildtool/execution_api/local/local_api.hpp"
#include "src/buildtool/execution_api/remote/bazel/bazel_api.hpp"
/// \brief Utility function to instantiate either a Local or Bazel Execution
/// API.
/// \param address if provided, a BazelApi is instantiated
+/// \param repo_config repository configuration to be used by GitApi calls
/// \param instance_name only used in the construction of the BazelApi object
[[nodiscard]] static inline auto CreateExecutionApi(
std::optional<ServerAddress> const& address,
+ std::optional<gsl::not_null<RepositoryConfig*>> const& repo_config =
+ std::nullopt,
std::string const& instance_name = "remote-execution")
-> gsl::not_null<IExecutionApi::Ptr> {
if (address) {
@@ -38,7 +42,7 @@
return std::make_unique<BazelApi>(
instance_name, address->host, address->port, config);
}
- return std::make_unique<LocalApi>();
+ return std::make_unique<LocalApi>(repo_config);
}
#endif