summaryrefslogtreecommitdiffstats
path: root/roles/openshift_metrics/tasks/generate_cassandra_pvcs.yaml
blob: 6aa48f9c39fb55d7be236a5324c0d47305df7a12 (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
---
- name: Check to see if PVC already exists
  oc_obj:
    state: list
    kind: pvc
    name: "{{ openshift_metrics_cassandra_pvc_prefix }}-{{ metrics_pvc_index }}"
    namespace: "{{ openshift_metrics_project }}"
  register: _metrics_pvc

# _metrics_pvc.results.results | length > 0 returns a false positive
# so we check for the presence of 'stderr' to determine if the obj exists or not
# the RC for existing and not existing is both 0
- when:
    - _metrics_pvc.results.stderr is defined
  block:
    - name: generate hawkular-cassandra persistent volume claims
      template:
        src: pvc.j2
        dest: "{{ mktemp.stdout }}/templates/hawkular-cassandra-pvc{{ metrics_pvc_index }}.yaml"
      vars:
        obj_name: "{{ openshift_metrics_cassandra_pvc_prefix }}-{{ metrics_pvc_index }}"
        labels:
          metrics-infra: hawkular-cassandra
        access_modes: "{{ openshift_metrics_cassandra_pvc_access | list }}"
        size: "{{ openshift_metrics_cassandra_pvc_size }}"
        pv_selector: "{{ openshift_metrics_cassandra_pv_selector }}"
        storage_class_name: "{{ openshift_metrics_cassanda_pvc_storage_class_name | default('', true) }}"
      when:
        - openshift_metrics_cassandra_storage_type != 'emptydir'
        - openshift_metrics_cassandra_storage_type != 'dynamic'
      changed_when: false

    - name: generate hawkular-cassandra persistent volume claims (dynamic)
      template:
        src: pvc.j2
        dest: "{{ mktemp.stdout }}/templates/hawkular-cassandra-pvc{{ metrics_pvc_index }}.yaml"
      vars:
        obj_name: "{{ openshift_metrics_cassandra_pvc_prefix }}-{{ metrics_pvc_index }}"
        labels:
          metrics-infra: hawkular-cassandra
        access_modes: "{{ openshift_metrics_cassandra_pvc_access | list }}"
        size: "{{ openshift_metrics_cassandra_pvc_size }}"
        pv_selector: "{{ openshift_metrics_cassandra_pv_selector }}"
        storage_class_name: "{{ openshift_metrics_cassanda_pvc_storage_class_name | default('', true) }}"
      when: openshift_metrics_cassandra_storage_type == 'dynamic'
      changed_when: false