From 3b9982013a6209845f8caf7580b22df947c64903 Mon Sep 17 00:00:00 2001 From: Derek Nola Date: Fri, 10 Nov 2023 15:17:13 -0800 Subject: [PATCH] Fix issue around using ip addresses in inventory, download and remove agent service properly Signed-off-by: Derek Nola --- playbook/reset.yml | 8 +++++++- roles/download/tasks/main.yml | 13 ++++++++++++- roles/k3s/server/tasks/main.yml | 3 ++- 3 files changed, 21 insertions(+), 3 deletions(-) diff --git a/playbook/reset.yml b/playbook/reset.yml index 2a1ab80..6a1d407 100644 --- a/playbook/reset.yml +++ b/playbook/reset.yml @@ -4,10 +4,16 @@ gather_facts: true become: true tasks: - - name: Run K3s Uninstall script + - name: Run K3s Uninstall script [server] + when: "'server' in group_names" ansible.builtin.command: cmd: k3s-uninstall.sh removes: /var/lib/rancher/k3s/* + - name: Run K3s Uninstall script [agent] + when: "'agent' in group_names" + ansible.builtin.command: + cmd: k3s-agent-uninstall.sh + removes: /var/lib/rancher/k3s/* - name: Remove user kubeconfig ansible.builtin.file: path: /home/{{ ansible_user }}/.kube/config diff --git a/roles/download/tasks/main.yml b/roles/download/tasks/main.yml index 787440b..340fc53 100644 --- a/roles/download/tasks/main.yml +++ b/roles/download/tasks/main.yml @@ -8,10 +8,21 @@ group: root mode: 0755 -- name: Download k3s binary +- name: Download k3s binary [server] + when: "'server' in group_names" ansible.builtin.command: cmd: /usr/local/bin/k3s-install.sh environment: INSTALL_K3S_SKIP_START: "true" INSTALL_K3S_VERSION: "{{ k3s_version }}" changed_when: true + +- name: Download k3s binary [agent] + when: "'agent' in group_names" + ansible.builtin.command: + cmd: /usr/local/bin/k3s-install.sh + environment: + INSTALL_K3S_SKIP_START: "true" + INSTALL_K3S_VERSION: "{{ k3s_version }}" + INSTALL_K3S_EXEC: "agent" + changed_when: true diff --git a/roles/k3s/server/tasks/main.yml b/roles/k3s/server/tasks/main.yml index 076817d..001f512 100644 --- a/roles/k3s/server/tasks/main.yml +++ b/roles/k3s/server/tasks/main.yml @@ -1,6 +1,7 @@ --- - name: Init first server node - when: ansible_hostname == groups['server'][0] + # Handle both hostname OR ip address being supplied in inventory + when: ansible_hostname == groups['server'][0] or groups['server'][0] in ansible_facts['all_ipv4_addresses'] block: - name: Copy K3s service file [Single] when: groups['server'] | length == 1