{{/* vim: set filetype=mustache: */}} {{- define "common.ingress.metadata" -}} {{- with .Values.ingress.annotations }} annotations: {{- toYaml . | nindent 2 }} {{- end }} {{- end -}} {{- define "common.ingress.tpl" -}} {{- $fullName := include "common.fullname" . -}} {{- $svcPort := .Values.service.port -}} {{- if semverCompare ">=1.14-0" .Capabilities.KubeVersion.GitVersion -}} apiVersion: networking.k8s.io/v1beta1 {{- else -}} apiVersion: extensions/v1beta1 {{- end }} kind: Ingress metadata: {{ include "common.metadata" (list . "common.ingress.metadata") | nindent 2 }} spec: {{- if .Values.ingress.tls }} tls: {{- range .Values.ingress.tls }} - hosts: {{- range .hosts }} - {{ . | quote }} {{- end }} secretName: {{ .secretName }} {{- end }} {{- end }} rules: {{- range .Values.ingress.hosts }} - host: {{ .host | quote }} http: paths: {{- range .paths }} - path: {{ . }} backend: serviceName: {{ $fullName }} servicePort: {{ $svcPort }} {{- end }} {{- end }} {{- end -}} {{- define "common.ingress.if" -}} {{- $top := first . -}} {{- if $top.Values.ingress.enabled -}} {{- include "common.utils.merge" (append . "common.ingress.tpl") -}} {{- end -}} {{- end -}} {{- define "common.ingress" -}} {{- include "common.utils.flattenCall" (list "common.ingress.if" .) -}} {{- end -}}