diff --git a/roles/upgrade/pre-upgrade/tasks/main.yml b/roles/upgrade/pre-upgrade/tasks/main.yml
index c93e9f14e3136c3e0468616e32bba932a9ebadb0..8d5d99c937d4d0949256033b6bbd59512dbb5511 100644
--- a/roles/upgrade/pre-upgrade/tasks/main.yml
+++ b/roles/upgrade/pre-upgrade/tasks/main.yml
@@ -38,13 +38,7 @@
 
 - name: Set if node needs cordoning
   set_fact:
-    # noqa: jinja[spacing]
-    needs_cordoning: >-
-      {% if (kubectl_node_ready.stdout == "True" and not kubectl_node_schedulable.stdout) or upgrade_node_always_cordon -%}
-      true
-      {%- else -%}
-      false
-      {%- endif %}
+    needs_cordoning: "{{ (kubectl_node_ready.stdout == 'True' and not kubectl_node_schedulable.stdout) or upgrade_node_always_cordon }}"
 
 - name: Node draining
   delegate_to: "{{ groups['kube_control_plane'][0] }}"
@@ -61,8 +55,8 @@
         {{ kubectl }} drain
         --force
         --ignore-daemonsets
-        --grace-period {{ hostvars['localhost']['drain_grace_period_after_failure'] | default(drain_grace_period) }}
-        --timeout {{ hostvars['localhost']['drain_timeout_after_failure'] | default(drain_timeout) }}
+        --grace-period {{ drain_grace_period }}
+        --timeout {{ drain_timeout }}
         --delete-emptydir-data {{ kube_override_hostname | default(inventory_hostname) }}
         {% if drain_pod_selector %}--pod-selector '{{ drain_pod_selector }}'{% endif %}
       when: drain_nodes
@@ -74,35 +68,25 @@
       retries: "{{ drain_retries }}"
       delay: "{{ drain_retry_delay_seconds }}"
 
-    - name: Drain fallback
+    - name: Drain node - fallback with disabled eviction
       when:
         - drain_nodes
         - drain_fallback_enabled
         - result.rc != 0
-      block:
-        - name: Set facts after regular drain has failed
-          set_fact:
-            drain_grace_period_after_failure: "{{ drain_fallback_grace_period }}"
-            drain_timeout_after_failure: "{{ drain_fallback_timeout }}"
-          delegate_to: localhost
-          delegate_facts: yes
-          run_once: yes
-
-        - name: Drain node - fallback with disabled eviction
-          command: >-
-            {{ kubectl }} drain
-            --force
-            --ignore-daemonsets
-            --grace-period {{ drain_fallback_grace_period }}
-            --timeout {{ drain_fallback_timeout }}
-            --delete-emptydir-data {{ kube_override_hostname | default(inventory_hostname) }}
-            {% if drain_pod_selector %}--pod-selector '{{ drain_pod_selector }}'{% endif %}
-            --disable-eviction
-          register: drain_fallback_result
-          until: drain_fallback_result.rc == 0
-          retries: "{{ drain_fallback_retries }}"
-          delay: "{{ drain_fallback_retry_delay_seconds }}"
-          changed_when: drain_fallback_result.rc == 0
+      command: >-
+        {{ kubectl }} drain
+        --force
+        --ignore-daemonsets
+        --grace-period {{ drain_fallback_grace_period }}
+        --timeout {{ drain_fallback_timeout }}
+        --delete-emptydir-data {{ kube_override_hostname | default(inventory_hostname) }}
+        {% if drain_pod_selector %}--pod-selector '{{ drain_pod_selector }}'{% endif %}
+        --disable-eviction
+      register: drain_fallback_result
+      until: drain_fallback_result.rc == 0
+      retries: "{{ drain_fallback_retries }}"
+      delay: "{{ drain_fallback_retry_delay_seconds }}"
+      changed_when: drain_fallback_result.rc == 0
 
   rescue:
     - name: Set node back to schedulable