summaryrefslogtreecommitdiffstats
path: root/roles/ands_kaas/tasks/project.yml
blob: 002596bf8d91485cb814991b623786465087faea (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
---
- name: Load global variables
  include_vars: "{{kaas_project_path}}/vars/globals.yml" 
  when: "'{{kaas_project_path}}/vars/globals.yml' | is_file"

- name: Load variables
  include_vars: dir="{{kaas_project_path}}/vars" name="kaas_project_config"
  when: "'{{kaas_project_path}}/vars' | is_dir"

- name: Ensure OpenShift template directory exists
  file: path="{{ kaas_template_path }}" state="directory" mode=0755 owner=root group=root

- name: Configure KaaS volumes
  include: volume.yml
  run_once: true
  delegate_to: "{{ groups.masters[0] }}"
  with_dict: "{{ kaas_project_config.volumes | default(kaas_openshift_volumes) }}"
  loop_control:
    loop_var: osv
  vars:
    query: "[*].volumes.{{osv.value.volume}}.mount"
    mntpath: "{{ (ands_storage_domains | json_query(query)) }}"
    path: "{{ mntpath[0] ~ (osv.value.path | default('')) }}"
    name: "{{osv.key}}"
    volume: "{{osv.value}}"
  when: ( mntpath | length ) > 0

- name: Copy static configuration
  include: sync_all.yml
  run_once: true
  delegate_to: "{{ groups.masters[0] }}"
  with_items: "{{ lookup('pipe', search).split('\n') }}"
  loop_control:
    loop_var: osv_path
  vars:
    search: "find {{ kaas_project_path }}/files/ -type d -mindepth 1 -maxdepth 1"
    osv: "{{ osv_path | basename }}"    
    pvar: "kaas_{{ osv }}_path"
    local_path: "{{ osv_path }}"
    remote_path: "{{ hostvars[inventory_hostname][pvar] }}"
  when:
    - osv in kaas_openshift_volumes
    - hostvars[inventory_hostname][pvar] is defined

- name: Configure KaaS files
  include: file.yml
  run_once: true
  delegate_to: "{{ groups.masters[0] }}"
  with_items: "{{ kaas_project_config.files | default(ands_openshift_files) }}"
  loop_control:
    loop_var: file
  vars:
    pvar: "kaas_{{ file.osv }}_path"
    path: "{{ hostvars[inventory_hostname][pvar] }}/{{ file.path }}"
  when: file.osv in ( kaas_project_config.volumes | default(kaas_openshift_volumes) )

- name: Load OpenSSL keys
  include: keys.yml
  delegate_to: "{{ groups.masters[0] }}"
  run_once: true
  with_dict: "{{ kaas_project_config.pods }}"
  loop_control:
    loop_var: pod

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

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