# Copyright © 2017 Amdocs, Bell Canada
#
# 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.

apiVersion: extensions/v1beta1
kind: Deployment
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 }}
spec:
  replicas: {{ .Values.replicaCount }}
  selector:
    matchLabels:
      app: {{ include "common.name" . }}
  template:
    metadata:
      labels:
        app: {{ include "common.name" . }}
        release: {{ .Release.Name }}
      name: {{ include "common.name" . }}
      annotations:
        checksum/config: {{ include (print $.Template.BasePath "/configmap.yaml") . | sha256sum }}
        msb.onap.org/service-info: '[
          {
              "serviceName": "_aai-cloudInfrastructure",
              "version": "v11",
              "url": "/aai/v11/cloud-infrastructure",
              "protocol": "REST",
              "port": "8447",
              "enable_ssl": true,
              "lb_policy":"ip_hash",
              "visualRange": "1",
              "path": "/aai/v11/cloud-infrastructure"
          },
          {
              "serviceName": "_aai-cloudInfrastructure",
              "version": "v12",
              "url": "/aai/v12/cloud-infrastructure",
              "protocol": "REST",
              "port": "8447",
              "enable_ssl": true,
              "lb_policy":"ip_hash",
              "visualRange": "1",
              "path": "/aai/v12/cloud-infrastructure"
          },
          {
              "serviceName": "_aai-cloudInfrastructure",
              "version": "v13",
              "url": "/aai/v13/cloud-infrastructure",
              "protocol": "REST",
              "port": "8447",
              "enable_ssl": true,
              "lb_policy":"ip_hash",
              "visualRange": "1",
              "path": "/aai/v13/cloud-infrastructure"
          },
          {
              "serviceName": "_aai-business",
              "version": "v11",
              "url": "/aai/v11/business",
              "protocol": "REST",
              "port": "8447",
              "enable_ssl": true,
              "lb_policy":"ip_hash",
              "visualRange": "1",
              "path": "/aai/v11/business"
          },
          {
              "serviceName": "_aai-business",
              "version": "v12",
              "url": "/aai/v12/business",
              "protocol": "REST",
              "port": "8447",
              "enable_ssl": true,
              "lb_policy":"ip_hash",
              "visualRange": "1",
              "path": "/aai/v12/business"
          },
          {
              "serviceName": "_aai-business",
              "version": "v13",
              "url": "/aai/v13/business",
              "protocol": "REST",
              "port": "8447",
              "enable_ssl": true,
              "lb_policy":"ip_hash",
              "visualRange": "1",
              "path": "/aai/v13/business"
          },
          {
              "serviceName": "_aai-actions",
              "version": "v11",
              "url": "/aai/v11/actions",
              "protocol": "REST",
              "port": "8447",
              "enable_ssl": true,
              "lb_policy":"ip_hash",
              "visualRange": "1",
              "path": "/aai/v11/actions"
          },
          {
              "serviceName": "_aai-actions",
              "version": "v12",
              "url": "/aai/v12/actions",
              "protocol": "REST",
              "port": "8447",
              "enable_ssl": true,
              "lb_policy":"ip_hash",
              "visualRange": "1",
              "path": "/aai/v12/actions"
          },
          {
              "serviceName": "_aai-actions",
              "version": "v13",
              "url": "/aai/v13/actions",
              "protocol": "REST",
              "port": "8447",
              "enable_ssl": true,
              "lb_policy":"ip_hash",
              "visualRange": "1",
              "path": "/aai/v13/actions"
          },
          {
              "serviceName": "_aai-service-design-and-creation",
              "version": "v11",
              "url": "/aai/v11/service-design-and-creation",
              "protocol": "REST",
              "port": "8447",
              "enable_ssl": true,
              "lb_policy":"ip_hash",
              "visualRange": "1",
              "path": "/aai/v11/service-design-and-creation"
          },
          {
              "serviceName": "_aai-service-design-and-creation",
              "version": "v12",
              "url": "/aai/v12/service-design-and-creation",
              "protocol": "REST",
              "port": "8447",
              "enable_ssl": true,
              "lb_policy":"ip_hash",
              "visualRange": "1",
              "path": "/aai/v12/service-design-and-creation"
          },
          {
              "serviceName": "_aai-service-design-and-creation",
              "version": "v13",
              "url": "/aai/v13/service-design-and-creation",
              "protocol": "REST",
              "port": "8447",
              "enable_ssl": true,
              "lb_policy":"ip_hash",
              "visualRange": "1",
              "path": "/aai/v13/service-design-and-creation"
          },
          {
              "serviceName": "_aai-network",
              "version": "v11",
              "url": "/aai/v11/network",
              "protocol": "REST",
              "port": "8447",
              "enable_ssl": true,
              "lb_policy":"ip_hash",
              "visualRange": "1",
              "path": "/aai/v11/network"
          },
          {
              "serviceName": "_aai-network",
              "version": "v12",
              "url": "/aai/v12/network",
              "protocol": "REST",
              "port": "8447",
              "enable_ssl": true,
              "lb_policy":"ip_hash",
              "visualRange": "1",
              "path": "/aai/v12/network"
          },
          {
              "serviceName": "_aai-network",
              "version": "v13",
              "url": "/aai/v13/network",
              "protocol": "REST",
              "port": "8447",
              "enable_ssl": true,
              "lb_policy":"ip_hash",
              "visualRange": "1",
              "path": "/aai/v13/network"
          },
          {
              "serviceName": "_aai-externalSystem",
              "version": "v11",
              "url": "/aai/v11/external-system",
              "protocol": "REST",
              "port": "8447",
              "enable_ssl": true,
              "lb_policy":"ip_hash",
              "visualRange": "1",
              "path": "/aai/v11/external-system"
          },      
          {
              "serviceName": "_aai-externalSystem",
              "version": "v12",
              "url": "/aai/v12/external-system",
              "protocol": "REST",
              "port": "8447",
              "enable_ssl": true,
              "lb_policy":"ip_hash",
              "visualRange": "1",
              "path": "/aai/v12/external-system"
          },      
          {
              "serviceName": "_aai-externalSystem",
              "version": "v13",
              "url": "/aai/v13/external-system",
              "protocol": "REST",
              "port": "8447",
              "enable_ssl": true,
              "lb_policy":"ip_hash",
              "visualRange": "1",
              "path": "/aai/v13/external-system"
          },
          {
              "serviceName": "aai-cloudInfrastructure",
              "version": "v11",
              "url": "/aai/v11/cloud-infrastructure",
              "protocol": "REST",
              "port": "8447",
              "enable_ssl": true,
              "lb_policy":"ip_hash",
              "visualRange": "1"
          },
          {
              "serviceName": "aai-cloudInfrastructure",
              "version": "v12",
              "url": "/aai/v12/cloud-infrastructure",
              "protocol": "REST",
              "port": "8447",
              "enable_ssl": true,
              "lb_policy":"ip_hash",
              "visualRange": "1"
          },
          {
              "serviceName": "aai-cloudInfrastructure",
              "version": "v13",
              "url": "/aai/v13/cloud-infrastructure",
              "protocol": "REST",
              "port": "8447",
              "enable_ssl": true,
              "lb_policy":"ip_hash",
              "visualRange": "1"
          },
          {
              "serviceName": "aai-business",
              "version": "v11",
              "url": "/aai/v11/business",
              "protocol": "REST",
              "port": "8447",
              "enable_ssl": true,
              "lb_policy":"ip_hash",
              "visualRange": "1"
          },
          {
              "serviceName": "aai-business",
              "version": "v12",
              "url": "/aai/v12/business",
              "protocol": "REST",
              "port": "8447",
              "enable_ssl": true,
              "lb_policy":"ip_hash",
              "visualRange": "1"
          },
          {
              "serviceName": "aai-business",
              "version": "v13",
              "url": "/aai/v13/business",
              "protocol": "REST",
              "port": "8447",
              "enable_ssl": true,
              "lb_policy":"ip_hash",
              "visualRange": "1"
          },
          {
              "serviceName": "aai-actions",
              "version": "v11",
              "url": "/aai/v11/actions",
              "protocol": "REST",
              "port": "8447",
              "enable_ssl": true,
              "lb_policy":"ip_hash",
              "visualRange": "1"
          },
          {
              "serviceName": "aai-actions",
              "version": "v12",
              "url": "/aai/v12/actions",
              "protocol": "REST",
              "port": "8447",
              "enable_ssl": true,
              "lb_policy":"ip_hash",
              "visualRange": "1"
          },
          {
              "serviceName": "aai-actions",
              "version": "v13",
              "url": "/aai/v13/actions",
              "protocol": "REST",
              "port": "8447",
              "enable_ssl": true,
              "lb_policy":"ip_hash",
              "visualRange": "1"
          },
          {
              "serviceName": "aai-service-design-and-creation",
              "version": "v11",
              "url": "/aai/v11/service-design-and-creation",
              "protocol": "REST",
              "port": "8447",
              "enable_ssl": true,
              "lb_policy":"ip_hash",
              "visualRange": "1"
          },
          {
              "serviceName": "aai-service-design-and-creation",
              "version": "v12",
              "url": "/aai/v12/service-design-and-creation",
              "protocol": "REST",
              "port": "8447",
              "enable_ssl": true,
              "lb_policy":"ip_hash",
              "visualRange": "1"
          },
          {
              "serviceName": "aai-service-design-and-creation",
              "version": "v13",
              "url": "/aai/v13/service-design-and-creation",
              "protocol": "REST",
              "port": "8447",
              "enable_ssl": true,
              "lb_policy":"ip_hash",
              "visualRange": "1"
          },
          {
              "serviceName": "aai-network",
              "version": "v11",
              "url": "/aai/v11/network",
              "protocol": "REST",
              "port": "8447",
              "enable_ssl": true,
              "lb_policy":"ip_hash",
              "visualRange": "1"
          },
          {
              "serviceName": "aai-network",
              "version": "v12",
              "url": "/aai/v12/network",
              "protocol": "REST",
              "port": "8447",
              "enable_ssl": true,
              "lb_policy":"ip_hash",
              "visualRange": "1"
          },
          {
              "serviceName": "aai-network",
              "version": "v13",
              "url": "/aai/v13/network",
              "protocol": "REST",
              "port": "8447",
              "enable_ssl": true,
              "lb_policy":"ip_hash",
              "visualRange": "1"
          },
          {
              "serviceName": "aai-externalSystem",
              "version": "v11",
              "url": "/aai/v11/external-system",
              "protocol": "REST",
              "port": "8447",
              "enable_ssl": true,
              "lb_policy":"ip_hash",
              "visualRange": "1"
          },      
          {
              "serviceName": "aai-externalSystem",
              "version": "v12",
              "url": "/aai/v12/external-system",
              "protocol": "REST",
              "port": "8447",
              "enable_ssl": true,
              "lb_policy":"ip_hash",
              "visualRange": "1"
          },      
          {
              "serviceName": "aai-externalSystem",
              "version": "v13",
              "url": "/aai/v13/external-system",
              "protocol": "REST",
              "port": "8447",
              "enable_ssl": true,
              "lb_policy":"ip_hash",
              "visualRange": "1"
          }
          ]'
    spec:
      hostname: aai-resources
      initContainers:
      - command:
        - /root/ready.py
        args:
        - --container-name
        - aai-cassandra
        env:
        - name: NAMESPACE
          valueFrom:
            fieldRef:
              apiVersion: v1
              fieldPath: metadata.namespace
        image: "{{ .Values.global.readinessRepository }}/{{ .Values.global.readinessImage }}"
        imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
        name: {{ include "common.name" . }}-readiness
      containers:
      - name: {{ include "common.name" . }}
        image: "{{ include "common.repository" . }}/{{ .Values.image }}"
        imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
        env:
        - name: LOCAL_USER_ID
          value: {{ .Values.config.userId | quote }}
        - name: LOCAL_GROUP_ID
          value: {{ .Values.config.groupId | quote }}
        volumeMounts:
        - mountPath: /etc/localtime
          name: localtime
          readOnly: true
        - mountPath: /opt/app/aai-resources/resources/etc/appprops/janusgraph-realtime.properties
          name: {{ include "common.fullname" . }}-db-real-conf
          subPath: janusgraph-realtime.properties
        - mountPath: /opt/app/aai-resources/resources/etc/appprops/janusgraph-cached.properties
          name: {{ include "common.fullname" . }}-db-cached-conf
          subPath: janusgraph-cached.properties
        - mountPath: /opt/app/aai-resources/resources/etc/appprops/aaiconfig.properties
          name: {{ include "common.fullname" . }}-aaiconfig-conf
          subPath: aaiconfig.properties
        - mountPath: /opt/aai/logroot/AAI-RES
          name: {{ include "common.fullname" . }}-logs
        - mountPath: /opt/app/aai-resources/resources/logback.xml
          name: {{ include "common.fullname" . }}-log-conf
          subPath: logback.xml
        - mountPath: /opt/app/aai-resources/resources/localhost-access-logback.xml
          name: {{ include "common.fullname" . }}-localhost-access-log-conf
          subPath: localhost-access-logback.xml
        - mountPath: /opt/app/aai-resources/resources/application.properties
          name: {{ include "common.fullname" . }}-springapp-conf
          subPath: application.properties
        - mountPath: /opt/app/aai-resources/resources/etc/auth/aai_keystore
          name: {{ include "common.fullname" . }}-auth-sec
          subPath: aai_keystore
        ports:
        - containerPort: {{ .Values.service.internalPort }}
        - containerPort: {{ .Values.service.internalPort2 }}
        # disable liveness probe when breakpoints set in debugger
        # so K8s doesn't restart unresponsive container
        {{ if .Values.liveness.enabled }}
        livenessProbe:
          tcpSocket:
            port: {{ .Values.service.internalPort }}
          initialDelaySeconds: {{ .Values.liveness.initialDelaySeconds }}
          periodSeconds: {{ .Values.liveness.periodSeconds }}
        {{ end }}
        readinessProbe:
          tcpSocket:
            port: {{ .Values.service.internalPort }}
          initialDelaySeconds: {{ .Values.readiness.initialDelaySeconds }}
          periodSeconds: {{ .Values.readiness.periodSeconds }}
        resources:
{{ toYaml .Values.resources | indent 10 }}
      {{- if .Values.nodeSelector }}
      nodeSelector:
{{ toYaml .Values.nodeSelector | indent 8 }}
      {{- end -}}
      {{- if .Values.affinity }}
      affinity:
{{ toYaml .Values.affinity | indent 8 }}
      {{- end }}

      # side car containers
      - name: filebeat-onap
        image: "{{ .Values.global.loggingRepository }}/{{ .Values.global.loggingImage }}"
        imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
        volumeMounts:
        - mountPath: /usr/share/filebeat/filebeat.yml
          subPath: filebeat.yml
          name: filebeat-conf
        - mountPath: /var/log/onap
          name: {{ include "common.fullname" . }}-logs
        - mountPath: /usr/share/filebeat/data
          name: {{ include "common.fullname" . }}-filebeat

      volumes:
      - name: localtime
        hostPath:
          path: /etc/localtime
      - name: filebeat-conf
        configMap:
          name: aai-filebeat
      - name: {{ include "common.fullname" . }}-logs
        emptyDir: {}
      - name: {{ include "common.fullname" . }}-filebeat
        emptyDir: {}
      - name: {{ include "common.fullname" . }}-log-conf
        configMap:
         name: {{ include "common.fullname" . }}-log
      - name: {{ include "common.fullname" . }}-localhost-access-log-conf
        configMap:
         name: {{ include "common.fullname" . }}-localhost-access-log-configmap
      - name: {{ include "common.fullname" . }}-db-real-conf
        configMap:
         name: {{ include "common.fullname" . }}-db-real-configmap
      - name: {{ include "common.fullname" . }}-db-cached-conf
        configMap:
         name: {{ include "common.fullname" . }}-db-cached-configmap
      - name: {{ include "common.fullname" . }}-aaiconfig-conf
        configMap:
         name: {{ include "common.fullname" . }}-aaiconfig-configmap
      - name: {{ include "common.fullname" . }}-springapp-conf
        configMap:
         name: {{ include "common.fullname" . }}-springapp-configmap
      - name: {{ include "common.fullname" . }}-realm-conf
        configMap:
         name: {{ include "common.fullname" . }}-realm-configmap
      - name: {{ include "common.fullname" . }}-auth-sec
        secret:
         secretName: aai-auth-secret
      restartPolicy: {{ .Values.restartPolicy }}
      imagePullSecrets:
      - name: "{{ include "common.namespace" . }}-docker-registry-key"
