apiVersion: apps/v1 kind: Deployment metadata: name: {{ include "deepfence-console.fullname" . }}-worker labels: {{- include "deepfence-console.labels" . | nindent 4 }} name: {{ include "deepfence-console.fullname" . }}-worker spec: {{- if not .Values.worker.autoscaling.enabled }} replicas: {{ .Values.worker.replicaCount }} {{- end }} selector: matchLabels: {{- include "deepfence-console.selectorLabels" . | nindent 6 }} name: {{ include "deepfence-console.fullname" . }}-worker template: metadata: {{- with .Values.worker.podAnnotations }} annotations: {{- toYaml . | nindent 8 }} {{- end }} labels: {{- include "deepfence-console.selectorLabels" . | nindent 8 }} name: {{ include "deepfence-console.fullname" . }}-worker spec: serviceAccountName: {{ include "deepfence-console.serviceAccountName" . }} securityContext: {{- toYaml .Values.worker.podSecurityContext | nindent 8 }} containers: - name: worker securityContext: {{- toYaml .Values.worker.securityContext | nindent 12 }} image: "{{ .Values.global.imageRepoPrefix }}/{{ .Values.worker.image.repository }}:{{ default .Values.global.imageTag .Values.worker.image.tag }}" imagePullPolicy: {{ .Values.worker.image.pullPolicy }} env: - name: DEEPFENCE_MODE value: worker envFrom: - configMapRef: name: "{{ include "deepfence-console.fullname" . }}-config" - secretRef: {{- if .Values.redis.create }} name: "{{ include "deepfence-console.fullname" . }}-secrets-redis" {{- else }} name: {{ .Values.redis.secretName }} {{- end }} - secretRef: {{- if or .Values.fileserver.create .Values.aws_s3_buckets.create }} name: "{{ include "deepfence-console.fullname" . }}-secrets-fileserver" {{- else if .Values.fileserver.secretName }} name: {{ .Values.fileserver.secretName }} {{- else if .Values.aws_s3_buckets.secretName }} name: {{ .Values.aws_s3_buckets.secretName }} {{- end }} - secretRef: {{- if .Values.kafka.create }} name: "{{ include "deepfence-console.fullname" . }}-secrets-kafka" {{- else }} name: {{ .Values.kafka.secretName }} {{- end }} - secretRef: {{- if .Values.postgres.create }} name: "{{ include "deepfence-console.fullname" . }}-secrets-postgres" {{- else }} name: {{ .Values.postgres.secretName }} {{- end }} - secretRef: {{- if .Values.neo4j.create }} name: "{{ include "deepfence-console.fullname" . }}-secrets-neo4j" {{- else }} name: {{ .Values.neo4j.secretName }} {{- end }} ports: - name: http containerPort: {{ .Values.worker.service.port }} protocol: TCP # livenessProbe: # httpGet: # path: / # port: http # readinessProbe: # httpGet: # path: / # port: http resources: {{- toYaml .Values.worker.resources | nindent 12 }} {{- with .Values.worker.nodeSelector }} nodeSelector: {{- toYaml . | nindent 8 }} {{- end }} {{- with .Values.worker.affinity }} affinity: {{- toYaml . | nindent 8 }} {{- end }} {{- with .Values.worker.tolerations }} tolerations: {{- toYaml . | nindent 8 }} {{- end }} --- apiVersion: v1 kind: Service metadata: name: {{ include "deepfence-console.fullname" . }}-worker labels: {{- include "deepfence-console.labels" . | nindent 4 }} name: {{ include "deepfence-console.fullname" . }}-worker spec: type: {{ .Values.worker.service.type }} ports: - port: {{ .Values.worker.service.port }} targetPort: http protocol: TCP name: http selector: {{- include "deepfence-console.selectorLabels" . | nindent 4 }} name: {{ include "deepfence-console.fullname" . }}-worker --- {{- if .Values.worker.autoscaling.enabled }} apiVersion: autoscaling/v2beta1 kind: HorizontalPodAutoscaler metadata: name: {{ include "deepfence-console.fullname" . }}-worker labels: {{- include "deepfence-console.labels" . | nindent 4 }} name: {{ include "deepfence-console.fullname" . }}-worker spec: scaleTargetRef: apiVersion: apps/v1 kind: Deployment name: {{ include "deepfence-console.fullname" . }}-worker minReplicas: {{ .Values.worker.autoscaling.minReplicas }} maxReplicas: {{ .Values.worker.autoscaling.maxReplicas }} metrics: {{- if .Values.worker.autoscaling.targetCPUUtilizationPercentage }} - type: Resource resource: name: cpu targetAverageUtilization: {{ .Values.worker.autoscaling.targetCPUUtilizationPercentage }} {{- end }} {{- if .Values.worker.autoscaling.targetMemoryUtilizationPercentage }} - type: Resource resource: name: memory targetAverageUtilization: {{ .Values.worker.autoscaling.targetMemoryUtilizationPercentage }} {{- end }} {{- end }}