Merge branch '62713-fix-uninstalling-cluster-apps' into 'master'

Fix connection to Tiller error while uninstalling

Closes #62713

See merge request gitlab-org/gitlab-ce!29131
This commit is contained in:
Douglas Barbosa Alexandre 2019-06-05 09:42:20 +00:00
commit eebdfbc334
3 changed files with 30 additions and 0 deletions

View File

@ -0,0 +1,5 @@
---
title: Fix connection to Tiller error while uninstalling
merge_request: 29131
author:
type: fixed

View File

@ -24,6 +24,7 @@ module Gitlab
def uninstall(command)
namespace.ensure_exists!
create_config_map(command)
delete_pod!(command.pod_name)
kubeclient.create_pod(command.pod_resource)

View File

@ -36,6 +36,8 @@ describe Gitlab::Kubernetes::Helm::Api do
describe '#uninstall' do
before do
allow(client).to receive(:create_pod).and_return(nil)
allow(client).to receive(:get_config_map).and_return(nil)
allow(client).to receive(:create_config_map).and_return(nil)
allow(client).to receive(:delete_pod).and_return(nil)
allow(namespace).to receive(:ensure_exists!).once
end
@ -53,6 +55,28 @@ describe Gitlab::Kubernetes::Helm::Api do
subject.uninstall(command)
end
context 'with a ConfigMap' do
let(:resource) { Gitlab::Kubernetes::ConfigMap.new(application_name, files).generate }
it 'creates a ConfigMap on kubeclient' do
expect(client).to receive(:create_config_map).with(resource).once
subject.install(command)
end
context 'config map already exists' do
before do
expect(client).to receive(:get_config_map).with("values-content-configuration-#{application_name}", gitlab_namespace).and_return(resource)
end
it 'updates the config map' do
expect(client).to receive(:update_config_map).with(resource).once
subject.install(command)
end
end
end
end
describe '#install' do