diff --git a/lib/gitlab/kubernetes/helm/base_command.rb b/lib/gitlab/kubernetes/helm/base_command.rb index 9ea98897ee2d168d8f64476eaa156ef8add64c0a..afcfd109de083b425af6be8f5270493a832984f1 100644 --- a/lib/gitlab/kubernetes/helm/base_command.rb +++ b/lib/gitlab/kubernetes/helm/base_command.rb @@ -26,6 +26,10 @@ module Gitlab Gitlab::Kubernetes::ConfigMap.new(name, files).generate end + def file_names + files.keys + end + def name raise "Not implemented" end diff --git a/lib/gitlab/kubernetes/helm/install_command.rb b/lib/gitlab/kubernetes/helm/install_command.rb index 8e658ff410aa89e2b4319cbe2d1ddd38ba0e6e2d..c7d6a9c5b4d1abe5abdb4bd568d0991d0b523a23 100644 --- a/lib/gitlab/kubernetes/helm/install_command.rb +++ b/lib/gitlab/kubernetes/helm/install_command.rb @@ -33,9 +33,13 @@ module Gitlab end def script_command - <<~HEREDOC - helm install#{optional_tls_flags} #{chart} --name #{name}#{optional_version_flag} --namespace #{Gitlab::Kubernetes::Helm::NAMESPACE} -f /data/helm/#{name}/config/values.yaml >/dev/null - HEREDOC + "helm install" \ + "#{optional_tls_flags} " \ + "#{chart} " \ + "--name #{name}" \ + "#{optional_version_flag} " \ + "--namespace #{Gitlab::Kubernetes::Helm::NAMESPACE} " \ + "-f /data/helm/#{name}/config/values.yaml >/dev/null\n" end def optional_version_flag diff --git a/lib/gitlab/kubernetes/helm/pod.rb b/lib/gitlab/kubernetes/helm/pod.rb index 862664ff54389e10a786d9bbffff5f828fc84f31..6e5d33884057bcc5e8e92e6bb7e300f22c5664a1 100644 --- a/lib/gitlab/kubernetes/helm/pod.rb +++ b/lib/gitlab/kubernetes/helm/pod.rb @@ -59,7 +59,7 @@ module Gitlab name: 'configuration-volume', configMap: { name: "values-content-configuration-#{command.name}", - items: command.files.map { |name, _| { key: name, path: name } } + items: command.file_names.map { |name| { key: name, path: name } } } } ] diff --git a/spec/factories/clusters/applications/helm.rb b/spec/factories/clusters/applications/helm.rb index 15a053eed14a4f781c927e263b3056b03504d5bf..7c4a440b9a914803b674d7da9b863d71e6c94640 100644 --- a/spec/factories/clusters/applications/helm.rb +++ b/spec/factories/clusters/applications/helm.rb @@ -35,12 +35,15 @@ FactoryBot.define do factory :clusters_applications_ingress, class: Clusters::Applications::Ingress do cluster factory: %i(cluster with_installed_helm provided_by_gcp) end + factory :clusters_applications_prometheus, class: Clusters::Applications::Prometheus do cluster factory: %i(cluster with_installed_helm provided_by_gcp) end + factory :clusters_applications_runner, class: Clusters::Applications::Runner do cluster factory: %i(cluster with_installed_helm provided_by_gcp) end + factory :clusters_applications_jupyter, class: Clusters::Applications::Jupyter do oauth_application factory: :oauth_application cluster factory: %i(cluster with_installed_helm provided_by_gcp) diff --git a/spec/features/projects/clusters/applications_spec.rb b/spec/features/projects/clusters/applications_spec.rb index 0b319c46b6d1623e8be0d3a159e974e13c7a316a..71d715237f53b0ef208022585401f63eacd27e34 100644 --- a/spec/features/projects/clusters/applications_spec.rb +++ b/spec/features/projects/clusters/applications_spec.rb @@ -121,6 +121,7 @@ describe 'Clusters Applications', :js do def wait_until_helm_created! retries = 0 + while Clusters::Cluster.last.application_helm.nil? raise "Timed out waiting for helm application to be created in DB" if (retries += 1) > 3