apiVersion: apps/v1 kind: Deployment metadata: name: {{ include "ihasmail.fullname" . }} labels: {{- include "ihasmail.labels" . | nindent 4 }} spec: replicas: 1 selector: matchLabels: {{- include "ihasmail.selectorLabels" . | nindent 6 }} template: metadata: labels: {{- include "ihasmail.selectorLabels" . | nindent 8 }} spec: containers: - name: app image: "{{ .Values.image.repository }}:{{ .Values.image.tag }}" imagePullPolicy: {{ .Values.image.pullPolicy }} env: - name: APP_SECRET valueFrom: secretKeyRef: name: {{ include "ihasmail.fullname" . }}-secret key: APP_SECRET - name: JMAP_BASE value: {{ .Values.env.JMAP_BASE | quote }} - name: CALDAV_BASE value: {{ .Values.env.CALDAV_BASE | quote }} - name: WEBDAV_BASE value: {{ .Values.env.WEBDAV_BASE | quote }} - name: COOKIE_NAME value: {{ .Values.env.COOKIE_NAME | quote }} - name: TRUST_PROXY value: {{ .Values.env.TRUST_PROXY | quote }} - name: UPSTREAM_TIMEOUT value: {{ .Values.env.UPSTREAM_TIMEOUT | quote }} ports: - containerPort: 8000 readinessProbe: httpGet: path: /healthz port: 8000 initialDelaySeconds: 5 periodSeconds: 10 livenessProbe: httpGet: path: /healthz port: 8000 initialDelaySeconds: 10 periodSeconds: 20 --- apiVersion: v1 kind: Secret metadata: name: {{ include "ihasmail.fullname" . }}-secret type: Opaque stringData: APP_SECRET: {{ .Values.env.APP_SECRET | quote }}