diff --git a/cmd/kubeadm/app/cmd/phases/upgrade/node/controlplane.go b/cmd/kubeadm/app/cmd/phases/upgrade/node/controlplane.go
index <HASH>..<HASH> 100644
--- a/cmd/kubeadm/app/cmd/phases/upgrade/node/controlplane.go
+++ b/cmd/kubeadm/app/cmd/phases/upgrade/node/controlplane.go
@@ -52,6 +52,7 @@ func runControlPlane() func(c workflow.RunData) error {
 		// if this is not a control-plande node, this phase should not be executed
 		if !data.IsControlPlaneNode() {
 			fmt.Printf("[upgrade] Skipping phase. Not a control plane node")
+			return nil
 		}
 
 		// otherwise, retrieve all the info required for control plane upgrade
kubeadm: fix conditional control-plane upgrade

When a node is not a control-plane properly skip "control-plane"
upgrade phase.