diff --git a/roles/remove-node/pre-remove/defaults/main.yml b/roles/remove-node/pre-remove/defaults/main.yml index e9e1ba28d..1e5b849cc 100644 --- a/roles/remove-node/pre-remove/defaults/main.yml +++ b/roles/remove-node/pre-remove/defaults/main.yml @@ -1,3 +1,4 @@ --- +allow_ungraceful_removal: false drain_grace_period: 300 drain_timeout: 360s diff --git a/roles/remove-node/pre-remove/tasks/main.yml b/roles/remove-node/pre-remove/tasks/main.yml index 32421c1a3..34a2b043d 100644 --- a/roles/remove-node/pre-remove/tasks/main.yml +++ b/roles/remove-node/pre-remove/tasks/main.yml @@ -4,7 +4,7 @@ {{ bin_dir }}/kubectl cordon {{ hostvars[item]['kube_override_hostname']|default(item) }} with_items: - "{{ node.split(',') | default(groups['kube-node']) }}" - failed_when: false + failed_when: result.rc == 0 and not allow_ungraceful_removal delegate_to: "{{ groups['kube-master']|first }}" run_once: true ignore_errors: yes @@ -19,7 +19,7 @@ --delete-local-data {{ hostvars[item]['kube_override_hostname']|default(item) }} with_items: - "{{ node.split(',') | default(groups['kube-node']) }}" - failed_when: false + failed_when: result.rc == 0 and not allow_ungraceful_removal delegate_to: "{{ groups['kube-master']|first }}" run_once: true ignore_errors: yes