Dont allow remove of protected branch
Signed-off-by: Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>
This commit is contained in:
parent
a9d60b3b14
commit
36cac35b24
1 changed files with 12 additions and 8 deletions
|
@ -44,14 +44,18 @@ module Gitlab
|
|||
def push_allowed?(user, project, ref, oldrev, newrev, forced_push)
|
||||
if user && user_allowed?(user)
|
||||
action = if project.protected_branch?(ref)
|
||||
if forced_push.to_s == 'true'
|
||||
:force_push_code_to_protected_branches
|
||||
else
|
||||
:push_code_to_protected_branches
|
||||
end
|
||||
else
|
||||
:push_code
|
||||
end
|
||||
# we dont allow force push to protected branch
|
||||
if forced_push.to_s == 'true'
|
||||
:force_push_code_to_protected_branches
|
||||
# and we dont allow remove of protected branch
|
||||
elsif newrev =~ /0000000/
|
||||
:remove_protected_branches
|
||||
else
|
||||
:push_code_to_protected_branches
|
||||
end
|
||||
else
|
||||
:push_code
|
||||
end
|
||||
user.can?(action, project)
|
||||
else
|
||||
false
|
||||
|
|
Loading…
Reference in a new issue