diff options
author | John Cai <jcai@gitlab.com> | 2019-07-16 11:06:29 -0700 |
---|---|---|
committer | John Cai <jcai@gitlab.com> | 2019-07-16 11:06:29 -0700 |
commit | 9f844a116f850bea0d0ca6269fe1acc3b6b2abf1 (patch) | |
tree | 8715e45cb24265965a2595b40c66fc9486cfed05 | |
parent | cca71da16ac12d3df787de3f3a0cd60d30649a1d (diff) | |
download | gitlab-ce-jc-add-clone-from-pool-client-methods.tar.gz |
Add clone_from_pool, clone_from_pool_internal client methodsjc-add-clone-from-pool-client-methods
-rw-r--r-- | lib/gitlab/gitaly_client/repository_service.rb | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/lib/gitlab/gitaly_client/repository_service.rb b/lib/gitlab/gitaly_client/repository_service.rb index ca3e5b51ecc..ebe195c4198 100644 --- a/lib/gitlab/gitaly_client/repository_service.rb +++ b/lib/gitlab/gitaly_client/repository_service.rb @@ -346,6 +346,29 @@ module Gitlab GitalyClient.call(@storage, :object_pool_service, :disconnect_git_alternates, request) end + def clone_from_pool(object_pool, remote) + request = Gitaly::CloneFromPoolRequest.new( + repository: @gitaly_repo, + pool: object_pool.gitaly_object_pool, + remote: remote + ) + + GitalyClient.call(@storage, :repository_service, + :clone_from_pool, request) + end + + def clone_from_pool_internal(source_repository, object_pool) + request = Gitaly::CloneFromPoolInternalRequest.new( + source_repository: source_repository.gitaly_repository, + repository: @gitaly_repo, + pool: object_pool.gitaly_object_pool + ) + + GitalyClient.call(@storage, :repository_service, + :clone_from_pool_internal, request, + remote_storage: source_repository.storage) + end + private def search_results_from_response(gitaly_response) |