summaryrefslogtreecommitdiff
path: root/app/policies/ci
diff options
context:
space:
mode:
authorLin Jen-Shin <godfat@godfat.org>2017-07-18 16:31:29 +0800
committerLin Jen-Shin <godfat@godfat.org>2017-07-18 16:42:13 +0800
commit7426e616e859671622cea96755cb5b1e09fd9abe (patch)
treef83c713abfa6c1f7b3b9b1e0e7af61d36e8f02b5 /app/policies/ci
parentef2e9879b9f4b730be2f950aa60db8b503f332b5 (diff)
downloadgitlab-ce-7426e616e859671622cea96755cb5b1e09fd9abe.tar.gz
Make sure it checks against the tag only when it's a tag34927-protect-manual-actions-on-tags
Diffstat (limited to 'app/policies/ci')
-rw-r--r--app/policies/ci/build_policy.rb5
1 files changed, 4 insertions, 1 deletions
diff --git a/app/policies/ci/build_policy.rb b/app/policies/ci/build_policy.rb
index 71ecb5bca8d..386822d3ff6 100644
--- a/app/policies/ci/build_policy.rb
+++ b/app/policies/ci/build_policy.rb
@@ -5,8 +5,11 @@ module Ci
access = ::Gitlab::UserAccess.new(@user, project: @subject.project)
- !access.can_merge_to_branch?(@subject.ref) ||
+ if @subject.tag?
!access.can_create_tag?(@subject.ref)
+ else
+ !access.can_merge_to_branch?(@subject.ref)
+ end
end
rule { protected_action }.prevent :update_build