66 lines
2.9 KiB
YAML
66 lines
2.9 KiB
YAML
---
|
|
{{/* TODO: add support for Traefik */}}
|
|
{{- if .Values.ingress.enabled }}
|
|
apiVersion: {{ include "common.capabilities.ingress.apiVersion" . }}
|
|
kind: Ingress
|
|
metadata:
|
|
name: {{ include "mailu.fullname" . }}
|
|
namespace: {{ include "common.names.namespace" . | quote }}
|
|
labels: {{- include "common.labels.standard" . | nindent 4 }}
|
|
{{- if .Values.commonLabels }}
|
|
{{- include "common.tplvalues.render" ( dict "value" .Values.commonLabels "context" $ ) | nindent 4 }}
|
|
{{- end }}
|
|
annotations:
|
|
nginx.ingress.kubernetes.io/backend-protocol: "HTTPS"
|
|
{{- if .Values.ingress.annotations }}
|
|
{{- include "common.tplvalues.render" ( dict "value" .Values.ingress.annotations "context" $ ) | nindent 4 }}
|
|
{{- end }}
|
|
{{- if .Values.commonAnnotations }}
|
|
{{- include "common.tplvalues.render" ( dict "value" .Values.commonAnnotations "context" $ ) | nindent 4 }}
|
|
{{- end }}
|
|
spec:
|
|
{{- if and .Values.ingress.ingressClassName (eq "true" (include "common.ingress.supportsIngressClassname" .)) }}
|
|
ingressClassName: {{ .Values.ingress.ingressClassName | quote }}
|
|
{{- end }}
|
|
rules:
|
|
{{- range .Values.hostnames }}
|
|
- host: {{ . | quote }}
|
|
http:
|
|
paths:
|
|
{{- if $.Values.ingress.extraPaths }}
|
|
{{- toYaml $.Values.ingress.extraPaths | nindent 10 }}
|
|
{{- end }}
|
|
- path: {{ $.Values.ingress.path }}
|
|
{{- if eq "true" (include "common.ingress.supportsPathType" $) }}
|
|
pathType: {{ $.Values.ingress.pathType }}
|
|
{{- end }}
|
|
backend: {{- include "common.ingress.backend" (dict "serviceName" (include "mailu.front.serviceName" $) "servicePort" "https" "context" $) | nindent 14 }}
|
|
{{- end }}
|
|
{{- range .Values.ingress.extraHosts }}
|
|
- host: {{ .name | quote }}
|
|
http:
|
|
paths:
|
|
- path: {{ default "/" .path }}
|
|
{{- if eq "true" (include "common.ingress.supportsPathType" $) }}
|
|
pathType: {{ default "ImplementationSpecific" .pathType }}
|
|
{{- end }}
|
|
backend: {{- include "common.ingress.backend" (dict "serviceName" (include "mailu.front.serviceName" $) "servicePort" "https" "context" $) | nindent 14 }}
|
|
{{- end }}
|
|
{{- if .Values.ingress.extraRules }}
|
|
{{- include "common.tplvalues.render" (dict "value" .Values.ingress.extraRules "context" $) | nindent 4 }}
|
|
{{- end }}
|
|
{{- if .Values.ingress.tls }}
|
|
tls:
|
|
{{- if or (include "common.ingress.certManagerRequest" ( dict "annotations" .Values.ingress.annotations )) .Values.ingress.secrets .Values.ingress.selfSigned .Values.ingress.existingSecret }}
|
|
- secretName: {{ include "mailu.certificatesSecretName" . }}
|
|
hosts:
|
|
{{- range .Values.hostnames }}
|
|
- {{ . | quote }}
|
|
{{- end }}
|
|
{{- end }}
|
|
{{- if .Values.ingress.extraTls }}
|
|
{{- include "common.tplvalues.render" (dict "value" .Values.ingress.extraTls "context" $) | nindent 4 }}
|
|
{{- end }}
|
|
{{- end }}
|
|
{{- end }}
|