summaryrefslogtreecommitdiff
path: root/src/buildtool/serve_api/serve_service/source_tree.hpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/buildtool/serve_api/serve_service/source_tree.hpp')
-rw-r--r--src/buildtool/serve_api/serve_service/source_tree.hpp6
1 files changed, 6 insertions, 0 deletions
diff --git a/src/buildtool/serve_api/serve_service/source_tree.hpp b/src/buildtool/serve_api/serve_service/source_tree.hpp
index 24ef59c2..2989d65a 100644
--- a/src/buildtool/serve_api/serve_service/source_tree.hpp
+++ b/src/buildtool/serve_api/serve_service/source_tree.hpp
@@ -23,6 +23,7 @@
#include <type_traits>
#include <unordered_map>
#include <utility>
+#include <variant>
#include <vector>
#include "gsl/gsl"
@@ -142,6 +143,11 @@ class SourceTreeService final
// symlinks resolver map
ResolveSymlinksMap resolve_symlinks_map_{CreateResolveSymlinksMap()};
+ /// \brief Ensure that the Git cache repository exists.
+ /// \returns Error message on failure.
+ [[nodiscard]] auto EnsureGitCacheRoot()
+ -> expected<std::monostate, std::string>;
+
/// \brief Check if commit exists and tries to get the subtree if found.
/// \returns The subtree hash on success or an unexpected error (fatal or
/// commit was not found).