travis-api/lib/travis/api/app/endpoint/requests.rb
2014-10-21 17:12:07 +02:00

33 lines
861 B
Ruby

require 'travis/api/app'
require 'travis/api/app/services/schedule_request'
class Travis::Api::App
class Endpoint
class Requests < Endpoint
post '/', scope: :private do
if params[:request] && params[:request][:repository]
respond_with service(:schedule_request, params[:request])
else
# DEPRECATED: this will be removed by 1st of December
Metriks.meter("api.request.restart").mark
respond_with service(:reset_model, params)
end
end
get '/' do
begin
respond_with(service(:find_requests, params).run)
rescue Travis::RepositoryNotFoundError => e
status 404
{ "error" => "Repository could not be found" }
end
end
get '/:id' do
respond_with service(:find_request, params)
end
end
end
end