kubespray/roles/recover_control_plane/control-plane/tasks/main.yml

30 lines
1.0 KiB
YAML

---
- name: Wait for apiserver
command: "{{ kubectl }} get nodes"
environment:
KUBECONFIG: "{{ ansible_env.HOME | default('/root') }}/.kube/config"
register: apiserver_is_ready
until: apiserver_is_ready.rc == 0
retries: 6
delay: 10
changed_when: false
when: groups['broken_kube_control_plane']
- name: Delete broken kube_control_plane nodes from cluster
command: "{{ kubectl }} delete node {{ item }}"
environment:
KUBECONFIG: "{{ ansible_env.HOME | default('/root') }}/.kube/config"
with_items: "{{ groups['broken_kube_control_plane'] }}"
register: delete_broken_kube_control_plane_nodes
failed_when: false
when: groups['broken_kube_control_plane']
- name: Fail if unable to delete broken kube_control_plane nodes from cluster
fail:
msg: "Unable to delete broken kube_control_plane node: {{ item.item }}"
loop: "{{ delete_broken_kube_control_plane_nodes.results }}"
changed_when: false
when:
- groups['broken_kube_control_plane']
- "item.rc != 0 and not 'NotFound' in item.stderr"