summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDouwe Maan <douwe@gitlab.com>2017-11-30 09:06:14 +0000
committerDouwe Maan <douwe@gitlab.com>2017-11-30 09:06:14 +0000
commit1aaa6095a2d8890df73731a8af3d26158a198743 (patch)
tree9cb9cbd3d5bdafa31ef5a164551b71d9d8f3d478
parentf2cd91dd72ca1b09047347893097675ddd72d7b9 (diff)
parenta0527ab806b005eeffd3b4f983e33c4bd76ce6b3 (diff)
downloadgitlab-ce-1aaa6095a2d8890df73731a8af3d26158a198743.tar.gz
Merge branch 'protected-branches-names' into 'master'
Only load branch names for protected branch checks See merge request gitlab-org/gitlab-ce!15629
-rw-r--r--app/models/protected_branch.rb4
-rw-r--r--app/models/protected_tag.rb4
-rw-r--r--changelogs/unreleased/protected-branches-names.yml5
3 files changed, 11 insertions, 2 deletions
diff --git a/app/models/protected_branch.rb b/app/models/protected_branch.rb
index 89bfc5f9a9c..d28fed11ca8 100644
--- a/app/models/protected_branch.rb
+++ b/app/models/protected_branch.rb
@@ -10,7 +10,9 @@ class ProtectedBranch < ActiveRecord::Base
def self.protected?(project, ref_name)
return true if project.empty_repo? && default_branch_protected?
- self.matching(ref_name, protected_refs: project.protected_branches).present?
+ refs = project.protected_branches.select(:name)
+
+ self.matching(ref_name, protected_refs: refs).present?
end
def self.default_branch_protected?
diff --git a/app/models/protected_tag.rb b/app/models/protected_tag.rb
index f38109c0e52..42a9bcf7723 100644
--- a/app/models/protected_tag.rb
+++ b/app/models/protected_tag.rb
@@ -5,6 +5,8 @@ class ProtectedTag < ActiveRecord::Base
protected_ref_access_levels :create
def self.protected?(project, ref_name)
- self.matching(ref_name, protected_refs: project.protected_tags).present?
+ refs = project.protected_tags.select(:name)
+
+ self.matching(ref_name, protected_refs: refs).present?
end
end
diff --git a/changelogs/unreleased/protected-branches-names.yml b/changelogs/unreleased/protected-branches-names.yml
new file mode 100644
index 00000000000..3c6767df571
--- /dev/null
+++ b/changelogs/unreleased/protected-branches-names.yml
@@ -0,0 +1,5 @@
+---
+title: Only load branch names for protected branch checks
+merge_request:
+author:
+type: performance