Welcome to mirror list, hosted at ThFree Co, Russian Federation.

gitlab.com/gitlab-org/gitlab-foss.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
path: root/lib/api
diff options
context:
space:
mode:
authorShinya Maeda <shinya@gitlab.com>2018-12-25 10:36:25 +0300
committerShinya Maeda <shinya@gitlab.com>2018-12-31 08:35:14 +0300
commitdc8a8c7d998e2c1f78fcf60f8dc45b572f62abe8 (patch)
tree6ea5a747af393d7470ec197f09e07301251e30d4 /lib/api
parent6a2decf5454922441606fce1560389acbbd9eff1 (diff)
Add delete method in Release API
Introduce DELETE endpoint in Release API
Diffstat (limited to 'lib/api')
-rw-r--r--lib/api/releases.rb21
1 files changed, 21 insertions, 0 deletions
diff --git a/lib/api/releases.rb b/lib/api/releases.rb
index 2d4a6a28998..fe226a5ec4c 100644
--- a/lib/api/releases.rb
+++ b/lib/api/releases.rb
@@ -89,6 +89,27 @@ module API
render_api_error!(result[:message], result[:http_status])
end
end
+
+ desc 'Delete a release' do
+ detail 'This feature was introduced in GitLab 11.7.'
+ success Entities::Release
+ end
+ params do
+ requires :tag_name, type: String, desc: 'The name of the tag', as: :tag
+ end
+ delete ':id/releases/:tag_name', requirements: RELEASE_ENDPOINT_REQUIREMETS do
+ authorize_update_release!
+
+ attributes = declared(params)
+ attributes.delete(:id)
+ result = DeleteReleaseService.new(user_project, current_user, attributes).execute
+
+ if result[:status] == :success
+ present result[:release], with: Entities::Release
+ else
+ render_api_error!(result[:message], result[:http_status])
+ end
+ end
end
end
end