summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPaco Guzman <pacoguzmanp@gmail.com>2016-09-13 11:43:41 +0200
committerPaco Guzman <pacoguzmanp@gmail.com>2016-09-13 11:50:13 +0200
commit08871cc36ac5ffea541ea5b5e7666327e65c6b9d (patch)
treeec92ae2bb7af1a0ab45cc433eb8c2d7d0c2f229c
parentf7be904afa2edf731e87f1f60918c0d82234eff4 (diff)
downloadgitlab-ce-08871cc36ac5ffea541ea5b5e7666327e65c6b9d.tar.gz
Avoid protected branches checks when verifying access without branch name
GitlabShell verify access sending ‘_any’ as the changes made on the git command, in those cases Gitlab::Checks::ChangeAccess won’t receive a branch_name so we don’t need to check for access to the protected branches on that repository. So we avoid some git operations in case the are not cached (empty_repo?) and some database lookups to get protected branches. These request is happening in every push.
-rw-r--r--CHANGELOG1
-rw-r--r--lib/gitlab/checks/change_access.rb1
2 files changed, 2 insertions, 0 deletions
diff --git a/CHANGELOG b/CHANGELOG
index dc8dbb6e166..8ccb586f6e8 100644
--- a/CHANGELOG
+++ b/CHANGELOG
@@ -115,6 +115,7 @@ v 8.12.0 (unreleased)
- Avoid conflict with admin labels when importing GitHub labels
- User can edit closed MR with deleted fork (Katarzyna Kobierska Ula Budziszewska) !5496
- Fix repository page ui issues
+ - Avoid protected branches checks when verifying access without branch name
- Add information about user and manual build start to runner as variables !6201 (Sergey Gnuskov)
- Fixed invisible scroll controls on build page on iPhone
- Fix error on raw build trace download for old builds stored in database !4822
diff --git a/lib/gitlab/checks/change_access.rb b/lib/gitlab/checks/change_access.rb
index 4b32eb966aa..cb1065223d4 100644
--- a/lib/gitlab/checks/change_access.rb
+++ b/lib/gitlab/checks/change_access.rb
@@ -23,6 +23,7 @@ module Gitlab
protected
def protected_branch_checks
+ return unless @branch_name
return unless project.protected_branch?(@branch_name)
if forced_push? && user_access.cannot_do_action?(:force_push_code_to_protected_branches)