diff options
author | Rémy Coutable <remy@rymai.me> | 2017-01-04 18:24:39 +0100 |
---|---|---|
committer | Rémy Coutable <remy@rymai.me> | 2017-01-09 10:02:52 +0100 |
commit | c28b0a539dcbbec8ba487067ff315cb5d57e5bdb (patch) | |
tree | d1db4aba7fc14ff9766b2fb384b3c718d099fb4f /lib/ci | |
parent | 8ab94120ee0a87c7b1158ebafea101e3952ec758 (diff) | |
download | gitlab-ce-c28b0a539dcbbec8ba487067ff315cb5d57e5bdb.tar.gz |
Don't instrument 405 Grape calls26051-fix-missing-endpoint-route-method
Fixes #26051.
Signed-off-by: Rémy Coutable <remy@rymai.me>
Diffstat (limited to 'lib/ci')
-rw-r--r-- | lib/ci/api/api.rb | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/lib/ci/api/api.rb b/lib/ci/api/api.rb index a6b9beecded..24bb3649a76 100644 --- a/lib/ci/api/api.rb +++ b/lib/ci/api/api.rb @@ -8,6 +8,16 @@ module Ci rack_response({ 'message' => '404 Not found' }.to_json, 404) end + # Retain 405 error rather than a 500 error for Grape 0.15.0+. + # https://github.com/ruby-grape/grape/blob/a3a28f5b5dfbb2797442e006dbffd750b27f2a76/UPGRADING.md#changes-to-method-not-allowed-routes + rescue_from Grape::Exceptions::MethodNotAllowed do |e| + error! e.message, e.status, e.headers + end + + rescue_from Grape::Exceptions::Base do |e| + error! e.message, e.status, e.headers + end + rescue_from :all do |exception| handle_api_exception(exception) end |