add archlinux support, fixed drain invoked on uninstall by adding --delete-local-data

This commit is contained in:
Martin Friedrich 2020-10-23 14:43:58 +02:00
parent 93b95a9813
commit e5133c1f73
No known key found for this signature in database
GPG Key ID: D89433619ABD34AB
8 changed files with 34 additions and 6 deletions

View File

@ -14,6 +14,7 @@ The host you're running Ansible from requires the following Python dependencies:
This role has been tested on Ansible 2.7.0+ against the following Linux Distributions:
- Amazon Linux 2
- Archlinux
- CentOS 8
- CentOS 7
- Debian 9

View File

@ -1,6 +1,6 @@
---
# k3s cluster state, options: installed, started, stopped, restarted
# k3s cluster state, options: installed, started, stopped, restarted, uninstalled
# (default: installed)
k3s_cluster_state: installed

View File

@ -0,0 +1,15 @@
---
- name: Ensure docker is installed using Pacman
pacman:
name: docker
state: present
register: ensure_docker_prerequisites_installed
until: ensure_docker_prerequisites_installed is succeeded
retries: 3
delay: 10
notify:
- restart docker
become: "{{ k3s_become_for_package_install | ternary(true, false, k3s_become_for_all) }}"
- meta: flush_handlers

View File

@ -0,0 +1 @@
---

View File

@ -23,12 +23,12 @@
- import_tasks: build/install-docker.yml
when: k3s_use_docker
and ansible_distribution | replace(" ", "-") | lower not in ['amazon', 'suse', 'opensuse-leap']
and ansible_distribution | replace(" ", "-") | lower not in ['amazon', 'suse', 'opensuse-leap', 'archlinux']
and (k3s_non_root is not defined or not k3s_non_root)
- include_tasks: build/install-docker-{{ ansible_distribution | replace(" ", "-") | lower }}.yml
when: k3s_use_docker
and ansible_distribution | replace(" ", "-") | lower in ['amazon', 'suse', 'opensuse-leap']
and ansible_distribution | replace(" ", "-") | lower in ['amazon', 'suse', 'opensuse-leap', 'archlinux']
and (k3s_non_root is not defined or not k3s_non_root)
- import_tasks: build/download-k3s.yml

View File

@ -8,12 +8,12 @@
- import_tasks: teardown/uninstall-docker.yml
when: k3s_use_docker
and ansible_distribution | replace(" ", "-") | lower not in ['amazon', 'suse', 'opensuse-leap']
and ansible_distribution | replace(" ", "-") | lower not in ['amazon', 'suse', 'opensuse-leap', 'archlinux']
and (k3s_non_root is not defined or not k3s_non_root)
- include_tasks: teardown/uninstall-docker-{{ ansible_distribution | replace(" ", "-") | lower }}.yml
when: k3s_use_docker
and ansible_distribution | replace(" ", "-") | lower in ['amazon', 'suse', 'opensuse-leap']
and ansible_distribution | replace(" ", "-") | lower in ['amazon', 'suse', 'opensuse-leap', 'archlinux']
and (k3s_non_root is not defined or not k3s_non_root)
- include_tasks: teardown/uninstall-docker-prerequisites-{{ ansible_os_family | lower }}.yml

View File

@ -19,7 +19,7 @@
become: "{{ k3s_become_for_kubectl | ternary(true, false, k3s_become_for_all) }}"
- name: Ensure uninstalled nodes are drained
command: "{{ k3s_install_dir }}/kubectl drain {{ item }} --ignore-daemonsets"
command: "{{ k3s_install_dir }}/kubectl drain {{ item }} --ignore-daemonsets --delete-local-data"
delegate_to: "{{ k3s_control_delegate }}"
run_once: true
when: item in kubectl_get_nodes_result.stdout

View File

@ -0,0 +1,11 @@
---
- name: Ensure docker is uninstalled using Pacman
pacman:
name: docker
state: absent
register: ensure_docker_uninstalled
until: ensure_docker_uninstalled is succeeded
retries: 3
delay: 10
become: "{{ k3s_become_for_uninstall | ternary(true, false, k3s_become_for_all) }}"