in projects/aws/upgrader/cmd/upgradenode.go [50:76]
func upgradeNode(ctx context.Context, nodeType, k8sVersion, etcdVersion string) error {
upg := upgrade.NewInPlaceUpgrader(upgrade.WithKubernetesVersion(k8sVersion), upgrade.WithEtcdVersion(etcdVersion))
switch nodeType {
case "FirstCP":
if k8sVersion == "" {
return errors.New("k8sVersion flag has to be set for first control plane node")
}
if err := upg.KubeAdmInFirstCP(ctx); err != nil {
return fmt.Errorf("upgrading kubeadm in first controlplane node: %v", err)
}
case "RestCP":
if err := upg.KubeAdmInRestCP(ctx); err != nil {
return fmt.Errorf("upgrading kubeadm in controlplane node: %v", err)
}
case "Worker":
if err := upg.KubeAdmInWorker(ctx); err != nil {
return fmt.Errorf("upgrading kubeadm in worker node: %v", err)
}
default:
return fmt.Errorf("invalid node type, please specify one of the three types: FirstCP, RestCP or Worker")
}
return nil
}