--- apiVersion: apps/v1 kind: Deployment metadata: name: "zuul-merger" labels: app.kubernetes.io/name: "zuul" app.kubernetes.io/part-of: "zuul" app.kubernetes.io/component: "zuul-merger" spec: replicas: 1 selector: matchLabels: app.kubernetes.io/name: "zuul" app.kubernetes.io/part-of: "zuul" app.kubernetes.io/component: "zuul-merger" template: metadata: labels: app.kubernetes.io/name: "zuul" app.kubernetes.io/part-of: "zuul" app.kubernetes.io/component: "zuul-merger" spec: affinity: podAntiAffinity: preferredDuringSchedulingIgnoredDuringExecution: - weight: 100 podAffinityTerm: labelSelector: matchExpressions: - key: "app.kubernetes.io/name" operator: "In" values: - "zuul" - key: "app.kubernetes.io/component" operator: "In" values: - "zuul-merger" topologyKey: "kubernetes.io/hostname" containers: - name: "zuul" image: "zuul/zuul-merger" args: ["/usr/local/bin/zuul-merger", "-f", "-d"] ports: - containerPort: 9091 name: "prometheus" protocol: "TCP" readinessProbe: httpGet: path: "/health/ready" port: "prometheus" failureThreshold: 20 periodSeconds: 10 livenessProbe: httpGet: path: "/health/live" port: "prometheus" initialDelaySeconds: 120 failureThreshold: 10 periodSeconds: 5 timeoutSeconds: 5 resources: limits: cpu: "200m" memory: "600Mi" requests: cpu: "50m" memory: "100Mi" securityContext: runAsUser: 10001 runAsGroup: 10001 volumeMounts: - name: "zuul-config" mountPath: "/etc/zuul" readOnly: true - name: "zookeeper-client-tls" mountPath: "/tls/client" readOnly: true - name: "zuul-config-data" mountPath: "/etc/zuul-config" - name: "zuul-var" mountPath: "/var/lib/zuul" serviceAccountName: "zuul" terminationGracePeriodSeconds: 120 volumes: - name: "zuul-config" secret: secretName: "zuul-config" - name: "zookeeper-client-tls" secret: secretName: "zookeeper-client-tls" - name: "zuul-config-data" persistentVolumeClaim: claimName: "zuul-config" - name: "zuul-var" emptyDir: {} revisionHistoryLimit: 2