mirror of
https://github.com/rancher/rke.git
synced 2025-09-16 23:20:56 +00:00
Warn not fatal if deleted host is not found
This commit is contained in:
@@ -9,6 +9,7 @@ import (
|
||||
"github.com/rancher/rke/k8s"
|
||||
"github.com/rancher/types/apis/cluster.cattle.io/v1"
|
||||
"github.com/sirupsen/logrus"
|
||||
apierrors "k8s.io/apimachinery/pkg/api/errors"
|
||||
"k8s.io/client-go/kubernetes"
|
||||
)
|
||||
|
||||
@@ -56,13 +57,19 @@ func (h *Host) CleanUp() error {
|
||||
|
||||
func DeleteNode(toDeleteHost *Host, kubeClient *kubernetes.Clientset) error {
|
||||
logrus.Infof("[hosts] Cordoning host [%s]", toDeleteHost.Address)
|
||||
err := k8s.CordonUncordon(kubeClient, toDeleteHost.HostnameOverride, true)
|
||||
if err != nil {
|
||||
if _, err := k8s.GetNode(kubeClient, toDeleteHost.HostnameOverride); err != nil {
|
||||
if apierrors.IsNotFound(err) {
|
||||
logrus.Warnf("[hosts] Can't find node by name [%s]", toDeleteHost.Address)
|
||||
return nil
|
||||
}
|
||||
return err
|
||||
|
||||
}
|
||||
if err := k8s.CordonUncordon(kubeClient, toDeleteHost.HostnameOverride, true); err != nil {
|
||||
return err
|
||||
}
|
||||
logrus.Infof("[hosts] Deleting host [%s] from the cluster", toDeleteHost.Address)
|
||||
err = k8s.DeleteNode(kubeClient, toDeleteHost.HostnameOverride)
|
||||
if err != nil {
|
||||
if err := k8s.DeleteNode(kubeClient, toDeleteHost.HostnameOverride); err != nil {
|
||||
return err
|
||||
}
|
||||
logrus.Infof("[hosts] Successfully deleted host [%s] from the cluster", toDeleteHost.Address)
|
||||
|
@@ -18,6 +18,9 @@ func GetNodeList(k8sClient *kubernetes.Clientset) (*v1.NodeList, error) {
|
||||
return k8sClient.CoreV1().Nodes().List(metav1.ListOptions{})
|
||||
}
|
||||
|
||||
func GetNode(k8sClient *kubernetes.Clientset, nodeName string) (*v1.Node, error) {
|
||||
return k8sClient.CoreV1().Nodes().Get(nodeName, metav1.GetOptions{})
|
||||
}
|
||||
func CordonUncordon(k8sClient *kubernetes.Clientset, nodeName string, cordoned bool) error {
|
||||
updated := false
|
||||
for retries := 0; retries <= 5; retries++ {
|
||||
|
Reference in New Issue
Block a user