From 540e0c2bc2c6ed3588bdc19efcc4193c653ed31c Mon Sep 17 00:00:00 2001 From: Dario Tranchitella Date: Wed, 24 Apr 2024 15:09:08 +0200 Subject: [PATCH] fix(kubeadm): version getter must return component versions Signed-off-by: Dario Tranchitella --- internal/resources/kubeadm_upgrade.go | 2 +- internal/upgrade/kube_version_getter.go | 11 +++++++++-- 2 files changed, 10 insertions(+), 3 deletions(-) diff --git a/internal/resources/kubeadm_upgrade.go b/internal/resources/kubeadm_upgrade.go index 26ee330..bfc279c 100644 --- a/internal/resources/kubeadm_upgrade.go +++ b/internal/resources/kubeadm_upgrade.go @@ -70,7 +70,7 @@ func (k *KubernetesUpgrade) CreateOrUpdate(ctx context.Context, tenantControlPla return controllerutil.OperationResultNone, errors.Wrap(err, "cannot create REST client required for Kubernetes upgrade plan") } - versionGetter := kamajiupgrade.NewKamajiKubeVersionGetter(clientSet) + versionGetter := kamajiupgrade.NewKamajiKubeVersionGetter(clientSet, tenantControlPlane.Status.Kubernetes.Version.Version) if _, err = upgrade.GetAvailableUpgrades(versionGetter, false, false, clientSet, &printers.Discard{}); err != nil { return controllerutil.OperationResultNone, errors.Wrap(err, "cannot retrieve available Upgrades for Kubernetes upgrade plan") diff --git a/internal/upgrade/kube_version_getter.go b/internal/upgrade/kube_version_getter.go index 29b9506..208d7db 100644 --- a/internal/upgrade/kube_version_getter.go +++ b/internal/upgrade/kube_version_getter.go @@ -16,12 +16,13 @@ import ( type kamajiKubeVersionGetter struct { upgrade.VersionGetter + Version string } -func NewKamajiKubeVersionGetter(restClient kubernetes.Interface) upgrade.VersionGetter { +func NewKamajiKubeVersionGetter(restClient kubernetes.Interface, version string) upgrade.VersionGetter { kubeVersionGetter := upgrade.NewOfflineVersionGetter(upgrade.NewKubeVersionGetter(restClient), KubeadmVersion) - return &kamajiKubeVersionGetter{VersionGetter: kubeVersionGetter} + return &kamajiKubeVersionGetter{VersionGetter: kubeVersionGetter, Version: version} } func (k kamajiKubeVersionGetter) ClusterVersion() (string, *versionutil.Version, error) { @@ -51,3 +52,9 @@ func (k kamajiKubeVersionGetter) VersionFromCILabel(ciVersionLabel, description func (k kamajiKubeVersionGetter) KubeletVersions() (map[string][]string, error) { return k.VersionGetter.KubeletVersions() } + +func (k kamajiKubeVersionGetter) ComponentVersions(string) (map[string][]string, error) { + return map[string][]string{ + k.Version: {"kamaji"}, + }, nil +}