Merge pull request #282 from travis-ci/ar-add-enabled-for-all-flag

Add enable_for_all? condition on restart and cancel endpoints
This commit is contained in:
Ana Rosas 2016-06-28 12:27:02 -07:00 committed by GitHub
commit 14625ff7cb
4 changed files with 8 additions and 8 deletions

View File

@ -25,7 +25,7 @@ class Travis::Api::App
service = Travis::Enqueue::Services::CancelModel.new(current_user, { build_id: params[:id] }) service = Travis::Enqueue::Services::CancelModel.new(current_user, { build_id: params[:id] })
repository_owner = service.target.repository.owner repository_owner = service.target.repository.owner
if !Travis::Features.owner_active?(:enqueue_to_hub, repository_owner) if !Travis::Features.enabled_for_all?(:enqueue_to_hub) && !Travis::Features.owner_active?(:enqueue_to_hub, repository_owner)
service = self.service(:cancel_build, params.merge(source: 'api')) service = self.service(:cancel_build, params.merge(source: 'api'))
end end
@ -64,7 +64,7 @@ class Travis::Api::App
service = Travis::Enqueue::Services::RestartModel.new(current_user, build_id: params[:id]) service = Travis::Enqueue::Services::RestartModel.new(current_user, build_id: params[:id])
repository_owner = service.target.repository.owner repository_owner = service.target.repository.owner
if !Travis::Features.owner_active?(:enqueue_to_hub, repository_owner) if !Travis::Features.enabled_for_all?(:enqueue_to_hub) && !Travis::Features.owner_active?(:enqueue_to_hub, repository_owner)
service = self.service(:reset_model, build_id: params[:id]) service = self.service(:reset_model, build_id: params[:id])
end end

View File

@ -31,7 +31,7 @@ class Travis::Api::App
service = Travis::Enqueue::Services::CancelModel.new(current_user, { job_id: params[:id] }) service = Travis::Enqueue::Services::CancelModel.new(current_user, { job_id: params[:id] })
repository_owner = service.target.repository.owner repository_owner = service.target.repository.owner
if !Travis::Features.owner_active?(:enqueue_to_hub, repository_owner) if !Travis::Features.enabled_for_all?(:enqueue_to_hub) && !Travis::Features.owner_active?(:enqueue_to_hub, repository_owner)
service = self.service(:cancel_job, params.merge(source: 'api')) service = self.service(:cancel_job, params.merge(source: 'api'))
end end
@ -70,7 +70,7 @@ class Travis::Api::App
service = Travis::Enqueue::Services::RestartModel.new(current_user, { job_id: params[:id] }) service = Travis::Enqueue::Services::RestartModel.new(current_user, { job_id: params[:id] })
repository_owner = service.target.repository.owner repository_owner = service.target.repository.owner
if !Travis::Features.owner_active?(:enqueue_to_hub, repository_owner) if !Travis::Features.enabled_for_all?(:enqueue_to_hub) && !Travis::Features.owner_active?(:enqueue_to_hub, repository_owner)
service = self.service(:reset_model, job_id: params[:id]) service = self.service(:reset_model, job_id: params[:id])
end end

View File

@ -13,7 +13,7 @@ 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' }
if Travis::Features.owner_active?(:enqueue_to_hub, find.repository.owner) if Travis::Features.enabled_for_all?(:enqueue_to_hub) || Travis::Features.owner_active?(:enqueue_to_hub, find.repository.owner)
service = Travis::Enqueue::Services::CancelModel.new(user, { build_id: id }) service = Travis::Enqueue::Services::CancelModel.new(user, { build_id: id })
service.push("build:cancel", payload) service.push("build:cancel", payload)
else else
@ -24,7 +24,7 @@ module Travis::API::V3
def restart(user) def restart(user)
raise BuildAlreadyRunning if %w(received queued started).include? find.state raise BuildAlreadyRunning if %w(received queued started).include? find.state
if Travis::Features.owner_active?(:enqueue_to_hub, find.repository.owner) if Travis::Features.enabled_for_all?(:enqueue_to_hub) || Travis::Features.owner_active?(:enqueue_to_hub, find.repository.owner)
service = Travis::Enqueue::Services::RestartModel.new(user, { build_id: id }) service = Travis::Enqueue::Services::RestartModel.new(user, { build_id: id })
payload = { id: id, user_id: user.id } payload = { id: id, user_id: user.id }
service.push("build:restart", payload) service.push("build:restart", payload)

View File

@ -14,7 +14,7 @@ module Travis::API::V3
raise JobNotCancelable if %w(passed failed canceled errored).include? find.state raise JobNotCancelable 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' }
#look for repo.owner instead and look if the user belongs to the repo, instead of using user for the feature flag #look for repo.owner instead and look if the user belongs to the repo, instead of using user for the feature flag
if Travis::Features.owner_active?(:enqueue_to_hub, find.repository.owner) if Travis::Features.enabled_for_all?(:enqueue_to_hub) || Travis::Features.owner_active?(:enqueue_to_hub, find.repository.owner)
service = Travis::Enqueue::Services::CancelModel.new(user, { job_id: id }) service = Travis::Enqueue::Services::CancelModel.new(user, { job_id: id })
service.push("job:cancel", payload) service.push("job:cancel", payload)
else else
@ -26,7 +26,7 @@ module Travis::API::V3
def restart(user) def restart(user)
raise JobAlreadyRunning if %w(received queued started).include? find.state raise JobAlreadyRunning if %w(received queued started).include? find.state
if Travis::Features.owner_active?(:enqueue_to_hub, find.repository.owner) if Travis::Features.enabled_for_all?(:enqueue_to_hub) || Travis::Features.owner_active?(:enqueue_to_hub, find.repository.owner)
service = Travis::Enqueue::Services::RestartModel.new(user, { job_id: id }) service = Travis::Enqueue::Services::RestartModel.new(user, { job_id: id })
payload = { id: id, user_id: user.id } payload = { id: id, user_id: user.id }
service.push("job:restart", payload) service.push("job:restart", payload)