31 lines
1.2 KiB
YAML
31 lines
1.2 KiB
YAML
---
|
|
- name: Create manifests directory on first master
|
|
file:
|
|
path: /var/lib/rancher/k3s/server/manifests
|
|
state: directory
|
|
owner: root
|
|
group: root
|
|
mode: 0644
|
|
when: ansible_hostname == hostvars[groups['master'][0]]['ansible_hostname']
|
|
|
|
- name: "Download to first master: manifest for metallb-{{ metal_lb_type }}"
|
|
ansible.builtin.get_url:
|
|
url: "https://raw.githubusercontent.com/metallb/metallb/{{ metal_lb_controller_tag_version }}/config/manifests/metallb-{{metal_lb_type}}.yaml" # noqa yaml[line-length]
|
|
dest: "/var/lib/rancher/k3s/server/manifests/metallb-crds.yaml"
|
|
owner: root
|
|
group: root
|
|
mode: 0644
|
|
when: ansible_hostname == hostvars[groups['master'][0]]['ansible_hostname']
|
|
|
|
- name: Set image versions in manifest for metallb-{{ metal_lb_type }}
|
|
ansible.builtin.replace:
|
|
path: "/var/lib/rancher/k3s/server/manifests/metallb-crds.yaml"
|
|
regexp: "{{ item.change | ansible.builtin.regex_escape }}"
|
|
replace: "{{ item.to }}"
|
|
with_items:
|
|
- change: "metallb/speaker:{{ metal_lb_controller_tag_version }}"
|
|
to: "metallb/speaker:{{ metal_lb_speaker_tag_version }}"
|
|
loop_control:
|
|
label: "{{ item.change }} => {{ item.to }}"
|
|
when: ansible_hostname == hostvars[groups['master'][0]]['ansible_hostname']
|