diff options
author | GitLab Bot <gitlab-bot@gitlab.com> | 2021-05-19 18:44:42 +0300 |
---|---|---|
committer | GitLab Bot <gitlab-bot@gitlab.com> | 2021-05-19 18:44:42 +0300 |
commit | 4555e1b21c365ed8303ffb7a3325d773c9b8bf31 (patch) | |
tree | 5423a1c7516cffe36384133ade12572cf709398d /lib/gitlab/gitaly_client | |
parent | e570267f2f6b326480d284e0164a6464ba4081bc (diff) |
Add latest changes from gitlab-org/gitlab@13-12-stable-eev13.12.0-rc42
Diffstat (limited to 'lib/gitlab/gitaly_client')
-rw-r--r-- | lib/gitlab/gitaly_client/blob_service.rb | 2 | ||||
-rw-r--r-- | lib/gitlab/gitaly_client/blobs_stitcher.rb | 10 | ||||
-rw-r--r-- | lib/gitlab/gitaly_client/call.rb | 2 | ||||
-rw-r--r-- | lib/gitlab/gitaly_client/operation_service.rb | 4 | ||||
-rw-r--r-- | lib/gitlab/gitaly_client/ref_service.rb | 2 | ||||
-rw-r--r-- | lib/gitlab/gitaly_client/remote_service.rb | 19 | ||||
-rw-r--r-- | lib/gitlab/gitaly_client/repository_service.rb | 2 | ||||
-rw-r--r-- | lib/gitlab/gitaly_client/storage_settings.rb | 2 | ||||
-rw-r--r-- | lib/gitlab/gitaly_client/wiki_service.rb | 34 |
9 files changed, 27 insertions, 50 deletions
diff --git a/lib/gitlab/gitaly_client/blob_service.rb b/lib/gitlab/gitaly_client/blob_service.rb index 19a473e4785..affd3986381 100644 --- a/lib/gitlab/gitaly_client/blob_service.rb +++ b/lib/gitlab/gitaly_client/blob_service.rb @@ -115,7 +115,7 @@ module Gitlab # necessary graph walk to detect only new LFS pointers and instead scan # through all quarantined objects. git_env = ::Gitlab::Git::HookEnv.all(@gitaly_repo.gl_repository) - if Feature.enabled?(:lfs_integrity_inspect_quarantined_objects, @project, default_enabled: :yaml) && git_env['GIT_OBJECT_DIRECTORY_RELATIVE'].present? + if git_env['GIT_OBJECT_DIRECTORY_RELATIVE'].present? repository = @gitaly_repo.dup repository.git_alternate_object_directories = Google::Protobuf::RepeatedField.new(:string) diff --git a/lib/gitlab/gitaly_client/blobs_stitcher.rb b/lib/gitlab/gitaly_client/blobs_stitcher.rb index f860d8ce517..2f6d146b5c4 100644 --- a/lib/gitlab/gitaly_client/blobs_stitcher.rb +++ b/lib/gitlab/gitaly_client/blobs_stitcher.rb @@ -19,9 +19,9 @@ module Gitlab yield new_blob(current_blob_data) if current_blob_data current_blob_data = msg.to_h.slice(:oid, :path, :size, :revision, :mode) - current_blob_data[:data] = msg.data.dup + current_blob_data[:data_parts] = [msg.data] else - current_blob_data[:data] << msg.data + current_blob_data[:data_parts] << msg.data end end @@ -31,6 +31,8 @@ module Gitlab private def new_blob(blob_data) + data = blob_data[:data_parts].join + Gitlab::Git::Blob.new( id: blob_data[:oid], mode: blob_data[:mode].to_s(8), @@ -38,8 +40,8 @@ module Gitlab path: blob_data[:path], size: blob_data[:size], commit_id: blob_data[:revision], - data: blob_data[:data], - binary: Gitlab::Git::Blob.binary?(blob_data[:data]) + data: data, + binary: Gitlab::Git::Blob.binary?(data, cache_key: blob_data[:oid]) ) end end diff --git a/lib/gitlab/gitaly_client/call.rb b/lib/gitlab/gitaly_client/call.rb index 4bb184bee2f..3fe3702cfe1 100644 --- a/lib/gitlab/gitaly_client/call.rb +++ b/lib/gitlab/gitaly_client/call.rb @@ -30,7 +30,7 @@ module Gitlab store_timings response end - rescue => err + rescue StandardError => err store_timings raise err end diff --git a/lib/gitlab/gitaly_client/operation_service.rb b/lib/gitlab/gitaly_client/operation_service.rb index 5ce1b1f0c87..fd794acb4dd 100644 --- a/lib/gitlab/gitaly_client/operation_service.rb +++ b/lib/gitlab/gitaly_client/operation_service.rb @@ -59,7 +59,7 @@ module Gitlab :user_create_branch, request, timeout: GitalyClient.long_timeout) if response.pre_receive_error.present? - raise Gitlab::Git::PreReceiveError.new(response.pre_receive_error) + raise Gitlab::Git::PreReceiveError, response.pre_receive_error end branch = response.branch @@ -159,7 +159,7 @@ module Gitlab branch_update = second_response.branch_update return if branch_update.nil? - raise Gitlab::Git::CommitError.new('failed to apply merge to branch') unless branch_update.commit_id.present? + raise Gitlab::Git::CommitError, 'failed to apply merge to branch' unless branch_update.commit_id.present? Gitlab::Git::OperationService::BranchUpdate.from_gitaly(branch_update) ensure diff --git a/lib/gitlab/gitaly_client/ref_service.rb b/lib/gitlab/gitaly_client/ref_service.rb index 97b6813c080..ac2db99ee01 100644 --- a/lib/gitlab/gitaly_client/ref_service.rb +++ b/lib/gitlab/gitaly_client/ref_service.rb @@ -292,7 +292,7 @@ module Gitlab end def invalid_ref!(message) - raise Gitlab::Git::Repository::InvalidRef.new(message) + raise Gitlab::Git::Repository::InvalidRef, message end end end diff --git a/lib/gitlab/gitaly_client/remote_service.rb b/lib/gitlab/gitaly_client/remote_service.rb index 06aaf460751..04dd394a2bd 100644 --- a/lib/gitlab/gitaly_client/remote_service.rb +++ b/lib/gitlab/gitaly_client/remote_service.rb @@ -43,11 +43,20 @@ module Gitlab GitalyClient.call(@storage, :remote_service, :remove_remote, request, timeout: GitalyClient.long_timeout).result end - def find_remote_root_ref(remote_name) - request = Gitaly::FindRemoteRootRefRequest.new( - repository: @gitaly_repo, - remote: remote_name - ) + # The remote_name parameter is deprecated and will be removed soon. + def find_remote_root_ref(remote_name, remote_url, authorization) + request = if Feature.enabled?(:find_remote_root_refs_inmemory, default_enabled: :yaml) + Gitaly::FindRemoteRootRefRequest.new( + repository: @gitaly_repo, + remote_url: remote_url, + http_authorization_header: authorization + ) + else + Gitaly::FindRemoteRootRefRequest.new( + repository: @gitaly_repo, + remote: remote_name + ) + end response = GitalyClient.call(@storage, :remote_service, :find_remote_root_ref, request, timeout: GitalyClient.medium_timeout) diff --git a/lib/gitlab/gitaly_client/repository_service.rb b/lib/gitlab/gitaly_client/repository_service.rb index a93f4071efc..d2dbd456180 100644 --- a/lib/gitlab/gitaly_client/repository_service.rb +++ b/lib/gitlab/gitaly_client/repository_service.rb @@ -319,7 +319,7 @@ module Gitlab response = GitalyClient.call(@storage, :repository_service, :calculate_checksum, request, timeout: GitalyClient.fast_timeout) response.checksum.presence rescue GRPC::DataLoss => e - raise Gitlab::Git::Repository::InvalidRepository.new(e) + raise Gitlab::Git::Repository::InvalidRepository, e end def raw_changes_between(from, to) diff --git a/lib/gitlab/gitaly_client/storage_settings.rb b/lib/gitlab/gitaly_client/storage_settings.rb index dd9e3d5d28b..f66dc3010ea 100644 --- a/lib/gitlab/gitaly_client/storage_settings.rb +++ b/lib/gitlab/gitaly_client/storage_settings.rb @@ -34,7 +34,7 @@ module Gitlab return false if rugged_enabled? !temporarily_allowed?(ALLOW_KEY) - rescue + rescue StandardError false # Err on the side of caution, don't break gitlab for people end diff --git a/lib/gitlab/gitaly_client/wiki_service.rb b/lib/gitlab/gitaly_client/wiki_service.rb index fecc2b7023d..3613cd01122 100644 --- a/lib/gitlab/gitaly_client/wiki_service.rb +++ b/lib/gitlab/gitaly_client/wiki_service.rb @@ -64,16 +64,6 @@ module Gitlab GitalyClient.call(@repository.storage, :wiki_service, :wiki_update_page, enum, timeout: GitalyClient.medium_timeout) end - def delete_page(page_path, commit_details) - request = Gitaly::WikiDeletePageRequest.new( - repository: @gitaly_repo, - page_path: encode_binary(page_path), - commit_details: gitaly_commit_details(commit_details) - ) - - GitalyClient.call(@repository.storage, :wiki_service, :wiki_delete_page, request, timeout: GitalyClient.medium_timeout) - end - def find_page(title:, version: nil, dir: nil) request = Gitaly::WikiFindPageRequest.new( repository: @gitaly_repo, @@ -129,30 +119,6 @@ module Gitlab pages end - # options: - # :page - The Integer page number. - # :per_page - The number of items per page. - # :limit - Total number of items to return. - def page_versions(page_path, options) - request = Gitaly::WikiGetPageVersionsRequest.new( - repository: @gitaly_repo, - page_path: encode_binary(page_path), - page: options[:page] || 1, - per_page: options[:per_page] || Gitlab::Git::Wiki::DEFAULT_PAGINATION - ) - - stream = GitalyClient.call(@repository.storage, :wiki_service, :wiki_get_page_versions, request, timeout: GitalyClient.medium_timeout) - - versions = [] - stream.each do |message| - message.versions.each do |version| - versions << new_wiki_page_version(version) - end - end - - versions - end - private # If a block is given and the yielded value is truthy, iteration will be |