Merge "[PMS] Persistent storage of policies and type definitions"
authorSylvain Desbureaux <sylvain.desbureaux@orange.com>
Tue, 15 Jun 2021 14:59:05 +0000 (14:59 +0000)
committerGerrit Code Review <gerrit@onap.org>
Tue, 15 Jun 2021 14:59:05 +0000 (14:59 +0000)
kubernetes/a1policymanagement/templates/pv.yaml
kubernetes/a1policymanagement/templates/pvc.yaml [deleted file]
kubernetes/a1policymanagement/templates/statefulset.yaml [moved from kubernetes/a1policymanagement/templates/deployment.yaml with 92% similarity]
kubernetes/a1policymanagement/values.yaml

index 904d863..0a3cbde 100644 (file)
 ################################################################################
 */}}
 
-{{- if and .Values.persistence.enabled (not .Values.persistence.existingClaim) -}}
-{{- if not .Values.persistence.storageClass -}}
-kind: PersistentVolume
-apiVersion: v1
-metadata:
-  name: {{ include "common.fullname" . }}-data
-  namespace: {{ include "common.namespace" . }}
-  labels:
-    app: {{ include "common.name" . }}
-    chart: "{{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}"
-    release: "{{ include "common.release" . }}"
-    heritage: "{{ .Release.Service }}"
-    name: {{ include "common.fullname" . }}
-spec:
-  capacity:
-    storage: {{ .Values.persistence.size}}
-  accessModes:
-    - {{ .Values.persistence.accessMode }}
-  persistentVolumeReclaimPolicy: {{ .Values.persistence.volumeReclaimPolicy }}
-  storageClassName: "{{ include "common.fullname" . }}-data"
-  hostPath:
-    path: {{ .Values.persistence.mountPath }}/{{ include "common.release" . }}/{{ .Values.persistence.mountSubPath }}/app
-{{- end -}}
-{{- end -}}
+
+{{ include "common.replicaPV" . }}
diff --git a/kubernetes/a1policymanagement/templates/pvc.yaml b/kubernetes/a1policymanagement/templates/pvc.yaml
deleted file mode 100644 (file)
index 4183edf..0000000
+++ /dev/null
@@ -1,41 +0,0 @@
-{{/*
-################################################################################
-#   Copyright (c) 2021 Nordix Foundation.                                      #
-#                                                                              #
-#   Licensed under the Apache License, Version 2.0 (the "License");            #
-#   you may not use this file except in compliance with the License.           #
-#   You may obtain a copy of the License at                                    #
-#                                                                              #
-#       http://www.apache.org/licenses/LICENSE-2.0                             #
-#                                                                              #
-#   Unless required by applicable law or agreed to in writing, software        #
-#   distributed under the License is distributed on an "AS IS" BASIS,          #
-#   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.   #
-#   See the License for the specific language governing permissions and        #
-#   limitations under the License.                                             #
-################################################################################
-*/}}
-
-{{- if and .Values.persistence.enabled (not .Values.persistence.existingClaim) -}}
-kind: PersistentVolumeClaim
-apiVersion: v1
-metadata:
-  name: {{ include "common.fullname" . }}
-  namespace: {{ include "common.namespace" . }}
-  labels:
-    app: {{ include "common.name" . }}
-    chart: "{{ .Chart.Name }}-{{ .Chart.Version }}"
-    release: "{{ include "common.release" . }}"
-    heritage: "{{ .Release.Service }}"
-  {{- if .Values.persistence.annotations }}
-  annotations:
-{{ .Values.persistence.annotations | indent 4 }}
-  {{- end }}
-spec:
-  accessModes:
-    - {{ .Values.persistence.accessMode }}
-  resources:
-    requests:
-      storage: {{ .Values.persistence.size }}
-  storageClassName: {{ include "common.fullname" . }}-data
-{{- end -}}
 ################################################################################
 */}}
 
-kind: Deployment
+kind: StatefulSet
 apiVersion: apps/v1
-metadata:
-  name: {{ include "common.fullname" . }}
-  namespace: {{ include "common.namespace" . }}
-  labels:
-    app: {{ include "common.name" . }}
-    chart: "{{ .Chart.Name }}-{{ .Chart.Version }}"
-    release: "{{ include "common.release" . }}"
-    heritage: "{{ .Release.Service }}"
+metadata: {{- include "common.resourceMetadata" . | nindent 2 }}
 spec:
+  serviceName: {{ include "common.servicename" . }}
   replicas: {{ index .Values.replicaCount }}
   selector: {{- include "common.selectors" . | nindent 4 }}
   template:
@@ -108,8 +102,8 @@ spec:
           subPath: application_configuration.json
         - name: config
           mountPath: /opt/app/policy-agent/config/application.yaml
-          subPath: application.yaml   
-        - name: vardata
+          subPath: application.yaml
+        - name: {{ include "common.fullname" . }}
           mountPath: "/var/policy-management-service/database"
         resources: {{ include "common.resources" . | nindent 10 }}
       volumes: {{ include "common.certInitializer.volumes" . | nindent 8 }}
@@ -123,6 +117,10 @@ spec:
         - name: config
           emptyDir:
             medium: Memory
-        - name: vardata
-          persistentVolumeClaim:
-            claimName: {{ include "common.fullname" . }}
+{{- if not .Values.persistence.enabled }}
+        - name: {{ include "common.fullname" . }}
+          emptyDir: {}
+{{- else }}
+  volumeClaimTemplates:
+    - {{include "common.PVCTemplate" . | indent 6 | trim }}
+{{- end }}
index 08590d8..4768349 100644 (file)
@@ -20,7 +20,8 @@
 
 global:
   nodePortPrefix: 302
-
+  persistence: {}
+   
 secrets:
   - uid: controller-secret
     type: basicAuth