summaryrefslogtreecommitdiffstats
path: root/roles/openshift_metrics/tasks/install_metrics.yaml
blob: fdf4ae57fb06790147fbb3435ec78acf6e89fb20 (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
79
80
81
82
83
84
85
86
87
88
89
90
---
- include: pre_install.yaml

- name: Install Metrics
  include: "{{ role_path }}/tasks/install_{{ include_file }}.yaml"
  with_items:
    - support
    - heapster
    - hawkular
    - cassandra
  loop_control:
    loop_var: include_file
  when: not openshift_metrics_heapster_standalone | bool

- name: Install Heapster Standalone
  include: install_heapster.yaml
  when: openshift_metrics_heapster_standalone | bool

- name: Install Hawkular OpenShift Agent (HOSA)
  include: install_hosa.yaml
  when: openshift_metrics_install_hawkular_agent | default(false) | bool

- find:
    paths: "{{ mktemp.stdout }}/templates"
    patterns: "^(?!metrics-hawkular-openshift-agent).*.yaml"
    use_regex: true
  register: object_def_files
  changed_when: no

- slurp:
    src: "{{item.path}}"
  register: object_defs
  with_items: "{{object_def_files.files}}"
  changed_when: no

- name: Create objects
  include: oc_apply.yaml
  vars:
    kubeconfig: "{{ mktemp.stdout }}/admin.kubeconfig"
    namespace: "{{ openshift_metrics_project }}"
    file_name: "{{ item.source }}"
    file_content: "{{ item.content | b64decode | from_yaml }}"
  with_items: "{{ object_defs.results }}"

- find:
    paths: "{{ mktemp.stdout }}/templates"
    patterns: "^metrics-hawkular-openshift-agent.*.yaml"
    use_regex: true
  register: hawkular_agent_object_def_files
  when: openshift_metrics_install_hawkular_agent | bool
  changed_when: no

- slurp:
    src: "{{item.path}}"
  register: hawkular_agent_object_defs
  with_items: "{{ hawkular_agent_object_def_files.files }}"
  when: openshift_metrics_install_hawkular_agent | bool
  changed_when: no

- name: Create Hawkular Agent objects
  include: oc_apply.yaml
  vars:
    kubeconfig: "{{ mktemp.stdout }}/admin.kubeconfig"
    namespace: "{{ openshift_metrics_hawkular_agent_namespace }}"
    file_name: "{{ item.source }}"
    file_content: "{{ item.content | b64decode | from_yaml }}"
  with_items: "{{ hawkular_agent_object_defs.results }}"
  when: openshift_metrics_install_hawkular_agent | bool

- include: update_master_config.yaml

- command: >
    {{openshift.common.client_binary}}
    --config={{mktemp.stdout}}/admin.kubeconfig
    get rc
    -l metrics-infra
    -o name
    -n {{openshift_metrics_project}}
  register: existing_metrics_rc
  changed_when: no

- name: Scaling down cluster to recognize changes
  include: stop_metrics.yaml
  when: existing_metrics_rc.stdout_lines | length > 0

- name: Scaling up cluster
  include: start_metrics.yaml
  tags: openshift_metrics_start_cluster
  when:
    - openshift_metrics_start_cluster | default(true) | bool