From a50108294f24cab29b7ba2a4a3e9df8621df016a Mon Sep 17 00:00:00 2001 From: Nicolas Vazquez Date: Wed, 29 May 2024 18:09:01 -0300 Subject: [PATCH] Fix CKS cluster version upgrade --- .../actionworkers/KubernetesClusterActionWorker.java | 4 +++- .../kubernetes/cluster/utils/KubernetesClusterUtil.java | 7 +++++-- 2 files changed, 8 insertions(+), 3 deletions(-) diff --git a/plugins/integrations/kubernetes-service/src/main/java/com/cloud/kubernetes/cluster/actionworkers/KubernetesClusterActionWorker.java b/plugins/integrations/kubernetes-service/src/main/java/com/cloud/kubernetes/cluster/actionworkers/KubernetesClusterActionWorker.java index 961ae1050ce..2881d0d9e41 100644 --- a/plugins/integrations/kubernetes-service/src/main/java/com/cloud/kubernetes/cluster/actionworkers/KubernetesClusterActionWorker.java +++ b/plugins/integrations/kubernetes-service/src/main/java/com/cloud/kubernetes/cluster/actionworkers/KubernetesClusterActionWorker.java @@ -371,7 +371,9 @@ public class KubernetesClusterActionWorker { newClusterVmMap.setExternalNode(isExternalNode); newClusterVmMap.setManualUpgrade(markForManualUpgrade); newClusterVmMap.setEtcdNode(isEtcdNode); - newClusterVmMap.setNodeVersion(kubernetesVersion.getSemanticVersion()); + if (!isEtcdNode) { + newClusterVmMap.setNodeVersion(kubernetesVersion.getSemanticVersion()); + } kubernetesClusterVmMapDao.persist(newClusterVmMap); return newClusterVmMap; } diff --git a/plugins/integrations/kubernetes-service/src/main/java/com/cloud/kubernetes/cluster/utils/KubernetesClusterUtil.java b/plugins/integrations/kubernetes-service/src/main/java/com/cloud/kubernetes/cluster/utils/KubernetesClusterUtil.java index 4b4e3f40b5a..cdcb2ce1e77 100644 --- a/plugins/integrations/kubernetes-service/src/main/java/com/cloud/kubernetes/cluster/utils/KubernetesClusterUtil.java +++ b/plugins/integrations/kubernetes-service/src/main/java/com/cloud/kubernetes/cluster/utils/KubernetesClusterUtil.java @@ -349,8 +349,11 @@ public class KubernetesClusterUtil { 10000, 10000, 20000); Pair clusterVersionMatchesAndValue = clusterNodeVersionMatches(result, version); if (Boolean.TRUE.equals(clusterVersionMatchesAndValue.first())) { - KubernetesClusterVmMapVO vmMapVO = vmMapDao.findById(vmId); - vmMapVO.setNodeVersion(clusterVersionMatchesAndValue.second()); + KubernetesClusterVmMapVO vmMapVO = vmMapDao.getClusterMapFromVmId(vmId); + String newNodeVersion = clusterVersionMatchesAndValue.second(); + LOGGER.debug(String.format("Updating node %s Kubernetes version to %s", hostName, newNodeVersion)); + vmMapVO.setNodeVersion(newNodeVersion); + vmMapDao.update(vmMapVO.getId(), vmMapVO); return true; } } catch (Exception e) {