summaryrefslogtreecommitdiffstats
path: root/roles/ands_kaas/tasks/do_project.yml
blob: f5b32764d5987392bfaf7ac53df110ba9b652bf9 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
---
- name: Ensure OpenShift template directory exists
  file: path="{{ kaas_template_path }}" state="directory" mode=0755 owner=root group=root

- name: Configure KaaS volumes
  include_tasks: volume.yml
  run_once: true
#  delegate_to: "{{ groups.masters[0] }}"
  with_dict: "{{ kaas_project_volumes }}"
  loop_control:
    loop_var: osv
  vars:
    vt_query: "[*].volumes.{{osv.value.volume}}.type"
    voltype: "{{ (kaas_storage_domains | json_query(vt_query)) }}"
    mp_query: "[*].volumes.{{osv.value.volume}}.mount"
    mntpath: "{{ (kaas_storage_domains | json_query(mp_query)) }}"
    rp_query: "[*].volumes.{{osv.value.volume}}.path"
    realpath: "{{ (kaas_storage_domains | json_query(rp_query)) }}"
    osvpath: "{{ osv.value.path | default('') }}"
    prefix: "{{ ( osvpath[:1] == '/' ) | ternary('', '/' ~ kaas_project ~ '/') }}"
    path: "{{ mntpath[0] ~ prefix ~ osvpath }}"
    hostpath: "{{ realpath[0] is defined | ternary((realpath[0] | default('')) ~ prefix ~ osvpath, '') }}"
    name: "{{osv.key}}"
    volume: "{{osv.value}}"
  when: ( mntpath | length ) > 0

- name: Check if static configuration exists
  local_action: stat path="{{ kaas_project_path }}/files/"
  register: result

- name: Search static configuration
  include_tasks: search.yml
  when: result.stat.exists
 
- name: Configure KaaS files
  include_tasks: file.yml
  run_once: true
#  delegate_to: "{{ groups.masters[0] }}"
  with_items: "{{ kaas_project_config.files | default(kaas_openshift_files) | default([]) }}"
  loop_control:
    loop_var: file
  vars:
    osv: "{{ kaas_project_volumes[file.osv] }}"
    vt_query: "[*].volumes.{{osv.volume}}.type"
    voltype: "{{ (kaas_storage_domains | json_query(vt_query)) }}"
    mp_query: "[*].volumes.{{osv.volume}}.mount"
    mntpath: "{{ (kaas_storage_domains | json_query(mp_query)) }}"
    rp_query: "[*].volumes.{{osv.volume}}.path"
    realpath: "{{ (kaas_storage_domains | json_query(rp_query)) }}"
    pvar: "kaas_{{ file.osv }}_path"
    path: "{{ hostvars[inventory_hostname][pvar] }}/{{ file.path }}"
    hvar: "kaas_{{ file.osv }}_hostpath"
    hostpath: "{{ hostvars[inventory_hostname][hvar] }}/{{ file.path }}"
  when: file.osv in kaas_project_volumes

- name: Load OpenSSL keys
  include_tasks: keys.yml
#  delegate_to: "{{ groups.masters[0] }}"
  run_once: true
  with_dict: "{{ kaas_project_pods }}"
  loop_control:
    loop_var: pod

- name: "Run OC script"
  include_tasks: ocscript.yml
#  delegate_to: "{{ groups.masters[0] }}"
  run_once: true
  when: kaas_project_config.oc is defined

- name: "Configure all templates"
  include_tasks: templates.yml
#  delegate_to: "{{ groups.masters[0] }}"
  run_once: true
  when: 
  - kaas_project_config.oc is undefined
  
- name: Install Applications
  include_tasks: do_apps.yml