Welcome to mirror list, hosted at ThFree Co, Russian Federation.

gitlab.com/gitlab-org/gitlab-foss.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
path: root/app
diff options
context:
space:
mode:
authorJames Lopez <james@jameslopez.es>2017-05-04 19:11:28 +0300
committerJames Lopez <james@jameslopez.es>2017-05-04 19:11:28 +0300
commitcf002738e766f977bdb0e857759f548a5c65c9bd (patch)
tree4162281ab28ac4eaf1f711e2f20c46125807397a /app
parent78d059141b5f3345d797992e03680654ce762c76 (diff)
refactor a few things based on feedback
Diffstat (limited to 'app')
-rw-r--r--app/controllers/admin/services_controller.rb4
-rw-r--r--app/models/service.rb10
-rw-r--r--app/services/projects/propagate_service.rb8
-rw-r--r--app/workers/propagate_project_service_worker.rb2
4 files changed, 8 insertions, 16 deletions
diff --git a/app/controllers/admin/services_controller.rb b/app/controllers/admin/services_controller.rb
index 2b6f335cb2b..e335fbfffed 100644
--- a/app/controllers/admin/services_controller.rb
+++ b/app/controllers/admin/services_controller.rb
@@ -15,7 +15,9 @@ class Admin::ServicesController < Admin::ApplicationController
end
def update
- if service.update_and_propagate(service_params[:service])
+ if service.update_attributes(service_params[:service])
+ PropagateProjectServiceWorker.perform_async(service.id) if service.active?
+
redirect_to admin_application_settings_services_path,
notice: 'Application settings saved successfully'
else
diff --git a/app/models/service.rb b/app/models/service.rb
index f8534387703..c71a7d169ec 100644
--- a/app/models/service.rb
+++ b/app/models/service.rb
@@ -254,16 +254,6 @@ class Service < ActiveRecord::Base
service
end
- def update_and_propagate(service_params)
- return false unless update_attributes(service_params)
-
- if service_params[:active]
- PropagateProjectServiceWorker.perform_async(id)
- end
-
- true
- end
-
private
def cache_project_has_external_issue_tracker
diff --git a/app/services/projects/propagate_service.rb b/app/services/projects/propagate_service.rb
index 3c05dcce07c..6e24a67d8b0 100644
--- a/app/services/projects/propagate_service.rb
+++ b/app/services/projects/propagate_service.rb
@@ -2,15 +2,15 @@ module Projects
class PropagateService
BATCH_SIZE = 100
- def self.propagate!(*args)
- new(*args).propagate!
+ def self.propagate(*args)
+ new(*args).propagate
end
def initialize(template)
@template = template
end
- def propagate!
+ def propagate
return unless @template&.active
Rails.logger.info("Propagating services for template #{@template.id}")
@@ -28,7 +28,7 @@ module Projects
batch.each { |project_id| create_from_template(project_id) }
- break if batch.count < BATCH_SIZE
+ break if batch.size < BATCH_SIZE
offset += BATCH_SIZE
end
diff --git a/app/workers/propagate_project_service_worker.rb b/app/workers/propagate_project_service_worker.rb
index 6cc3fe84635..5eabe4eaecd 100644
--- a/app/workers/propagate_project_service_worker.rb
+++ b/app/workers/propagate_project_service_worker.rb
@@ -10,7 +10,7 @@ class PropagateProjectServiceWorker
def perform(template_id)
return unless try_obtain_lease_for(template_id)
- Projects::PropagateService.propagate!(Service.find_by(id: template_id))
+ Projects::PropagateService.propagate(Service.find_by(id: template_id))
end
private