vvp -- VNF Validation Platform
[oom.git] / kubernetes / aaf / templates / pvc.yaml
1 {{/*
2 # Copyright © 2017 Amdocs, Bell Canada
3 #
4 # Licensed under the Apache License, Version 2.0 (the "License");
5 # you may not use this file except in compliance with the License.
6 # You may obtain a copy of the License at
7 #
8 #       http://www.apache.org/licenses/LICENSE-2.0
9 #
10 # Unless required by applicable law or agreed to in writing, software
11 # distributed under the License is distributed on an "AS IS" BASIS,
12 # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 # See the License for the specific language governing permissions and
14 # limitations under the License.
15 */}}
16
17 {{- if and .Values.global.persistence.enabled (not .Values.persistence.config.existingClaim) }}
18 kind: PersistentVolumeClaim
19 apiVersion: v1
20 metadata:
21   name: {{ .Release.Name }}-config
22   namespace: {{ include "common.namespace" . }}
23   labels:
24     app: {{ include "common.name" . }}-config
25     chart: "{{ .Chart.Name }}-{{ .Chart.Version }}"
26     release: "{{ .Release.Name }}"
27     heritage: "{{ .Release.Service }}"
28 {{- if .Values.persistence.config.annotations }}
29   annotations:
30 {{ toYaml .Values.persistence.config.annotations | indent 4 }}
31 {{- end }}
32 spec:
33   selector:
34     matchLabels:
35       app: {{ include "common.name" . }}-config
36   accessModes:
37     - {{ .Values.persistence.config.accessMode }}
38   resources:
39     requests:
40       storage: {{ .Values.persistence.config.size }}
41 {{- if .Values.persistence.config.storageClass }}
42 {{- if (eq "-" .Values.persistence.config.storageClass) }}
43   storageClassName: ""
44 {{- else }}
45   storageClassName: "{{ .Values.persistence.config.storageClass }}"
46 {{- end }}
47 {{- end }}
48 {{- end }}
49 ---
50 {{- if and .Values.global.persistence.enabled (not .Values.persistence.logs.existingClaim) }}
51 kind: PersistentVolumeClaim
52 apiVersion: v1
53 metadata:
54   name: {{ .Release.Name }}-logs
55   namespace: {{ include "common.namespace" . }}
56   labels:
57     app: {{ include "common.name" . }}-logs
58     chart: "{{ .Chart.Name }}-{{ .Chart.Version }}"
59     release: "{{ .Release.Name }}"
60     heritage: "{{ .Release.Service }}"
61 {{- if .Values.persistence.logs.annotations }}
62   annotations:
63 {{ toYaml .Values.persistence.logs.annotations | indent 4 }}
64 {{- end }}
65 spec:
66   selector:
67     matchLabels:
68       app: {{ include "common.name" . }}-logs
69   accessModes:
70     - {{ .Values.persistence.logs.accessMode }}
71   resources:
72     requests:
73       storage: {{ .Values.persistence.logs.size }}
74 {{- if .Values.persistence.logs.storageClass }}
75 {{- if (eq "-" .Values.persistence.logs.storageClass) }}
76   storageClassName: ""
77 {{- else }}
78   storageClassName: "{{ .Values.persistence.logs.storageClass }}"
79 {{- end }}
80 {{- end }}
81 {{- end -}}