diff --git a/recover-control-plane.yml b/recover-control-plane.yml
index a8a2d0b8369e4c2d213f4b9f4ab8db7ab0cd6860..77ec5bec4661add78564084ad6ee9e37677d22cd 100644
--- a/recover-control-plane.yml
+++ b/recover-control-plane.yml
@@ -16,7 +16,8 @@
   environment: "{{ proxy_disable_env }}"
   roles:
     - { role: kubespray-defaults}
-    - { role: recover_control_plane/etcd, when: "not etcd_kubeadm_enabled|default(false)" }
+    - role: recover_control_plane/etcd
+      when: etcd_deployment_type != "kubeadm"
 
 - hosts: kube_control_plane[0]
   environment: "{{ proxy_disable_env }}"