apiVersion: apps/v1 kind: Deployment metadata: name: {{ include "elasticsearch-mcp.name" . }} namespace: {{ .Release.Namespace }} labels: {{- include "elasticsearch-mcp.labels" . | nindent 4 }} spec: replicas: {{ .Values.replicas }} selector: matchLabels: app: {{ include "elasticsearch-mcp.name" . }} template: metadata: labels: app: {{ include "elasticsearch-mcp.name" . }} {{- with .Values.labels }} {{- toYaml . | nindent 8 }} {{- end }} {{- with .Values.podAnnotations }} annotations: {{- toYaml . | nindent 8 }} {{- end }} spec: {{- if .Values.serviceAccount.create }} serviceAccountName: {{ if .Values.serviceAccount.name }}{{ .Values.serviceAccount.name }}{{ else }}{{ include "elasticsearch-mcp.name" . }}{{ end }} {{- end }} {{- with .Values.podSecurityContext }} securityContext: {{- toYaml . | nindent 8 }} {{- end }} {{- if .Values.priorityClassName }} priorityClassName: {{ .Values.priorityClassName }} {{- end }} {{- with .Values.nodeSelector }} nodeSelector: {{- toYaml . | nindent 8 }} {{- end }} {{- with .Values.tolerations }} tolerations: {{- toYaml . | nindent 8 }} {{- end }} {{- with .Values.affinity }} affinity: {{- toYaml . | nindent 8 }} {{- end }} containers: - name: elasticsearch-mcp image: "{{ .Values.image.repository }}:{{ .Values.image.tag }}" imagePullPolicy: {{ .Values.image.pullPolicy }} args: - http envFrom: - secretRef: name: {{ include "elasticsearch-mcp.name" . }}-creds ports: - name: http containerPort: {{ .Values.service.port }} {{- with .Values.securityContext }} securityContext: {{- toYaml . | nindent 12 }} {{- end }} livenessProbe: {{- toYaml .Values.livenessProbe | nindent 12 }} readinessProbe: {{- toYaml .Values.readinessProbe | nindent 12 }} resources: {{- toYaml .Values.resources | nindent 12 }}