From a8e2094c6591336405a90e4185e89752d38965bf Mon Sep 17 00:00:00 2001 From: Shinya Maeda Date: Tue, 21 Nov 2017 23:29:33 +0900 Subject: [PATCH] Remove logic which glues with KubernetesService, from Platforms::Kubernetes --- app/models/clusters/cluster.rb | 9 +--- app/models/clusters/platforms/kubernetes.rb | 51 +-------------------- 2 files changed, 3 insertions(+), 57 deletions(-) diff --git a/app/models/clusters/cluster.rb b/app/models/clusters/cluster.rb index 185d9473aab..6d7fb4b7dbf 100644 --- a/app/models/clusters/cluster.rb +++ b/app/models/clusters/cluster.rb @@ -17,8 +17,7 @@ module Clusters # we force autosave to happen when we save `Cluster` model has_one :provider_gcp, class_name: 'Clusters::Providers::Gcp', autosave: true - # We have to ":destroy" it today to ensure that we clean also the Kubernetes Integration - has_one :platform_kubernetes, class_name: 'Clusters::Platforms::Kubernetes', autosave: true, dependent: :destroy # rubocop:disable Cop/ActiveRecordDependent + has_one :platform_kubernetes, class_name: 'Clusters::Platforms::Kubernetes' has_one :application_helm, class_name: 'Clusters::Applications::Helm' has_one :application_ingress, class_name: 'Clusters::Applications::Ingress' @@ -29,15 +28,9 @@ module Clusters validates :name, cluster_name: true validate :restrict_modification, on: :update - # TODO: Move back this into Clusters::Platforms::Kubernetes in 10.3 - # We need callback here because `enabled` belongs to Clusters::Cluster - # Callbacks in Clusters::Platforms::Kubernetes will not be called after update - after_save :update_kubernetes_integration! - delegate :status, to: :provider, allow_nil: true delegate :status_reason, to: :provider, allow_nil: true delegate :on_creation?, to: :provider, allow_nil: true - delegate :update_kubernetes_integration!, to: :platform, allow_nil: true delegate :active?, to: :platform_kubernetes, prefix: true, allow_nil: true delegate :installed?, to: :application_helm, prefix: true, allow_nil: true diff --git a/app/models/clusters/platforms/kubernetes.rb b/app/models/clusters/platforms/kubernetes.rb index 549b32ceef1..590d5da24cb 100644 --- a/app/models/clusters/platforms/kubernetes.rb +++ b/app/models/clusters/platforms/kubernetes.rb @@ -36,9 +36,6 @@ module Clusters after_save :clear_reactive_cache! - # TODO: Glue code till we migrate Kubernetes Integration into Platforms::Kubernetes - after_destroy :destroy_kubernetes_integration! - alias_attribute :ca_pem, :ca_cert delegate :project, to: :cluster, allow_nil: true @@ -85,33 +82,14 @@ module Clusters # Caches resources in the namespace so other calls don't need to block on # network access def calculate_reactive_cache - return unless active? && project && !project.pending_delete? + return unless enabled? && project && !project.pending_delete? # We may want to cache extra things in the future { pods: read_pods } end def kubeclient - @kubeclient ||= kubernetes_service.kubeclient if manages_kubernetes_service? - end - - def update_kubernetes_integration! - raise 'Kubernetes service already configured' unless manages_kubernetes_service? - - # This is neccesary, otheriwse enabled? returns true even though cluster updated with enabled: false - cluster.reload - - ensure_kubernetes_service&.update!( - active: enabled?, - api_url: api_url, - namespace: namespace, - token: token, - ca_pem: ca_cert - ) - end - - def active? - manages_kubernetes_service? + @kubeclient ||= build_kubeclient! end private @@ -192,31 +170,6 @@ module Clusters def enforce_namespace_to_lower_case self.namespace = self.namespace&.downcase end - - def enforce_namespace_to_lower_case - self.namespace = self.namespace&.downcase - end - - # TODO: glue code till we migrate Kubernetes Service into Platforms::Kubernetes class - def manages_kubernetes_service? - return true unless kubernetes_service&.active? - - kubernetes_service.api_url == api_url - end - - def destroy_kubernetes_integration! - return unless manages_kubernetes_service? - - kubernetes_service&.destroy! - end - - def kubernetes_service - @kubernetes_service ||= project&.kubernetes_service - end - - def ensure_kubernetes_service - @kubernetes_service ||= kubernetes_service || project&.build_kubernetes_service - end end end end