summaryrefslogtreecommitdiffstats
path: root/roles/ands_kaas/templates/00-gfs-volumes.yml.j2
blob: a69942dcbd62717a6b88252ada6710a5ea40ac87 (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
---
apiVersion: v1
kind: Template
metadata:
  name: {{ kaas_project }}-gfs-volumes
  annotations:
    descriptions: "{{ kaas_project }} glusterfs volumes"
objects:
{% for name, vol in kaas_project_volumes.iteritems() %}
{% set oc_name = vol.name | default(name) | regex_replace('_','-') %}
{% set cfgpath = vol.path | default("") %}
{% set path = cfgpath if cfgpath[:1] == "/" else "/" + kaas_project + "/" + cfgpath %}
{% if oc_name | regex_search("^" + kaas_project) %}
{%   set pvname = oc_name %}
{% else %}
{%   set pvname = (kaas_project + "-" + oc_name) | regex_replace('_','-') %}
{% endif %}
  - apiVersion: v1
    kind: PersistentVolume
    metadata:
      name: {{ pvname }}
    spec:
      persistentVolumeReclaimPolicy: Retain 
      glusterfs: 
        endpoints: {{ kaas_glusterfs_endpoints }}
        path: "{{ vol.volume }}{{path}}"
        readOnly: {{ not (vol.write | default(false)) }}
      accessModes:
        - {{ vol.access | default(vol.write | default(false) | ternary('ReadWriteMany', 'ReadOnlyMany')) }}
      capacity:
        storage: {{ vol.capacity | default(kaas_default_volume_capacity) }}
      claimRef:
        name: {{ oc_name }}
        namespace: {{ kaas_project }}
  - apiVersion: v1
    kind: PersistentVolumeClaim
    metadata:
      name: {{ oc_name }}
    spec:
      volumeName: {{ pvname }}
      accessModes:
        - {{ vol.access | default('ReadWriteMany') }}
      resources:
        requests:
          storage: {{ vol.capacity | default(kaas_default_volume_capacity) }}
{% endfor %}