Refacto on restart endpoint for Jobs
This commit is contained in:
parent
0038197aab
commit
1c9212ef08
|
@ -56,28 +56,26 @@ class Travis::Api::App
|
|||
|
||||
post '/:id/restart' do
|
||||
Metriks.meter("api.request.restart_job").mark
|
||||
if Travis::Features.owner_active?(:enqueue_to_hub, current_user)
|
||||
service = Travis::Enqueue::Services::RestartModel.new(current_user, { job_id: params[:id] })
|
||||
if !service.accept?
|
||||
status 400
|
||||
result = false
|
||||
else
|
||||
payload = {id: params[:id], user_id: current_user.id}
|
||||
service.push("job:restart", payload)
|
||||
status 202
|
||||
result = true
|
||||
end
|
||||
service = if Travis::Features.owner_active?(:enqueue_to_hub, current_user)
|
||||
Travis::Enqueue::Services::RestartModel.new(current_user, { job_id: params[:id] })
|
||||
else
|
||||
service = self.service(:reset_model, job_id: params[:id])
|
||||
if !service.accept?
|
||||
status 400
|
||||
result = false
|
||||
else
|
||||
Travis::Sidekiq::JobRestart.perform_async(id: params[:id], user_id: current_user.id)
|
||||
status 202
|
||||
result = true
|
||||
end
|
||||
self.service(:reset_model, job_id: params[:id])
|
||||
end
|
||||
|
||||
result = if !service.accept?
|
||||
status 400
|
||||
false
|
||||
elsif service.respond_to?(:push)
|
||||
payload = {id: params[:id], user_id: current_user.id}
|
||||
service.push("job:restart", payload)
|
||||
status 202
|
||||
true
|
||||
else
|
||||
Travis::Sidekiq::JobRestart.perform_async(id: params[:id], user_id: current_user.id)
|
||||
status 202
|
||||
result = true
|
||||
end
|
||||
|
||||
respond_with(result: result, flash: service.messages)
|
||||
end
|
||||
|
||||
|
|
Loading…
Reference in New Issue
Block a user