Merge pull request #83 from travis-ci/hh-cancel-job-wrong-namespac

Move /jobs/:id/cancel to /jobs
This commit is contained in:
Josh Kalderimis 2013-10-27 10:01:02 -07:00
commit 542b1ffc80

View File

@ -30,6 +30,35 @@ class Travis::Api::App
end
end
post '/:id/cancel' do
Metriks.meter("api.request.cancel_job").mark
service = self.service(:cancel_job, params.merge(source: 'api'))
if !service.authorized?
json = { error: {
message: "You don't have access to cancel job(#{params[:id]})"
} }
Metriks.meter("api.request.cancel_job.unauthorized").mark
status 403
respond_with json
elsif !service.can_cancel?
json = { error: {
message: "The job(#{params[:id]}) can't be canceled",
code: 'cant_cancel'
} }
Metriks.meter("api.request.cancel_job.cant_cancel").mark
status 422
respond_with json
else
service.run
Metriks.meter("api.request.cancel_job.success").mark
status 204
end
end
def archive_url(path)
"https://s3.amazonaws.com/#{hostname('archive')}#{path}"
end
@ -38,34 +67,5 @@ class Travis::Api::App
"#{name}#{'-staging' if Travis.env == 'staging'}.#{Travis.config.host.split('.')[-2, 2].join('.')}"
end
end
post '/:id/cancel' do
Metriks.meter("api.request.cancel_job").mark
service = self.service(:cancel_job, params.merge(source: 'api'))
if !service.authorized?
json = { error: {
message: "You don't have access to cancel job(#{params[:id]})"
} }
Metriks.meter("api.request.cancel_job.unauthorized").mark
status 403
respond_with json
elsif !service.can_cancel?
json = { error: {
message: "The job(#{params[:id]}) can't be canceled",
code: 'cant_cancel'
} }
Metriks.meter("api.request.cancel_job.cant_cancel").mark
status 422
respond_with json
else
service.run
Metriks.meter("api.request.cancel_job.success").mark
status 204
end
end
end
end