---
- name: install | Set SSL CA directories
  set_fact:
    ssl_ca_dirs: "[
      {% if ansible_os_family in ['CoreOS', 'Container Linux by CoreOS'] -%}
      '/usr/share/ca-certificates',
      {% elif ansible_os_family == 'RedHat' -%}
      '/etc/pki/tls',
      '/etc/pki/ca-trust',
      {% elif ansible_os_family == 'Debian' -%}
      '/usr/share/ca-certificates',
      {% endif -%}
    ]"
  tags:
    - facts

- name: Set kubelet deployment to host if kubeadm is enabled
  set_fact:
    kubelet_deployment_type: host
  when: kubeadm_enabled
  tags:
    - kubeadm

- name: install | Copy kubeadm binary from download dir
  command: rsync -piu "{{ local_release_dir }}/kubeadm" "{{ bin_dir }}/kubeadm"
  changed_when: false
  when: kubeadm_enabled
  tags:
    - kubeadm

- name: install | Set kubeadm binary permissions
  file:
    path: "{{ bin_dir }}/kubeadm"
    mode: "0755"
    state: file
  when: kubeadm_enabled
  tags:
    - kubeadm

- include_tasks: "install_{{ kubelet_deployment_type }}.yml"

- name: install | Write kubelet systemd init file
  template:
    src: "kubelet.{{ kubelet_deployment_type }}.service.j2"
    dest: "/etc/systemd/system/kubelet.service"
    backup: "yes"
  notify: restart kubelet
