diff --git a/app/models/clusters/platforms/kubernetes.rb b/app/models/clusters/platforms/kubernetes.rb index 39b4f8f7bfc..7ab670cf1ef 100644 --- a/app/models/clusters/platforms/kubernetes.rb +++ b/app/models/clusters/platforms/kubernetes.rb @@ -134,6 +134,7 @@ module Clusters kubeclient.get_pods(namespace: actual_namespace).as_json rescue KubeException => err raise err unless err.error_code == 404 + [] end diff --git a/app/models/project.rb b/app/models/project.rb index 49c56e76dfc..95aabc4ad45 100644 --- a/app/models/project.rb +++ b/app/models/project.rb @@ -905,7 +905,7 @@ class Project < ActiveRecord::Base # TODO: This will be extended for multiple enviroment clusters # TODO: Add super nice tests to check this interchangeability def deployment_platform - @deployment_platform ||= clusters.where(enabled: true).first&.platform_kubernetes + @deployment_platform ||= clusters.find_by(enabled: true)&.platform_kubernetes @deployment_platform ||= services.where(category: :deployment).reorder(nil).find_by(active: true) end diff --git a/spec/features/projects/clusters/interchangeability_spec.rb b/spec/features/projects/clusters/interchangeability_spec.rb index cf5c0ca347f..01f9526608f 100644 --- a/spec/features/projects/clusters/interchangeability_spec.rb +++ b/spec/features/projects/clusters/interchangeability_spec.rb @@ -1,8 +1,8 @@ require 'spec_helper' feature 'Interchangeability between KubernetesService and Platform::Kubernetes' do - EXCEPT_METHODS = %i[test title description help fields initialize_properties namespace namespace= api_url api_url=] - EXCEPT_METHODS_GREP_V = %w[_touched? _changed? _was] + EXCEPT_METHODS = %i[test title description help fields initialize_properties namespace namespace= api_url api_url=].freeze + EXCEPT_METHODS_GREP_V = %w[_touched? _changed? _was].freeze it 'Clusters::Platform::Kubernetes covers core interfaces in KubernetesService' do expected_interfaces = KubernetesService.instance_methods(false) @@ -10,7 +10,7 @@ feature 'Interchangeability between KubernetesService and Platform::Kubernetes' EXCEPT_METHODS_GREP_V.each do |g| expected_interfaces = expected_interfaces.grep_v(/#{Regexp.escape(g)}\z/) end - + expect(expected_interfaces - Clusters::Platforms::Kubernetes.instance_methods).to be_empty end end diff --git a/spec/features/projects/environments/environments_spec.rb b/spec/features/projects/environments/environments_spec.rb index 8a7c9766f9e..911486e534a 100644 --- a/spec/features/projects/environments/environments_spec.rb +++ b/spec/features/projects/environments/environments_spec.rb @@ -225,7 +225,7 @@ feature 'Environments page', :js do end end end - + context 'when user configured kubernetes from Integration > Kubernetes' do let(:project) { create(:kubernetes_project, :test_repo) }