summaryrefslogtreecommitdiff
path: root/lib
diff options
context:
space:
mode:
authorGrzegorz Bizon <grzegorz@gitlab.com>2018-11-16 14:02:54 +0000
committerGrzegorz Bizon <grzegorz@gitlab.com>2018-11-16 14:02:54 +0000
commit9c233fa972192940acdc1090c3d9a9ec6e6f5de7 (patch)
tree9222b4d40a3f96b57b881bbe9bdad71a757622ff /lib
parent4e24ccc436e1678c79d71225a3cb9eb3c11ed17a (diff)
parentde605ad1437e8e0beb5da76c900623dd541e1f72 (diff)
downloadgitlab-ce-9c233fa972192940acdc1090c3d9a9ec6e6f5de7.tar.gz
Merge branch '41875-allow-pipelines-to-be-deleted-by-project-owners' into 'master'
Resolve "Allow pipelines to be deleted by project owners" Closes #41875 See merge request gitlab-org/gitlab-ce!22988
Diffstat (limited to 'lib')
-rw-r--r--lib/api/pipelines.rb15
1 files changed, 15 insertions, 0 deletions
diff --git a/lib/api/pipelines.rb b/lib/api/pipelines.rb
index 1cfb982c04b..cba1e3a6684 100644
--- a/lib/api/pipelines.rb
+++ b/lib/api/pipelines.rb
@@ -81,6 +81,21 @@ module API
present pipeline, with: Entities::Pipeline
end
+ desc 'Deletes a pipeline' do
+ detail 'This feature was introduced in GitLab 11.6'
+ http_codes [[204, 'Pipeline was deleted'], [403, 'Forbidden']]
+ end
+ params do
+ requires :pipeline_id, type: Integer, desc: 'The pipeline ID'
+ end
+ delete ':id/pipelines/:pipeline_id' do
+ authorize! :destroy_pipeline, pipeline
+
+ destroy_conditionally!(pipeline) do
+ ::Ci::DestroyPipelineService.new(user_project, current_user).execute(pipeline)
+ end
+ end
+
desc 'Retry builds in the pipeline' do
detail 'This feature was introduced in GitLab 8.11.'
success Entities::Pipeline