[ANSIBLE] Drop Helm v2 specific code from application role
[oom/offline-installer.git] / ansible / roles / application / tasks / install.yml
1 ---
2 # Make utility is missing in Ubuntu by default and it's necessary for building local helm repository
3 - name: Install build-essential
4   package:
5     name: build-essential
6     state: present
7   when: ansible_os_family == "Debian"
8
9 - include_tasks: setup-helm.yml
10
11 - name: Build local helm repository
12   make:
13     chdir: "{{ app_helm_charts_infra_directory }}"
14     params:
15       SKIP_LINT: "TRUE"
16     target: "{{ item }}"
17   loop: "{{ app_helm_build_targets }}"
18   environment:
19     PATH: "{{ helm_bin_dir }}:{{ ansible_env.PATH }}"
20
21 - name: Generate Helm application override file with custom role
22   include_role:
23     name: "{{ app_helm_override_role }}"
24   when: not app_skip_helm_override
25
26 # The generated override file is added to override list unless skipped.
27 - name: Add application helm override file to list of overrides unless skipped
28   set_fact:
29     helm_override_files: "{{ (helm_override_files | default([])) + [app_helm_override_file] }}"
30   when: not app_skip_helm_override
31
32 - name: Print final list of override files
33   debug:
34     var: helm_override_files
35
36 - name: "Ensure kubernetes namespace for {{ app_name }} exists"
37   command: kubectl create namespace {{ app_kubernetes_namespace }}
38   register: kubectl_out
39   changed_when: kubectl_out.rc == 0
40   failed_when: kubectl_out.rc == 1 and "AlreadyExists" not in kubectl_out.stderr
41
42 - name: "Helm Install application {{ app_name }}"
43   command: >
44           {{ helm_bin_dir }}/helm
45           {{ 'deploy' if deploy_plugin_presence.stat.exists else 'install --name' }}
46           {{ app_helm_release_name }}
47           {{ helm_repository_name }}/{{ app_helm_chart_name }}
48           --namespace {{ app_kubernetes_namespace }}
49           {{ helm_override_files | map('regex_replace', '^', '-f ') | join(' ') }}
50           {{ helm_extra_install_options | map(attribute='opt') | join(' ') }}
51   changed_when: true  # when executed its a changed type of action
52   register: helm_install
53   failed_when: "'FAILED' in (helm_install.stdout | upper()) or helm_install.rc != 0"