---
- name: Kube-OVN | Label ovn-db node
  command: "{{ kubectl }} label --overwrite node {{ item }} kube-ovn/role=master"
  loop: "{{ kube_ovn_central_hosts }}"
  when:
    - inventory_hostname == groups['kube_control_plane'][0]

- name: Kube-OVN | Create Kube-OVN manifests
  template:
    src: "{{ item.file }}.j2"
    dest: "{{ kube_config_dir }}/{{ item.file }}"
    mode: "0644"
  with_items:
    - {name: kube-ovn-crd, file: cni-kube-ovn-crd.yml}
    - {name: ovn, file: cni-ovn.yml}
    - {name: kube-ovn, file: cni-kube-ovn.yml}
  register: kube_ovn_node_manifests

- name: Kube-OVN | Start Resources
  kube:
    name: "{{ item.item.name }}"
    kubectl: "{{ bin_dir }}/kubectl"
    filename: "{{ kube_config_dir }}/{{ item.item.file }}"
    state: "latest"
  with_items: "{{ kube_ovn_node_manifests.results }}"
  when: inventory_hostname == groups['kube_control_plane'][0] and not item is skipped
