{{- if .Values.ingress.enabled -}} {{- $fullName := include "minio.fullname" . -}} {{- $servicePort := .Values.service.port -}} {{- $ingressPath := .Values.ingress.path -}} apiVersion: {{ template "minio.ingress.apiVersion" . }} kind: Ingress metadata: name: {{ $fullName }} labels: app: {{ template "minio.name" . }} chart: {{ template "minio.chart" . }} release: {{ .Release.Name }} heritage: {{ .Release.Service }} {{- with .Values.ingress.labels }} {{- toYaml . | nindent 4 }} {{- end }} {{- with .Values.ingress.annotations }} annotations: {{- toYaml . | nindent 4 }} {{- end }} spec: {{- if .Values.ingress.ingressClassName }} ingressClassName: {{ .Values.ingress.ingressClassName }} {{- end }} {{- if .Values.ingress.tls }} tls: {{- range .Values.ingress.tls }} - hosts: {{- range .hosts }} - {{ . | quote }} {{- end }} secretName: {{ .secretName }} {{- end }} {{- end }} rules: {{- range .Values.ingress.hosts }} - http: paths: - path: {{ $ingressPath }} {{- if semverCompare ">=1.19-0" $.Capabilities.KubeVersion.GitVersion }} pathType: Prefix backend: service: name: {{ $fullName }} port: number: {{ $servicePort }} {{- else }} backend: serviceName: {{ $fullName }} servicePort: {{ $servicePort }} {{- end }} {{- if . }} host: {{ tpl . $ | quote }} {{- end }} {{- end }} {{- end }}