summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRobert Speicher <robert@gitlab.com>2018-01-30 23:31:42 +0000
committerRobert Speicher <robert@gitlab.com>2018-01-30 23:31:42 +0000
commit120c79020ddd3097ae64149c75864353276aaa5f (patch)
tree0db7805385712d1aa479b343acedeec90c755ba9
parente47b7a286d7063933c14ebf202e7d0a2b8858335 (diff)
parent5aeb5ff51e8d25791c400301a627932e2f4091e8 (diff)
downloadgitlab-ce-42242-clean-up-error-handling-in-project-permissions-page.tar.gz
Merge branch 'fix/add-support-for-pre-receive-error-in-merge-branch' into 'master'42613-clean-up-old-project-permissions-frontend-code42242-clean-up-error-handling-in-project-permissions-page
Add support for PreReceiveError in UserMergeBranch RPC Closes gitaly#979 See merge request gitlab-org/gitlab-ce!16765
-rw-r--r--lib/gitlab/gitaly_client/operation_service.rb8
1 files changed, 7 insertions, 1 deletions
diff --git a/lib/gitlab/gitaly_client/operation_service.rb b/lib/gitlab/gitaly_client/operation_service.rb
index c2b4155e6a5..cd2734b5a07 100644
--- a/lib/gitlab/gitaly_client/operation_service.rb
+++ b/lib/gitlab/gitaly_client/operation_service.rb
@@ -103,7 +103,13 @@ module Gitlab
request_enum.push(Gitaly::UserMergeBranchRequest.new(apply: true))
- branch_update = response_enum.next.branch_update
+ second_response = response_enum.next
+
+ if second_response.pre_receive_error.present?
+ raise Gitlab::Git::HooksService::PreReceiveError, second_response.pre_receive_error
+ end
+
+ 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?