From 9ab21a7f3d7e349b05ceaad5862d7e72a6d7e7b4 Mon Sep 17 00:00:00 2001 From: Paul Cristian Sarbu Date: Mon, 1 Jul 2024 14:56:32 +0200 Subject: Pass Auth::TLS instance to BazelApi and ServeApi --- src/buildtool/execution_api/common/TARGETS | 1 + src/buildtool/execution_api/common/api_bundle.cpp | 6 ++++-- src/buildtool/execution_api/common/api_bundle.hpp | 5 ++++- 3 files changed, 9 insertions(+), 3 deletions(-) (limited to 'src/buildtool/execution_api/common') diff --git a/src/buildtool/execution_api/common/TARGETS b/src/buildtool/execution_api/common/TARGETS index a2063a70..b355641b 100644 --- a/src/buildtool/execution_api/common/TARGETS +++ b/src/buildtool/execution_api/common/TARGETS @@ -40,6 +40,7 @@ , "stage": ["src", "buildtool", "execution_api", "common"] , "deps": [ "common" + , ["src/buildtool/auth", "auth"] , ["src/buildtool/common", "config"] , ["src/buildtool/common/remote", "remote_common"] ] diff --git a/src/buildtool/execution_api/common/api_bundle.cpp b/src/buildtool/execution_api/common/api_bundle.cpp index 488fc25d..17e3d3af 100644 --- a/src/buildtool/execution_api/common/api_bundle.cpp +++ b/src/buildtool/execution_api/common/api_bundle.cpp @@ -19,8 +19,10 @@ #include "src/buildtool/execution_api/remote/bazel/bazel_api.hpp" ApiBundle::ApiBundle(RepositoryConfig const* repo_config, + Auth::TLS const* authentication, std::optional const& remote_address) - : local{std::make_shared(repo_config)}, + : local{std::make_shared(repo_config)}, // needed by remote + auth{authentication}, // needed by remote remote{CreateRemote(remote_address)} {} auto ApiBundle::CreateRemote(std::optional const& address) const @@ -29,7 +31,7 @@ auto ApiBundle::CreateRemote(std::optional const& address) const ExecutionConfiguration config; config.skip_cache_lookup = false; return std::make_shared( - "remote-execution", address->host, address->port, config); + "remote-execution", address->host, address->port, auth, config); } return local; } diff --git a/src/buildtool/execution_api/common/api_bundle.hpp b/src/buildtool/execution_api/common/api_bundle.hpp index 53e59de2..72fdb687 100644 --- a/src/buildtool/execution_api/common/api_bundle.hpp +++ b/src/buildtool/execution_api/common/api_bundle.hpp @@ -19,6 +19,7 @@ #include #include "gsl/gsl" +#include "src/buildtool/auth/authentication.hpp" #include "src/buildtool/common/remote/remote_common.hpp" #include "src/buildtool/common/repository_config.hpp" #include "src/buildtool/execution_api/common/execution_api.hpp" @@ -28,12 +29,14 @@ /// exactly the same instance that local api is (&*remote == & *local). struct ApiBundle final { explicit ApiBundle(RepositoryConfig const* repo_config, + Auth::TLS const* authentication, std::optional const& remote_address); [[nodiscard]] auto CreateRemote(std::optional const& address) const -> gsl::not_null; - gsl::not_null const local; + gsl::not_null const local; // needed by remote + Auth::TLS const* auth; // needed by remote gsl::not_null const remote; }; -- cgit v1.2.3