apiVersion: apps/v1
kind: Deployment
metadata:
  labels:
    run: data-hub-ui
  name: data-hub-ui
  namespace: frontend
spec:
  progressDeadlineSeconds: 600
  replicas: 1
  revisionHistoryLimit: 10
  selector:
    matchLabels:
      run: data-hub-ui
  strategy:
    rollingUpdate:
      maxSurge: 25%
      maxUnavailable: 25%
    type: RollingUpdate
  template:
    metadata:
      labels:
        run: data-hub-ui
    spec:
      containers:
        - image: ${IMAGE}
          imagePullPolicy: IfNotPresent
          name: data-hub-ui
          resources:
            requests:
              cpu: '100m'
              memory: 25Mi
            limits:
              cpu: '200m'
              memory: 50Mi
          terminationMessagePath: /dev/termination-log
          terminationMessagePolicy: File
          startupProbe:
            httpGet:
              path: /index.html
              port: 80
            failureThreshold: 50
            periodSeconds: 10
      dnsPolicy: ClusterFirst
      imagePullSecrets:
        - name: zj-acr
      restartPolicy: Always
      schedulerName: default-scheduler
      terminationGracePeriodSeconds: 30
---
apiVersion: v1
kind: Service
metadata:
  labels:
    run: data-hub-ui
  name: data-hub-ui
  namespace: frontend
spec:
  externalTrafficPolicy: Local
  internalTrafficPolicy: Cluster
  ipFamilies:
    - IPv4
  ipFamilyPolicy: SingleStack
  ports:
    - name: data-hub-ui
      port: 80
      protocol: TCP
      targetPort: 80
  selector:
    run: data-hub-ui
  sessionAffinity: None
  type: NodePort
