diff --git a/cmd/helm/installer/install.go b/cmd/helm/installer/install.go index 7e8707fc8..8884e6bab 100644 --- a/cmd/helm/installer/install.go +++ b/cmd/helm/installer/install.go @@ -251,7 +251,6 @@ func createSecret(client corev1.SecretsGetter, opts *Options) error { // generateSecret builds the secret object that hold Tiller secrets. func generateSecret(opts *Options) (*v1.Secret, error) { - const secretName = "tiller-secret" labels := generateLabels(map[string]string{"name": "tiller"}) secret := &v1.Secret{ diff --git a/cmd/helm/installer/uninstall.go b/cmd/helm/installer/uninstall.go index f501bc36d..3d0710969 100644 --- a/cmd/helm/installer/uninstall.go +++ b/cmd/helm/installer/uninstall.go @@ -28,6 +28,7 @@ import ( const ( deploymentName = "tiller-deploy" serviceName = "tiller-deploy" + secretName = "tiller-secret" ) // Uninstall uses Kubernetes client to uninstall Tiller. @@ -35,7 +36,10 @@ func Uninstall(client internalclientset.Interface, opts *Options) error { if err := deleteService(client.Core(), opts.Namespace); err != nil { return err } - return deleteDeployment(client, opts.Namespace) + if err := deleteDeployment(client, opts.Namespace); err != nil { + return err + } + return deleteSecret(client.Core(), opts.Namespace) } // deleteService deletes the Tiller Service resource @@ -53,6 +57,12 @@ func deleteDeployment(client internalclientset.Interface, namespace string) erro return ingoreNotFound(err) } +// deleteSecret deletes the Tiller Secret resource +func deleteSecret(client coreclient.SecretsGetter, namespace string) error { + err := client.Secrets(namespace).Delete(secretName, &metav1.DeleteOptions{}) + return ingoreNotFound(err) +} + func ingoreNotFound(err error) error { if apierrors.IsNotFound(err) { return nil