---
- name: Helm | Gather os specific variables
  include_vars: "{{ item }}"
  with_first_found:
    - files:
        - "{{ ansible_distribution | lower }}-{{ ansible_distribution_version | lower | replace('/', '_') }}.yml"
        - "{{ ansible_distribution | lower }}-{{ ansible_distribution_release }}.yml"
        - "{{ ansible_distribution | lower }}-{{ ansible_distribution_major_version | lower | replace('/', '_') }}.yml"
        - "{{ ansible_distribution | lower }}.yml"
        - "{{ ansible_os_family | lower }}.yml"
        - defaults.yml
      paths:
        - ../vars
      skip: true

- name: Helm | Install PyYaml
  package:
    name: "{{ pyyaml_package }}"
    state: present
  when: pyyaml_package is defined

- name: Helm | Install PyYaml [flatcar]
  include_tasks: pyyaml-flatcar.yml
  when: ansible_os_family in ["Flatcar", "Flatcar Container Linux by Kinvolk"]

- name: Helm | Download helm
  include_tasks: "../../../download/tasks/download_file.yml"
  vars:
    download: "{{ download_defaults | combine(downloads.helm) }}"

- name: Helm | Copy helm binary from download dir
  copy:
    src: "{{ local_release_dir }}/helm-{{ helm_version }}/linux-{{ image_arch }}/helm"
    dest: "{{ bin_dir }}/helm"
    mode: "0755"
    remote_src: true

- name: Helm | Get helm completion
  command: "{{ bin_dir }}/helm completion bash"
  changed_when: false
  register: helm_completion
  check_mode: false

- name: Helm | Install helm completion
  copy:
    dest: /etc/bash_completion.d/helm.sh
    content: "{{ helm_completion.stdout }}"
    mode: "0755"
  become: true
