[DMAAP] Remove AAF dependency
[oom.git] / kubernetes / dmaap / components / dmaap-dr-node / templates / statefulset.yaml
index a508886..f4167af 100644 (file)
@@ -1,3 +1,4 @@
+{{/*
 # Copyright © 2017 Amdocs, Bell Canada
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # 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.
-apiVersion: apps/v1beta1
+*/}}
+apiVersion: apps/v1
 kind: StatefulSet
-metadata:
-  name: {{ include "common.fullname" . }}
-  namespace: {{ include "common.namespace" . }}
-  labels:
-    app: {{ include "common.name" . }}
-    chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
-    release: {{ .Release.Name }}
-    heritage: {{ .Release.Service }}
+metadata: {{- include "common.resourceMetadata" . | nindent 2 }}
 spec:
+  selector: {{- include "common.selectors" . | nindent 4 }}
+  serviceName: {{ include "common.servicename" . }}
   replicas: {{ .Values.replicaCount }}
-  serviceName: {{ .Values.config.dmaapDrNode.name }}
   template:
-    metadata:
-      labels:
-        app: {{ include "common.name" . }}
-        release: {{ .Release.Name }}
+    metadata: {{- include "common.templateMetadata" . | nindent 6 }}
     spec:
-      initContainers:
-        - name: {{ include "common.name" . }}-readiness
-          image: "{{ .Values.global.readinessRepository }}/{{ .Values.global.readinessImage }}"
-          imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
-          command:
-          - /root/ready.py
-          args:
-          - --container-name
-          - dmaap-dr-prov
-          env:
-          - name: NAMESPACE
-            valueFrom:
-              fieldRef:
-                apiVersion: v1
-                fieldPath: metadata.namespace
+      {{ include "common.podSecurityContext" . | indent 6 | trim}}
+      initContainers: {{ include "common.readinessCheck.waitFor" . | nindent 8 }}
         - name: {{ include "common.name" . }}-permission-fixer
-          image: "{{ .Values.global.busyBoxRepository }}/{{ .Values.global.busyBoxImage }}"
+          securityContext:
+            runAsUser: 0
+          image: {{ include "repositoryGenerator.image.busybox" . }}
           imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+          command: ["chown","-Rf","1000:1001", "/opt/app/"]
           volumeMounts:
-          - mountPath: {{ .Values.persistence.spoolPath }}
-            name: {{ include "common.fullname" . }}-spool-data-pvc
-          - mountPath: {{ .Values.persistence.eventLogsPath }}
-            name: {{ include "common.fullname" . }}-event-logs-pvc
-          command: ["chown","-Rf","1000:1001", "/opt/app/datartr"]
+            - name: {{ include "common.fullname" . }}-spool
+              mountPath: {{ .Values.persistence.spool.path }}
+            - name: {{ include "common.fullname" . }}-event-logs
+              mountPath: {{ .Values.persistence.event.path }}
       containers:
         - name: {{ include "common.name" . }}
-          image: "{{ include "common.repository" . }}/{{ .Values.image }}"
+          image: {{ include "repositoryGenerator.repository" . }}/{{ .Values.image }}
           imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
-          ports:
-          - containerPort: {{.Values.config.dmaapDrNode.externalPort}}
-          - containerPort: {{.Values.config.dmaapDrNode.externalPort2}}
+          ports: {{ include "common.containerPorts" . | nindent 12  }}
           {{- if eq .Values.liveness.enabled true }}
           livenessProbe:
             tcpSocket:
-              port: {{.Values.config.dmaapDrNode.internalPort}}
+              port: {{.Values.liveness.port}}
             initialDelaySeconds: {{ .Values.liveness.initialDelaySeconds }}
             periodSeconds: {{ .Values.liveness.periodSeconds }}
           {{ end -}}
           readinessProbe:
             tcpSocket:
-              port: {{.Values.config.dmaapDrNode.internalPort}}
+              port: {{.Values.readiness.port}}
             initialDelaySeconds: {{ .Values.readiness.initialDelaySeconds }}
             periodSeconds: {{ .Values.readiness.periodSeconds }}
           volumeMounts:
-          - mountPath: {{ .Values.persistence.spoolPath }}
-            name: {{ include "common.fullname" . }}-spool-data-pvc
-          - mountPath: {{ .Values.persistence.eventLogsPath }}
-            name: {{ include "common.fullname" . }}-event-logs-pvc
-          - mountPath: /etc/localtime
-            name: localtime
-            readOnly: false
-          - mountPath: /opt/app/datartr/etc/dedicatedFeed.json
-            name: {{ include "common.fullname" . }}-create-feed-config
-            subPath: dedicatedFeed.json
-          - mountPath: /opt/app/datartr/etc/createFeed.sh
-            name: {{ include "common.fullname" . }}-create-feed-config
-            subPath: createFeed.sh
-          - mountPath: /opt/app/datartr/etc/node.properties
-            name: {{ include "common.fullname" . }}-config
-            subPath: node.properties
-          - mountPath: /opt/app/datartr/etc/drNodeCadi.properties
-            name: {{ include "common.fullname" . }}-config
-            subPath: drNodeCadi.properties
-          lifecycle:
-            postStart:
-              exec:
-                command:
-                  - /opt/app/datartr/etc/createFeed.sh
+            - mountPath: {{ .Values.persistence.spool.path }}
+              name: {{ include "common.fullname" . }}-spool
+            - mountPath: {{ .Values.persistence.event.path }}
+              name: {{ include "common.fullname" . }}-event-logs
+            - mountPath: /etc/localtime
+              name: localtime
+              readOnly: false
+            - mountPath: /opt/app/datartr/etc/node.properties
+              name: {{ include "common.fullname" . }}-config
+              subPath: node.properties
+            - mountPath: /opt/app/datartr/etc/logback.xml
+              name: {{ include "common.fullname" . }}-log-conf
+              subPath: logback.xml
           resources:
