summaryrefslogtreecommitdiff
path: root/lib
diff options
context:
space:
mode:
authorOswaldo <oswaldo@gitlab.com>2017-02-22 14:37:13 -0300
committerOswaldo Ferreira <oswaldo@gitlab.com>2017-02-23 19:55:13 -0300
commit2b001d9e7a2136a6d670576843a953115a5c7c25 (patch)
tree37fbbc6ed8001b30bc9939045d0e9e7695837dba /lib
parent2fb3fcf0c0446c9a1568e26e81d49f3b5ce159dc (diff)
downloadgitlab-ce-2b001d9e7a2136a6d670576843a953115a5c7c25.tar.gz
Return 202 with JSON body on async removals on V4 API3874-correctly-return-json-on-delete-responses
Diffstat (limited to 'lib')
-rw-r--r--lib/api/branches.rb2
-rw-r--r--lib/api/helpers.rb4
-rw-r--r--lib/api/projects.rb2
-rw-r--r--lib/api/v3/branches.rb7
4 files changed, 14 insertions, 1 deletions
diff --git a/lib/api/branches.rb b/lib/api/branches.rb
index c65de90cca2..34f136948c2 100644
--- a/lib/api/branches.rb
+++ b/lib/api/branches.rb
@@ -137,7 +137,7 @@ module API
delete ":id/repository/merged_branches" do
DeleteMergedBranchesService.new(user_project, current_user).async_execute
- status(200)
+ accepted!
end
end
end
diff --git a/lib/api/helpers.rb b/lib/api/helpers.rb
index d0efa7b993b..72d2b320077 100644
--- a/lib/api/helpers.rb
+++ b/lib/api/helpers.rb
@@ -209,6 +209,10 @@ module API
render_api_error!('204 No Content', 204)
end
+ def accepted!
+ render_api_error!('202 Accepted', 202)
+ end
+
def render_validation_error!(model)
if model.errors.any?
render_api_error!(model.errors.messages || '400 Bad Request', 400)
diff --git a/lib/api/projects.rb b/lib/api/projects.rb
index e7b891bd92e..b89bddc7e29 100644
--- a/lib/api/projects.rb
+++ b/lib/api/projects.rb
@@ -282,6 +282,8 @@ module API
delete ":id" do
authorize! :remove_project, user_project
::Projects::DestroyService.new(user_project, current_user, {}).async_execute
+
+ accepted!
end
desc 'Mark this project as forked from another'
diff --git a/lib/api/v3/branches.rb b/lib/api/v3/branches.rb
index 733c6b21be5..51eb566cf7d 100644
--- a/lib/api/v3/branches.rb
+++ b/lib/api/v3/branches.rb
@@ -18,6 +18,13 @@ module API
present branches, with: ::API::Entities::RepoBranch, project: user_project
end
+
+ desc 'Delete all merged branches'
+ delete ":id/repository/merged_branches" do
+ DeleteMergedBranchesService.new(user_project, current_user).async_execute
+
+ status(200)
+ end
end
end
end