Commit 4f71c29c authored by James Edwards-Jones's avatar James Edwards-Jones

Moved default_branch_protected? out of Project

parent bf3cc824
...@@ -883,11 +883,6 @@ class Project < ActiveRecord::Base ...@@ -883,11 +883,6 @@ class Project < ActiveRecord::Base
"#{url}.git" "#{url}.git"
end end
def empty_and_default_branch_protected?
empty_repo? && default_branch_protected?
end
#TODO: Check with if this is still needed, maybe because of `.select {` in ProtectedRefsMatcher #TODO: Check with if this is still needed, maybe because of `.select {` in ProtectedRefsMatcher
#Either with tests or by asking Tim #Either with tests or by asking Tim
def protected_tags_array def protected_tags_array
...@@ -899,7 +894,7 @@ class Project < ActiveRecord::Base ...@@ -899,7 +894,7 @@ class Project < ActiveRecord::Base
end end
def user_can_push_to_empty_repo?(user) def user_can_push_to_empty_repo?(user)
!default_branch_protected? || team.max_member_access(user.id) > Gitlab::Access::DEVELOPER !ProtectedBranch.default_branch_protected? || team.max_member_access(user.id) > Gitlab::Access::DEVELOPER
end end
def forked? def forked?
...@@ -1366,12 +1361,6 @@ class Project < ActiveRecord::Base ...@@ -1366,12 +1361,6 @@ class Project < ActiveRecord::Base
"projects/#{id}/pushes_since_gc" "projects/#{id}/pushes_since_gc"
end end
#TODO: Move this and methods which depend upon it
def default_branch_protected?
current_application_settings.default_branch_protection == Gitlab::Access::PROTECTION_FULL ||
current_application_settings.default_branch_protection == Gitlab::Access::PROTECTION_DEV_CAN_MERGE
end
# Similar to the normal callbacks that hook into the life cycle of an # Similar to the normal callbacks that hook into the life cycle of an
# Active Record object, you can also define callbacks that get triggered # Active Record object, you can also define callbacks that get triggered
# when you add an object to an association collection. If any of these # when you add an object to an association collection. If any of these
......
...@@ -13,9 +13,14 @@ class ProtectedBranch < ActiveRecord::Base ...@@ -13,9 +13,14 @@ class ProtectedBranch < ActiveRecord::Base
# Check if branch name is marked as protected in the system # Check if branch name is marked as protected in the system
def self.protected?(project, ref_name) def self.protected?(project, ref_name)
return true if project.empty_and_default_branch_protected? return true if project.empty_repo? && default_branch_protected?
protected_refs = project.protected_branches_array protected_refs = project.protected_branches_array
self.matching(ref_name, protected_refs: protected_refs).present? self.matching(ref_name, protected_refs: protected_refs).present?
end end
def self.default_branch_protected?
current_application_settings.default_branch_protection == Gitlab::Access::PROTECTION_FULL ||
current_application_settings.default_branch_protection == Gitlab::Access::PROTECTION_DEV_CAN_MERGE
end
end end
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment