prole/infrastructure/roles/k3s/tasks/label_nodes.yml

24 lines
698 B
YAML

---
- name: Persist Kubernetes node labels
ansible.builtin.include_tasks: label_node.yml
loop: "{{ k3s_node_labels | dict2items }}"
loop_control:
loop_var: k3s_label_node
label: "{{ k3s_label_node.key }}"
when:
- hostvars[k3s_label_node.key] is defined
- hostvars[k3s_label_node.key].k3s_enabled | default(true) | bool
vars:
k3s_kubectl_delegate_host: >-
{{
(groups['k3s_hosts']
| map('extract', hostvars)
| selectattr('k3s_role', 'defined')
| selectattr('k3s_role', 'equalto', 'server')
| map(attribute='inventory_hostname')
| first)
| default(groups['k3s_hosts'] | first)
}}
run_once: true