apiVersion: apps/v1
kind: Deployment
metadata:
  name: dataservice-dataapp-executor
  namespace: dataservice
spec:
  replicas: {replicas}
  selector:
    matchLabels:
      app: dataservice-dataapp-executor
  template:
    metadata:
      labels:
        app: dataservice-dataapp-executor
    spec:
      nodeSelector:
        node_type: "control"
      containers:
        - image: {image}
          command: ["dataapi_executor_server"]
          name: dataservice-dataapp-executor
          imagePullPolicy: Always
          ports:
            - containerPort: 10000
          resources:
            limits:
              cpu: {limits_cpu}
              memory: {limits_memory}
            requests:
              cpu: {requests_cpu}
              memory: {requests_memory}
          volumeMounts:
            - name: config
              mountPath: /etc/dbaas/
              readOnly: true
          env:
            - name: POD_IP
              valueFrom:
                fieldRef:
                  apiVersion: v1
                  fieldPath: status.podIP
      volumes:
        - name: config
          configMap:
            name: regional-server-config
            items:
              - key: dataapi_executor.yaml
                path: config.yaml
      terminationGracePeriodSeconds: 10
      serviceAccountName: data-service

