---
- name: Create kubernetes config directory
  file:
    path: "{{ kube_config_dir }}"
    state: directory
    owner: kube

- name: Create kubernetes script directory
  file:
    path: "{{ kube_script_dir }}"
    state: directory
    owner: kube

- name: Create kubernetes manifests directory
  file:
    path: "{{ kube_manifest_dir }}"
    state: directory
    owner: kube

- name: Create kubernetes logs directory
  file:
    path: "{{ kube_log_dir }}"
    state: directory
    owner: kube
  when: init_system == "sysvinit"

- include: secrets.yml
  tags:
    - secrets

- include: install.yml

- name: Write kubelet config file
  template: src=kubelet.j2 dest={{ kube_config_dir }}/kubelet.env backup=yes
  notify:
    - restart kubelet

- name: write the kubecfg (auth) file for kubelet
  template: src=node-kubeconfig.yaml.j2 dest={{ kube_config_dir }}/node-kubeconfig.yaml backup=yes
  notify:
    - restart kubelet

- name: Write proxy manifest
  template:
    src: manifests/kube-proxy.manifest.j2
    dest: "{{ kube_manifest_dir }}/kube-proxy.manifest"

- name: Restart kubelet if binary changed
  command: /bin/true
  notify: restart kubelet
  when: kubelet_copy.stdout_lines

# reload-systemd
- meta: flush_handlers

- name: Enable kubelet
  service:
    name: kubelet
    enabled: yes
    state: started
