Welcome to mirror list, hosted at ThFree Co, Russian Federation.

gitlab.com/gitlab-org/gitlab-foss.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'lib/gitlab/gitaly_client/ref_service.rb')
-rw-r--r--lib/gitlab/gitaly_client/ref_service.rb39
1 files changed, 21 insertions, 18 deletions
diff --git a/lib/gitlab/gitaly_client/ref_service.rb b/lib/gitlab/gitaly_client/ref_service.rb
index ac2db99ee01..7097d5bd181 100644
--- a/lib/gitlab/gitaly_client/ref_service.rb
+++ b/lib/gitlab/gitaly_client/ref_service.rb
@@ -62,24 +62,6 @@ module Gitlab
encode!(response.name.dup)
end
- def list_new_commits(newrev)
- request = Gitaly::ListNewCommitsRequest.new(
- repository: @gitaly_repo,
- commit_id: newrev
- )
-
- commits = []
-
- response = GitalyClient.call(@storage, :ref_service, :list_new_commits, request, timeout: GitalyClient.medium_timeout)
- response.each do |msg|
- msg.commits.each do |c|
- commits << Gitlab::Git::Commit.new(@repository, c)
- end
- end
-
- commits
- end
-
def list_new_blobs(newrev, limit = 0, dynamic_timeout: nil)
request = Gitaly::ListNewBlobsRequest.new(
repository: @gitaly_repo,
@@ -196,6 +178,27 @@ module Gitlab
messages
end
+ def get_tag_signatures(tag_ids)
+ request = Gitaly::GetTagSignaturesRequest.new(repository: @gitaly_repo, tag_revisions: tag_ids)
+ response = GitalyClient.call(@repository.storage, :ref_service, :get_tag_signatures, request, timeout: GitalyClient.fast_timeout)
+
+ signatures = Hash.new { |h, k| h[k] = [+''.b, +''.b] }
+ current_tag_id = nil
+
+ response.each do |message|
+ message.signatures.each do |tag_signature|
+ current_tag_id = tag_signature.tag_id if tag_signature.tag_id.present?
+
+ signatures[current_tag_id].first << tag_signature.signature
+ signatures[current_tag_id].last << tag_signature.content
+ end
+ end
+
+ signatures
+ rescue GRPC::InvalidArgument => ex
+ raise ArgumentError, ex
+ end
+
def pack_refs
request = Gitaly::PackRefsRequest.new(repository: @gitaly_repo)