summaryrefslogtreecommitdiff
path: root/src/buildtool/graph_traverser/graph_traverser.hpp
diff options
context:
space:
mode:
authorPaul Cristian Sarbu <paul.cristian.sarbu@huawei.com>2024-07-26 10:00:35 +0200
committerPaul Cristian Sarbu <paul.cristian.sarbu@huawei.com>2024-07-30 12:10:06 +0200
commit09fb60908a7f00a7c858a45ced77633bac33bd29 (patch)
treea45e9db9cd7ab221b82d44a077c6ce6ba2bc6272 /src/buildtool/graph_traverser/graph_traverser.hpp
parent507e944f8b40f30d8201af96ff3fe6778161abbb (diff)
downloadjustbuild-09fb60908a7f00a7c858a45ced77633bac33bd29.tar.gz
Pass RemoteContext to GraphTraverser
It is passed as a not_null const pointer, to avoid binding to temporaries, and stored as a const reference to be later passed also to Executor/Rebuilder.
Diffstat (limited to 'src/buildtool/graph_traverser/graph_traverser.hpp')
-rw-r--r--src/buildtool/graph_traverser/graph_traverser.hpp33
1 files changed, 15 insertions, 18 deletions
diff --git a/src/buildtool/graph_traverser/graph_traverser.hpp b/src/buildtool/graph_traverser/graph_traverser.hpp
index fce9b7d4..ccef2ace 100644
--- a/src/buildtool/graph_traverser/graph_traverser.hpp
+++ b/src/buildtool/graph_traverser/graph_traverser.hpp
@@ -33,7 +33,6 @@
#include "gsl/gsl"
#include "src/buildtool/common/artifact_digest.hpp"
#include "src/buildtool/common/cli.hpp"
-#include "src/buildtool/common/remote/remote_common.hpp"
#include "src/buildtool/common/repository_config.hpp"
#include "src/buildtool/common/statistics.hpp"
#include "src/buildtool/common/tree.hpp"
@@ -76,8 +75,7 @@ class GraphTraverser {
explicit GraphTraverser(
CommandLineArguments clargs,
gsl::not_null<const RepositoryConfig*> const& repo_config,
- ExecutionProperties platform_properties,
- std::vector<DispatchEndpoint> dispatch_list,
+ gsl::not_null<RemoteContext const*> const& remote_context,
gsl::not_null<Statistics*> const& stats,
gsl::not_null<Progress*> const& progress,
gsl::not_null<ApiBundle const*> const& apis,
@@ -85,8 +83,7 @@ class GraphTraverser {
Logger const* logger = nullptr)
: clargs_{std::move(clargs)},
repo_config_{repo_config},
- platform_properties_{std::move(platform_properties)},
- dispatch_list_{std::move(dispatch_list)},
+ remote_context_{*remote_context},
stats_{stats},
progress_{progress},
apis_{*apis},
@@ -226,8 +223,7 @@ class GraphTraverser {
private:
CommandLineArguments const clargs_;
gsl::not_null<const RepositoryConfig*> repo_config_;
- ExecutionProperties platform_properties_;
- std::vector<DispatchEndpoint> dispatch_list_;
+ RemoteContext const& remote_context_;
gsl::not_null<Statistics*> stats_;
gsl::not_null<Progress*> progress_;
ApiBundle const& apis_;
@@ -361,11 +357,11 @@ class GraphTraverser {
Executor executor{repo_config_,
&*apis_.local,
&*apis_.remote,
- platform_properties_,
- dispatch_list_,
+ remote_context_.exec_config->platform_properties,
+ remote_context_.exec_config->dispatch,
apis_.hash_function,
- &apis_.auth,
- &apis_.retry_config,
+ remote_context_.auth,
+ remote_context_.retry_config,
stats_,
progress_,
logger_,
@@ -391,18 +387,19 @@ class GraphTraverser {
DependencyGraph const& g,
std::vector<ArtifactIdentifier> const& artifact_ids) const -> bool {
// setup rebuilder with api for cache endpoint
- auto api_cached = apis_.CreateRemote(apis_.remote_config.cache_address,
- &apis_.auth,
- &apis_.retry_config);
+ auto api_cached =
+ apis_.CreateRemote(remote_context_.exec_config->cache_address,
+ remote_context_.auth,
+ remote_context_.retry_config);
Rebuilder executor{repo_config_,
&*apis_.local,
&*apis_.remote,
&*api_cached,
- platform_properties_,
- dispatch_list_,
+ remote_context_.exec_config->platform_properties,
+ remote_context_.exec_config->dispatch,
apis_.hash_function,
- &apis_.auth,
- &apis_.retry_config,
+ remote_context_.auth,
+ remote_context_.retry_config,
stats_,
progress_,
clargs_.build.timeout};