diff options
author | Thong Kuah <tkuah@gitlab.com> | 2018-12-05 01:57:02 +0300 |
---|---|---|
committer | Thong Kuah <tkuah@gitlab.com> | 2018-12-05 01:57:02 +0300 |
commit | e3188eb13e3145e9bd4b123c304e43b18eeb1154 (patch) | |
tree | c7c5b90152770b348a7df072849c54bee914dbaa /app/services/clusters | |
parent | ba2d8a3f3483af053eea47f84c158509a91f7012 (diff) |
Shift to class methods for RefreshService
As we don't use any instance attributes and we don't seem to have any
commonalities between the cluster and the project variant.
Diffstat (limited to 'app/services/clusters')
-rw-r--r-- | app/services/clusters/refresh_service.rb | 30 |
1 files changed, 18 insertions, 12 deletions
diff --git a/app/services/clusters/refresh_service.rb b/app/services/clusters/refresh_service.rb index c203f495b7c..7c82b98a33f 100644 --- a/app/services/clusters/refresh_service.rb +++ b/app/services/clusters/refresh_service.rb @@ -2,27 +2,31 @@ module Clusters class RefreshService - def create_or_update_namespaces_for_cluster(cluster) - cluster_namespaces = cluster.kubernetes_namespaces - - # Create all namespaces that are missing for each project - cluster.all_projects.missing_kubernetes_namespace(cluster_namespaces).each do |project| + def self.create_or_update_namespaces_for_cluster(cluster) + projects_with_missing_kubernetes_namespaces_for_cluster(cluster).each do |project| create_or_update_namespace(cluster, project) end end - def create_or_update_namespaces_for_project(project) - project_namespaces = project.kubernetes_namespaces - - # Create all namespaces that are missing for each cluster - project.all_clusters.missing_kubernetes_namespace(project_namespaces).each do |cluster| + def self.create_or_update_namespaces_for_project(project) + clusters_with_missing_kubernetes_namespaces_for_project(project).each do |cluster| create_or_update_namespace(cluster, project) end end - private + def self.projects_with_missing_kubernetes_namespaces_for_cluster(cluster) + cluster.all_projects.missing_kubernetes_namespace(cluster.kubernetes_namespaces) + end + + private_class_method :projects_with_missing_kubernetes_namespaces_for_cluster - def create_or_update_namespace(cluster, project) + def self.clusters_with_missing_kubernetes_namespaces_for_project(project) + project.all_clusters.missing_kubernetes_namespace(project.kubernetes_namespaces) + end + + private_class_method :clusters_with_missing_kubernetes_namespaces_for_project + + def self.create_or_update_namespace(cluster, project) kubernetes_namespace = cluster.find_or_initialize_kubernetes_namespace_for_project(project) ::Clusters::Gcp::Kubernetes::CreateOrUpdateNamespaceService.new( @@ -30,5 +34,7 @@ module Clusters kubernetes_namespace: kubernetes_namespace ).execute end + + private_class_method :create_or_update_namespace end end |