diff options
author | Shinya Maeda <shinya@gitlab.com> | 2017-11-07 02:47:05 +0900 |
---|---|---|
committer | Shinya Maeda <shinya@gitlab.com> | 2017-11-07 02:47:05 +0900 |
commit | afef38533727cf32a7be324243a25b4db5eb5498 (patch) | |
tree | cfdd2c96bd0c1a7ee1fd85f0b63fd2edf0d1fe3f /app/policies | |
parent | cb5e35d562a1bf0737c1ad3316c3723775fada01 (diff) | |
download | gitlab-ce-afef38533727cf32a7be324243a25b4db5eb5498.tar.gz |
Add doc. Fix spec. Add erase_build in protected_ref rule
Diffstat (limited to 'app/policies')
-rw-r--r-- | app/policies/ci/build_policy.rb | 12 |
1 files changed, 8 insertions, 4 deletions
diff --git a/app/policies/ci/build_policy.rb b/app/policies/ci/build_policy.rb index f158cda2f0e..1ab391a5a9d 100644 --- a/app/policies/ci/build_policy.rb +++ b/app/policies/ci/build_policy.rb @@ -10,11 +10,15 @@ module Ci end end - condition(:owner_of_build) do - can?(:developer_access) && @subject.owned_by?(@user) + condition(:owner_of_job) do + can?(:developer_access) && @subject.triggered_by?(@user) end - rule { protected_ref }.prevent :update_build - rule { can?(:master_access) | owner_of_build }.enable :erase_build + rule { protected_ref }.policy do + prevent :update_build + prevent :erase_build + end + + rule { can?(:master_access) | owner_of_job }.enable :erase_build end end |