Use Travis::Enqueue::Services::CancelModel on v3 build cancel endpoint

This commit is contained in:
Ana Rosas 2016-06-13 18:13:21 +02:00
parent 777e42374c
commit 75460b2427

View File

@ -1,3 +1,6 @@
require 'travis/api/enqueue/services/restart_model'
require 'travis/api/enqueue/services/cancel_model'
module Travis::API::V3 module Travis::API::V3
class Queries::Build < Query class Queries::Build < Query
params :id params :id
@ -10,7 +13,13 @@ module Travis::API::V3
def cancel(user) def cancel(user)
raise BuildNotCancelable if %w(passed failed canceled errored).include? find.state raise BuildNotCancelable if %w(passed failed canceled errored).include? find.state
payload = { id: id, user_id: user.id, source: 'api' } payload = { id: id, user_id: user.id, source: 'api' }
perform_async(:build_cancellation, payload) if Travis::Features.owner_active?(:enqueue_to_hub, user)
payload[:type] = :build
service = Travis::Enqueue::Services::CancelModel.new(user, payload)
service.push
else
perform_async(:build_cancellation, payload)
end
payload payload
end end