-{{ include "common.resources" . | indent 12 }}
+{{ include "common.resources" . }}
         {{- if .Values.nodeSelector }}
-        nodeSelector:
-{{ toYaml .Values.nodeSelector | indent 10 }}
+        nodeSelector: {{ toYaml .Values.nodeSelector | nindent 10 }}
         {{- end -}}
         {{- if .Values.affinity }}
-        affinity:
-{{ toYaml .Values.affinity | indent 10 }}
+        affinity: {{ toYaml .Values.affinity | nindent 10 }}
         {{- end }}
-        # Filebeat sidecar container
-        - name: {{ include "common.name" . }}-filebeat-onap
-          image: "{{ .Values.global.loggingRepository }}/{{ .Values.global.loggingImage }}"
-          imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
-          volumeMounts:
-          - name: {{ include "common.fullname" . }}-filebeat-conf
-            mountPath: /usr/share/filebeat/filebeat.yml
-            subPath: filebeat.yml
-          - name: {{ include "common.fullname" . }}-data-filebeat
-            mountPath: /usr/share/filebeat/data
-          - name: {{ include "common.fullname" . }}-event-logs-pvc
-            mountPath: /var/log/onap/datarouter-node
       imagePullSecrets:
       - name: "{{ include "common.namespace" . }}-docker-registry-key"
+      serviceAccountName: {{ include "common.fullname" (dict "suffix" "read" "dot" . )}}
       volumes:
         - name: localtime
           hostPath:
             path: /etc/localtime
-        - name: {{ include "common.fullname" . }}-create-feed-config
-          configMap:
-            name: {{ include "common.fullname" . }}-create-feed-configmap
-            defaultMode: 0755
-            items:
-            - key: createFeed.sh
-              path: createFeed.sh
-            - key: dedicatedFeed.json
-              path: dedicatedFeed.json
         - name: {{ include "common.fullname" . }}-config
           configMap:
-            name: {{ include "common.fullname" . }}-configmap
+            name: {{ include "common.fullname" . }}-node-props
             items:
             - key: node.properties
               path: node.properties
-            - key: drNodeCadi.properties
-              path: drNodeCadi.properties
         - name: {{ include "common.fullname" . }}-log-conf
           configMap:
             name: {{ include "common.fullname" . }}-log
-        - name: {{ include "common.fullname" . }}-filebeat-conf
-          configMap:
-            name: {{ .Release.Name }}-dmaap-filebeat-configmap
-        - name: {{ include "common.fullname" . }}-data-filebeat
+      {{- if not .Values.persistence.enabled }}
+        - name:  {{ include "common.fullname" . }}-event-logs
           emptyDir: {}
-        - name:  {{ include "common.fullname" . }}-event-logs-pvc
+        - name: {{ include "common.fullname" . }}-spool
           emptyDir: {}
+      {{- end }}
+{{- if .Values.persistence.enabled }}
   volumeClaimTemplates:
-  - metadata:
-      name: {{ include "common.fullname" . }}-spool-data-pvc
-      labels:
-        name: {{ include "common.fullname" . }}
-    spec:
-      accessModes: [ {{ .Values.persistence.accessMode }} ]
-      storageClassName: {{ include "common.fullname" . }}-spool-data-stcl
-      resources:
-        requests:
-          storage: {{ .Values.persistence.spoolSize }}
-      selector:
-        matchLabels:
-          name: {{ include "common.fullname" . }}-spool-data-pv
-  - metadata:
-      name: {{ include "common.fullname" . }}-event-logs-pvc
-      labels:
-        name: {{ include "common.fullname" . }}
-    spec:
-      accessModes: [ {{ .Values.persistence.accessMode }} ]
-      storageClassName: {{ include "common.fullname" . }}-event-logs-stcl
-      resources:
-        requests:
-          storage: {{ .Values.persistence.eventLogSize }}
-      selector:
-        matchLabels:
-          name: {{ include "common.fullname" . }}-event-logs-pv
+  - {{ include "common.PVCTemplate" (dict "dot" . "suffix" "spool" "persistenceInfos" .Values.persistence.spool) | indent 4 | trim }}
+  - {{ include "common.PVCTemplate" (dict "dot" . "suffix" "event-logs" "persistenceInfos" .Values.persistence.event) | indent 4 | trim }}
+{{- end }}