# 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.

#{{ if not .Values.disableVfcVfcWorkflowEngineActiviti }}
apiVersion: extensions/v1beta1
kind: Deployment
metadata:
  name: vfc-workflowengineactiviti
  namespace: "{{ .Values.nsPrefix }}"
spec:
  replicas: {{ .Values.workflowengineactiviti.replicas }}
  selector:
    matchLabels:
      app: vfc-workflowengineactiviti
  template:
    metadata:
      labels:
        app: vfc-workflowengineactiviti
      name: vfc-workflowengineactiviti
    spec:
      hostname: vfc-workflowengineactiviti
      containers:
      - args:
        image:  {{.Values.workflowengineactiviti.image}}
        name: "vfc-workflowengineactiviti"
        env:
        - name: SERVICE_IP
          valueFrom:
            fieldRef:
              fieldPath: status.podIP
        - name: SERVICE_PORT
          value: "{{ .Values.workflow.port }}"
        - name: OPENPALETTE_MSB_IP
          value: msb-iag.{{ .Values.nsPrefix }}
        - name: OPENPALETTE_MSB_PORT
          value: "80"
        ports:
        - containerPort: {{ .Values.workflowengineactiviti.port }}
        readinessProbe:
          tcpSocket:
            port: {{ .Values.workflowengineactiviti.port }}
          initialDelaySeconds: 5
          periodSeconds: 10
        imagePullPolicy: "{{ .Values.pullPolicy }}"
      imagePullSecrets:
      - name: "{{ .Values.nsPrefix }}-docker-registry-key"
#{{ end }}
