Run all components in one namespace
[oom.git] / kubernetes / policy / templates / dep-drools.yaml
index 101066f..ef9636c 100644 (file)
@@ -1,10 +1,11 @@
+#{{ if not .Values.disablePolicyDrools }}
 apiVersion: extensions/v1beta1
 kind: Deployment
 metadata:
-  name: drools
-  namespace: {{ .Values.NS }}
+  name: policy-drools
+  namespace: "{{ .Values.nsPrefix }}"
 spec:
-  replicas: 1
+  replicas: {{ .Values.droolsReplicas }}
   selector:
     matchLabels:
       app: drools
@@ -12,50 +13,35 @@ spec:
     metadata:
       labels:
         app: drools
-      name: drools
-      annotations:
-        pod.beta.kubernetes.io/init-containers: '[
-          {
-              "args": [
-                  "--container-name",
-                  "mariadb",
-                  "--container-name",
-                  "nexus",
-                  "--container-name",
-                  "pap",
-                  "--container-name",
-                  "pdp",
-                  "--container-name",
-                  "pypdp",
-                  "--container-name",
-                  "brmsgw"
-              ],
-              "command": [
-                  "/root/ready.py"
-              ],
-              "env": [
-                  {
-                      "name": "NAMESPACE",
-                      "valueFrom": {
-                          "fieldRef": {
-                              "apiVersion": "v1",
-                              "fieldPath": "metadata.namespace"
-                          }
-                      }
-                  }
-              ],
-              "image": "{{ .Values.image.readiness }}",
-              "imagePullPolicy": "{{ .Values.pullPolicy }}",
-              "name": "drools-readiness"
-          }
-          ]'
+      name: policy-drools
     spec:
+      initContainers:
+      - command:
+        - /root/ready.py
+        args:
+        - --container-name
+        - mariadb
+        - --container-name
+        - nexus
+        env:
+        - name: NAMESPACE
+          valueFrom:
+            fieldRef:
+              apiVersion: v1
+              fieldPath: metadata.namespace
+        image: "{{ .Values.image.readiness }}:{{ .Values.image.readinessVersion }}"
+        imagePullPolicy: {{ .Values.pullPolicy }}
+        name: drools-readiness
+      hostAliases:
+      - ip: "{{ .Values.aaiServiceClusterIp }}"
+        hostnames:
+        - "aai.api.simpledemo.openecomp.org"
       containers:
       - command:
         - /bin/bash
         - -c
         - ./do-start.sh
-        image: {{ .Values.image.policyDrools }}
+        image: "{{ .Values.image.policyDrools }}:{{ .Values.image.policyDroolsVersion }}"
         imagePullPolicy: {{ .Values.pullPolicy }}
         name: drools
         ports:
@@ -66,16 +52,87 @@ spec:
           initialDelaySeconds: 5
           periodSeconds: 10
         volumeMounts:
-        - mountPath: /tmp/policy-install/config
-          name: drools
+        - mountPath: /etc/localtime
+          name: localtime
+          readOnly: true
+        - mountPath: /tmp/policy-install/config/policy-keystore
+          name: drools-secret
+          subPath: policy-keystore
+        - mountPath: /tmp/policy-install/config/feature-healthcheck.conf
+          name: drools-secret
+          subPath: feature-healthcheck.conf
+        - mountPath: /tmp/policy-install/config/base.conf
+          name: drools-config
+          subPath: base.conf
+        - mountPath: /tmp/policy-install/config/policy-management.conf
+          name: drools-config
+          subPath: policy-management.conf
+        - mountPath: /tmp/policy-install/config/drools-tweaks.sh
+          name: drools-config
+          subPath: drools-tweaks.sh
         - mountPath: /usr/share/maven/conf/settings.xml
           name: drools-settingsxml
+          subPath: settings.xml
+        - mountPath: /var/log/onap
+          name: policy-logs
+        - mountPath: /tmp/logback.xml
+          name: policy-logback
+          subPath: logback.xml
+        lifecycle:
+          postStart:
+            exec:
+              command: ["/bin/sh", "-c", "export LOG=wait_logback.log; touch $LOG; export SRC=/tmp/logback.xml; export DST=/opt/app/policy/config/; while [ ! -e $DST ]; do echo 'Waiting for $DST...' >> $LOG; sleep 5; done; sleep 2; /bin/cp -f $SRC $DST; echo 'Done' >> $LOG"]
+      - image: {{ .Values.image.filebeat }}
+        imagePullPolicy: {{ .Values.pullPolicy }}
+        name: filebeat-onap
+        volumeMounts:
+        - mountPath: /usr/share/filebeat/filebeat.yml
+          name: filebeat-conf
+          subPath: filebeat.yml
+        - mountPath: /var/log/onap
+          name: policy-logs
+        - mountPath: /usr/share/filebeat/data
+          name: policy-data-filebeat
       volumes:
-        - name: drools-settingsxml
-          hostPath:
-            path:  /dockerdata-nfs/onap/policy/drools/settings.xml
-        - name: drools
+        - name: localtime
           hostPath:
-            path:  /dockerdata-nfs/onap/policy/opt/policy/config/drools/
+            path: /etc/localtime
+        - name: filebeat-conf
+          configMap:
+            name: policy-filebeat-configmap
+        - name: policy-logs
+          emptyDir: {}
+        - name: policy-data-filebeat
+          emptyDir: {}
+        - name: policy-logback
+          configMap:
+            name: policy-drools-log-configmap
+        - name: drools-settingsxml
+          configMap:
+            name: policy-dep-drools-settings-configmap
+        - name: drools-config
+          configMap:
+            name: policy-dep-drools-configmap
+            items:
+            - key: base.conf
+              path: base.conf
+              mode: 0755
+            - key: policy-management.conf
+              path: policy-management.conf
+              mode: 0755
+            - key: drools-tweaks.sh
+              path: drools-tweaks.sh
+              mode: 0755
+        - name: drools-secret
+          secret:
+            secretName: policy-dep-drools-secret
+            items:
+            - key: policy-keystore
+              path: policy-keystore
+              mode: 0644
+            - key: feature-healthcheck.conf
+              path: feature-healthcheck.conf
+              mode: 0644
       imagePullSecrets:
-      - name: onap-docker-registry-key
+      - name: "{{ .Values.nsPrefix }}-docker-registry-key"
+#{{ end }}