kubeadm - fix upgrades with static pod etcd

parent b3837d00
...@@ -37,7 +37,6 @@ import ( ...@@ -37,7 +37,6 @@ import (
"k8s.io/kubernetes/cmd/kubeadm/app/util/apiclient" "k8s.io/kubernetes/cmd/kubeadm/app/util/apiclient"
configutil "k8s.io/kubernetes/cmd/kubeadm/app/util/config" configutil "k8s.io/kubernetes/cmd/kubeadm/app/util/config"
dryrunutil "k8s.io/kubernetes/cmd/kubeadm/app/util/dryrun" dryrunutil "k8s.io/kubernetes/cmd/kubeadm/app/util/dryrun"
etcdutil "k8s.io/kubernetes/cmd/kubeadm/app/util/etcd"
"k8s.io/kubernetes/pkg/util/version" "k8s.io/kubernetes/pkg/util/version"
) )
...@@ -277,9 +276,8 @@ func PerformStaticPodUpgrade(client clientset.Interface, waiter apiclient.Waiter ...@@ -277,9 +276,8 @@ func PerformStaticPodUpgrade(client clientset.Interface, waiter apiclient.Waiter
return err return err
} }
// These are uninitialized because passing in the clients allow for mocking the client during testing // The arguments oldEtcdClient and newEtdClient, are uninitialized because passing in the clients allow for mocking the client during testing
var oldEtcdClient, newEtdClient etcdutil.Client return upgrade.StaticPodControlPlane(waiter, pathManager, internalcfg, etcdUpgrade, nil, nil)
return upgrade.StaticPodControlPlane(waiter, pathManager, internalcfg, etcdUpgrade, oldEtcdClient, newEtdClient)
} }
// DryRunStaticPodUpgrade fakes an upgrade of the control plane // DryRunStaticPodUpgrade fakes an upgrade of the control plane
......
...@@ -133,14 +133,10 @@ func (c Client) GetVersion() (string, error) { ...@@ -133,14 +133,10 @@ func (c Client) GetVersion() (string, error) {
return "", err return "", err
} }
for _, v := range versions { for _, v := range versions {
if clusterVersion == "" { if clusterVersion != "" && clusterVersion != v {
// This is the first version we've seen
clusterVersion = v
} else if v != clusterVersion {
return "", fmt.Errorf("etcd cluster contains endpoints with mismatched versions: %v", versions) return "", fmt.Errorf("etcd cluster contains endpoints with mismatched versions: %v", versions)
} else {
clusterVersion = v
} }
clusterVersion = v
} }
if clusterVersion == "" { if clusterVersion == "" {
return "", fmt.Errorf("could not determine cluster etcd version") return "", fmt.Errorf("could not determine cluster etcd version")
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment