summaryrefslogtreecommitdiffstats
path: root/roles/openshift_metrics/tasks/install_cassandra.yaml
blob: e0b37ac2673f7c590f8bdb36c82f50a78c64e4f4 (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
---
- name: Ensure that Cassandra has nodes to run on
  fail:
    msg: |-
      No schedulable nodes found matching node selector for cassandra - '{{ openshift_metrics_cassandra_nodeselector }}'
  when:
  - openshift_schedulable_node_labels | lib_utils_oo_has_no_matching_selector(openshift_metrics_cassandra_nodeselector)

- shell: >
    {{ openshift_client_binary }} -n {{ openshift_metrics_project | quote }}
    --config={{ mktemp.stdout }}/admin.kubeconfig
    get rc hawkular-cassandra-{{node}} -o jsonpath='{.spec.replicas}' || echo 0
  vars:
    node: "{{ item }}"
  register: cassandra_replica_count
  with_sequence: count={{ openshift_metrics_cassandra_replicas }}
  changed_when: false
  failed_when: false

- name: generate hawkular-cassandra replication controllers
  template:
    src: hawkular_cassandra_rc.j2
    dest: "{{ mktemp.stdout }}/templates/hawkular-cassandra-rc{{ item }}.yaml"
  vars:
    node: "{{ item }}"
    master: "{{ (item == '1')|string|lower }}"
    replica_count: "{{cassandra_replica_count.results[item|int - 1].stdout}}"
    node_selector: "{{openshift_metrics_cassandra_nodeselector | default('') }}"
  with_sequence: count={{ openshift_metrics_cassandra_replicas }}
  changed_when: false

- set_fact: openshift_metrics_cassandra_pvc_prefix="hawkular-metrics"
  when: "not openshift_metrics_cassandra_pvc_prefix or openshift_metrics_cassandra_pvc_prefix == ''"

- include_tasks: generate_cassandra_pvcs.yaml
  with_sequence: count={{ openshift_metrics_cassandra_replicas }}
  loop_control:
    loop_var: metrics_pvc_index