blob: a2e5235bb411e0cddc2df66dc23180ad9cddddef [file] [log] [blame]
{{- define "ingress.config.port" -}}
{{- if .Values.ingress -}}
{{- if .Values.ingress.service -}}
{{- range .Values.ingress.service }}
- path: {{ .path }}
backend:
serviceName: {{ .name }}
servicePort: {{ .port }}
{{- end }}
{{- else -}}
- path: {{ printf "/%s" .Chart.Name }}
backend:
serviceName: {{ .Chart.Name }}
servicePort: {{ .Values.service.externalPort }}
{{- end -}}
{{- end -}}
{{- end -}}
{{- define "ingress.config.annotations" -}}
{{- if .Values.ingress -}}
{{- if .Values.ingress.annotations -}}
{{ toYaml .Values.ingress.annotations | indent 4 | trim }}
{{- end -}}
{{- end -}}
{{- end -}}
{{- define "common.ingress" -}}
{{- if .Values.ingress -}}
{{- if .Values.ingress.enabled -}}
apiVersion: extensions/v1beta1
kind: Ingress
metadata:
name: {{ include "common.fullname" . }}-ingress
annotations:
{{ include "ingress.config.annotations" . }}
labels:
app: {{ .Chart.Name }}
chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
release: {{ .Release.Name }}
heritage: {{ .Release.Service }}
spec:
rules:
- http:
paths:
{{- include "ingress.config.port" . }}
{{- if .Values.ingress.tls }}
tls:
{{ toYaml .Values.ingress.tls | indent 4 }}
{{- end -}}
{{- end -}}
{{- end -}}
{{- end -}}