AAF OOM 2.1.20
[oom.git] / kubernetes / aaf / charts / aaf-hello / templates / deployment.yaml
index 9faa580..1e120bd 100644 (file)
 # 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: extensions/v1beta1
 kind: Deployment
 metadata:
   labels:
     app: {{ include "common.name" . }}
     chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
-    release: {{ .Release.Name }}
+    release: {{ include "common.release" . }}
     heritage: {{ .Release.Service }}
   name: {{ include "common.fullname" . }}
   namespace: {{ include "common.namespace" . }}
@@ -28,77 +27,87 @@ spec:
     metadata:
       labels:
         app: {{ include "common.name" . }}
-        release: {{ .Release.Name }}
+        release: {{ include "common.release" . }}
     spec:
+      volumes:
+        - name: localtime
+          hostPath:
+            path: /etc/localtime
+        - name: aaf-hello-vol
+      {{- if and .Values.persistence.enabled }}
+          persistentVolumeClaim:
+            claimName: {{ include "common.release" . }}-aaf-hello-pvc
+      {{- else }}
+          emptyDir: {}
+      {{- end }}
+      imagePullSecrets:
+      - name: "{{ include "common.namespace" . }}-docker-registry-key"
       initContainers:
+      - name: fix-permission
+        command: ["/bin/sh","-c","chmod -R 775 /opt/app/osaaf/local && chown -R 1000:1000 /opt/app/osaaf"]
+        image: "{{ .Values.global.busyboxRepository }}/{{ .Values.global.busyboxImage }}"
+        imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+        volumeMounts:
+        - mountPath: "/opt/app/osaaf/local"
+          name: aaf-hello-vol
       - name: {{ include "common.name" . }}-config-container
-        image: {{ .Values.global.repository }}/onap/aaf/aaf_agent:{{.Values.global.aaf.imageVersion}}
+        image: {{ .Values.global.repository }}/{{.Values.aaf_init.image}}
         imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+        command: ["bash","-c","cd /opt/app/aaf_config && bin/agent.sh"]
+#        command: ["bash","-c","cd /opt/app/aaf_config && echo Sleeping && sleep 480"]
+#        command: ["bash","-c","chown 1000:1000 /opt/app/osaaf && cd /opt/app/aaf_config && sleep 480"]
         volumeMounts:
         - mountPath: "/opt/app/osaaf/local"
           name: aaf-hello-vol
-        command: ["bash","-c","/opt/app/aaf_config/bin/pod_wait.sh config nc aaf-cm.{{.Release.Namespace}} 8150 remove && cd /opt/app/osaaf/local && /opt/app/aaf_config/bin/agent.sh"]
         env:
-          - name: aaf_env
-            value: "{{ .Values.global.aaf.aaf_env }}"
-          - name: cadi_latitude
-            value: "{{ .Values.global.aaf.cadi_latitude }}"
-          - name: cadi_longitude
-            value: "{{ .Values.global.aaf.cadi_longitude }}"
+          - name: APP_FQI
+            value: "{{ .Values.aaf_init.fqi }}"
           - name: aaf_locate_url
             value: "https://aaf-locate.{{ .Release.Namespace}}:{{.Values.global.aaf.locate.internal_port}}"
           - name: aaf_locator_container
             value: "oom"
-          - name: aaf_release
-            value: "{{ .Values.global.aaf.aaf_release }}"
           - name: aaf_locator_container_ns
             value: "{{ .Release.Namespace }}"
-          - name: aaf_locator_container
-            value: "oom"
-          - name: aaf_locator_container_ns
-            value: "{{ .Release.Namespace }}"
-          - name: aaf_locator_app_ns
-            value: "org.osaaf.aaf"
-          - name: "APP_FQDN"
-            value: "{{ .Values.global.aaf.hello.fqdn }}"
-          - name: "APP_FQI"
-            value: "aaf@aaf.osaaf.org"
+# This should the APP's FQDN to be put in Locator
+# This MUST match what is entered for AAF Certificate Artifacts
+          - name: aaf_locator_fqdn
+            value: "{{.Values.aaf_init.fqdn}}"
+# Hello specific.  Clients don't don't need this, unless Registering with AAF Locator
+# This should be the APP's PUBLIC FQDN, if applicable
+          - name: aaf_locator_public_fqdn
+            value: "{{.Values.aaf_init.locator_public_fqdn}}"
+          - name: LATITUDE
+            value: "{{ .Values.aaf_init.cadi_latitude }}"
+          - name: LONGITUDE
+            value: "{{ .Values.aaf_init.cadi_longitude }}"
+# Note: We want to put this in Secrets or at LEAST ConfigMaps
           - name: "DEPLOY_FQI"
             value: "deployer@people.osaaf.org"
+# Note: want to put this on Nodes, evenutally
           - name: "DEPLOY_PASSWORD"
             value: "demo123456!"
-# Hello specific.  Clients don't necessarily need this
-          - name: aaf_locator_public_fqdn
-            value: "{{.Values.global.aaf.public_fqdn}}"
-          - name: aaf_locator_name
-            value: "{{.Values.global.aaf.aaf_locator_name}}"
-          - name: aaf_locator_name_oom
-            value: "{{.Values.global.aaf.aaf_locator_name_oom}}"
-          - name: aaf_locator_fqdn_oom
-            value: "%N.%CNS"
+# CONTAINER Definition
       containers:
       - name: {{ include "common.name" . }}
-        command: ["/bin/bash","-c","cd /opt/app/aaf && exec bin/hello"]
-        image: {{ .Values.global.repository }}/onap/aaf/aaf_hello:{{.Values.global.aaf.imageVersion}}
+        command: ["bash","-c","cd /opt/app/aaf && if [ ! -d /opt/app/osaaf/etc ]; then cp -Rf etc logs /opt/app/osaaf; fi && exec bin/hello"]
+        image: {{ .Values.global.repository }}/{{.Values.service.image }}
         imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
         volumeMounts:
         - mountPath: "/opt/app/osaaf/local"
           name: aaf-hello-vol
-        - mountPath: "/opt/app/aaf/status"
-          name: aaf-status-vol
         - mountPath: /etc/localtime
           name: localtime
           readOnly: true
         {{- if eq .Values.liveness.enabled true }}
         livenessProbe:
           tcpSocket:
-            port: {{ .Values.service.internalPort }}
+            port: {{ .Values.service.port }}
           initialDelaySeconds: {{ .Values.liveness.initialDelaySeconds }}
           periodSeconds: {{ .Values.liveness.periodSeconds }}
         {{ end -}}
         readinessProbe:
           tcpSocket:
-            port: {{ .Values.service.internalPort }}
+            port: {{ .Values.service.port }}
           initialDelaySeconds: {{ .Values.readiness.initialDelaySeconds }}
           periodSeconds: {{ .Values.readiness.periodSeconds }}
         resources:
@@ -111,14 +120,3 @@ spec:
       affinity:
 {{ toYaml .Values.affinity | indent 10 }}
       {{- end }}
-      volumes:
-      - name: localtime
-        hostPath:
-          path: /etc/localtime
-      - name: aaf-status-vol
-        persistentVolumeClaim:
-          claimName: {{ .Release.Name }}-aaf-status-pvc
-      - name: aaf-hello-vol
-        emptyDir: {}
-      imagePullSecrets:
-      - name: "{{ include "common.namespace" . }}-docker-registry-key"