diff options
Diffstat (limited to 'src/other_tools/root_maps/fpath_git_map.cpp')
-rw-r--r-- | src/other_tools/root_maps/fpath_git_map.cpp | 42 |
1 files changed, 19 insertions, 23 deletions
diff --git a/src/other_tools/root_maps/fpath_git_map.cpp b/src/other_tools/root_maps/fpath_git_map.cpp index 186261b7..913c3db7 100644 --- a/src/other_tools/root_maps/fpath_git_map.cpp +++ b/src/other_tools/root_maps/fpath_git_map.cpp @@ -37,15 +37,15 @@ void CheckServeAndSetRoot( std::string const& tree_id, std::string const& repo_root, bool absent, - bool serve_api_exists, + std::optional<gsl::not_null<const ServeApi*>> const& serve, std::optional<gsl::not_null<IExecutionApi*>> const& remote_api, FilePathGitMap::SetterPtr const& ws_setter, FilePathGitMap::LoggerPtr const& logger) { // if serve endpoint is given, try to ensure it has this tree available to // be able to build against it. If root is not absent, do not fail if we // don't have a suitable remote endpoint, but warn user nonetheless. - if (serve_api_exists) { - auto has_tree = CheckServeHasAbsentRoot(tree_id, logger); + if (serve) { + auto has_tree = CheckServeHasAbsentRoot(**serve, tree_id, logger); if (not has_tree) { return; // fatal } @@ -63,7 +63,8 @@ void CheckServeAndSetRoot( } } else { - if (not EnsureAbsentRootOnServe(tree_id, + if (not EnsureAbsentRootOnServe(**serve, + tree_id, repo_root, &(*remote_api.value()), logger, @@ -100,7 +101,7 @@ void ResolveFilePathTree( bool absent, gsl::not_null<CriticalGitOpMap*> const& critical_git_op_map, gsl::not_null<ResolveSymlinksMap*> const& resolve_symlinks_map, - bool serve_api_exists, + std::optional<gsl::not_null<const ServeApi*>> const& serve, std::optional<gsl::not_null<IExecutionApi*>> const& remote_api, gsl::not_null<TaskSystem*> const& ts, FilePathGitMap::SetterPtr const& ws_setter, @@ -125,7 +126,7 @@ void ResolveFilePathTree( CheckServeAndSetRoot(*resolved_tree_id, StorageConfig::GitRoot().string(), absent, - serve_api_exists, + serve, remote_api, ws_setter, logger); @@ -145,7 +146,7 @@ void ResolveFilePathTree( tree_hash, tree_id_file, absent, - serve_api_exists, + serve, remote_api, ts, ws_setter, @@ -186,7 +187,7 @@ void ResolveFilePathTree( [resolved_tree_id, tree_id_file, absent, - serve_api_exists, + serve, remote_api, ws_setter, logger](auto const& values) { @@ -214,7 +215,7 @@ void ResolveFilePathTree( resolved_tree_id, StorageConfig::GitRoot().string(), absent, - serve_api_exists, + serve, remote_api, ws_setter, logger); @@ -242,13 +243,8 @@ void ResolveFilePathTree( // tree needs no further processing; // if serve endpoint is given, try to ensure it has this tree available // to be able to build against it - CheckServeAndSetRoot(tree_hash, - repo_root, - absent, - serve_api_exists, - remote_api, - ws_setter, - logger); + CheckServeAndSetRoot( + tree_hash, repo_root, absent, serve, remote_api, ws_setter, logger); } } @@ -259,7 +255,7 @@ auto CreateFilePathGitMap( gsl::not_null<CriticalGitOpMap*> const& critical_git_op_map, gsl::not_null<ImportToGitMap*> const& import_to_git_map, gsl::not_null<ResolveSymlinksMap*> const& resolve_symlinks_map, - bool serve_api_exists, + std::optional<gsl::not_null<const ServeApi*>> const& serve, std::optional<gsl::not_null<IExecutionApi*>> const& remote_api, std::size_t jobs, std::string multi_repo_tool_name, @@ -268,7 +264,7 @@ auto CreateFilePathGitMap( critical_git_op_map, import_to_git_map, resolve_symlinks_map, - serve_api_exists, + serve, remote_api, multi_repo_tool_name, build_tool_name](auto ts, @@ -307,7 +303,7 @@ auto CreateFilePathGitMap( repo_root = std::move(*repo_root), critical_git_op_map, resolve_symlinks_map, - serve_api_exists, + serve, remote_api, ts, setter, @@ -367,7 +363,7 @@ auto CreateFilePathGitMap( absent, critical_git_op_map, resolve_symlinks_map, - serve_api_exists, + serve, remote_api, ts, setter, @@ -389,7 +385,7 @@ auto CreateFilePathGitMap( absent, critical_git_op_map, resolve_symlinks_map, - serve_api_exists, + serve, remote_api, ts, setter, @@ -456,7 +452,7 @@ auto CreateFilePathGitMap( absent = key.absent, critical_git_op_map, resolve_symlinks_map, - serve_api_exists, + serve, remote_api, ts, setter, @@ -480,7 +476,7 @@ auto CreateFilePathGitMap( absent, critical_git_op_map, resolve_symlinks_map, - serve_api_exists, + serve, remote_api, ts, setter, |