diff --git a/roles/win_nodes/kubernetes_patch/tasks/main.yml b/roles/win_nodes/kubernetes_patch/tasks/main.yml
index e81e5c79fea93963c8bb5c9e066ac5bc89a6cb14..4430b513bae8d88ed654d93fee3bf7daeef2775d 100644
--- a/roles/win_nodes/kubernetes_patch/tasks/main.yml
+++ b/roles/win_nodes/kubernetes_patch/tasks/main.yml
@@ -18,6 +18,10 @@
     - name: Check current nodeselector for kube-proxy daemonset
       shell: "{{ bin_dir }}/kubectl --kubeconfig {{ kube_config_dir }}/admin.conf get ds kube-proxy --namespace=kube-system -o jsonpath='{.spec.template.spec.nodeSelector.beta.kubernetes.io/os}'"
       register: current_kube_proxy_state
+      retries: 60
+      delay: 5
+      until: current_kube_proxy_state is succeeded
+
 
     - name: Apply nodeselector patch for kube-proxy daemonset
       shell: "{{ bin_dir }}/kubectl --kubeconfig {{ kube_config_dir }}/admin.conf patch ds kube-proxy --namespace=kube-system --type=strategic -p \"$(cat nodeselector-os-linux-patch.json)\""