apiVersion: apps/v1 kind: Deployment metadata: name: {{ .Values.service.name }} namespace: {{ .Values.service.namespace }} labels: app: {{ .Values.service.name }} {{- include "service-chart.labels" . | nindent 4 }} spec: replicas: {{ .Values.service.replicas }} selector: matchLabels: app: {{ .Values.service.name }} {{- include "service-chart.selectorLabels" . | nindent 6 }} strategy: type: Recreate template: metadata: labels: app: {{ .Values.service.name }} {{- include "service-chart.selectorLabels" . | nindent 8 }} spec: containers: - name: {{ .Values.service.name }} image: {{ .Values.service.image }} imagePullPolicy: {{ .Values.service.imagePullPolicy }} ports: - containerPort: {{ .Values.service.port }} name: http protocol: TCP {{- if .Values.env }} env: {{ toYaml .Values.env | indent 12 }} {{- end }} {{- if .Values.resources.enabled }} resources: limits: cpu: {{ .Values.resources.limits.cpu }} memory: {{ .Values.resources.limits.memory }} requests: cpu: {{ .Values.resources.requests.cpu }} memory: {{ .Values.resources.requests.memory }} {{- end }} {{- with .Values.service.imagePullSecrets }} imagePullSecrets: {{ toYaml . | indent 8 }} {{- end }} restartPolicy: Always