66 lines
2.8 KiB
YAML
66 lines
2.8 KiB
YAML
{{- /*
|
|
Copyright VMware, Inc.
|
|
SPDX-License-Identifier: APACHE-2.0
|
|
*/}}
|
|
|
|
{{- if .Values.ingress.enabled }}
|
|
apiVersion: {{ include "common.capabilities.ingress.apiVersion" . }}
|
|
kind: Ingress
|
|
metadata:
|
|
name: {{ template "common.names.fullname" . }}
|
|
namespace: {{ .Release.Namespace }}
|
|
labels: {{- include "common.labels.standard" ( dict "customLabels" .Values.commonLabels "context" $ ) | nindent 4 }}
|
|
{{- if or .Values.ingress.annotations .Values.commonAnnotations .Values.ingress.certManager }}
|
|
annotations:
|
|
{{- if .Values.ingress.certManager }}
|
|
kubernetes.io/tls-acme: "true"
|
|
{{- end }}
|
|
{{- if or .Values.ingress.annotations .Values.commonAnnotations }}
|
|
{{- $annotations := include "common.tplvalues.merge" ( dict "values" ( list .Values.ingress.annotations .Values.commonAnnotations ) "context" . ) }}
|
|
{{- include "common.tplvalues.render" ( dict "value" $annotations "context" $) | nindent 4 }}
|
|
{{- end }}
|
|
{{- end }}
|
|
spec:
|
|
{{- if and .Values.ingress.ingressClassName (include "common.ingress.supportsIngressClassname" .) }}
|
|
ingressClassName: {{ .Values.ingress.ingressClassName | quote }}
|
|
{{- end }}
|
|
rules:
|
|
{{- if .Values.ingress.hostname }}
|
|
- host: {{ .Values.ingress.hostname }}
|
|
http:
|
|
paths:
|
|
{{- if .Values.ingress.extraPaths }}
|
|
{{- include "common.tplvalues.render" (dict "value" .Values.ingress.extraPaths "context" $) | 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 "common.names.fullname" .) "servicePort" "http" "context" $) | nindent 14 }}
|
|
{{- end }}
|
|
{{- range .Values.ingress.extraHosts }}
|
|
- host: {{ .name }}
|
|
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 "common.names.fullname" $) "servicePort" "http" "context" $) | nindent 14 }}
|
|
{{- end }}
|
|
{{- if .Values.ingress.extraRules }}
|
|
{{- include "common.tplvalues.render" (dict "value" .Values.ingress.extraRules "context" $) | nindent 4 }}
|
|
{{- end }}
|
|
{{- if or .Values.ingress.tls .Values.ingress.extraTls }}
|
|
tls:
|
|
{{- if .Values.ingress.tls }}
|
|
- hosts:
|
|
- {{ .Values.ingress.hostname }}
|
|
secretName: {{ printf "%s-tls" .Values.ingress.hostname }}
|
|
{{- end }}
|
|
{{- if .Values.ingress.extraTls }}
|
|
{{- include "common.tplvalues.render" ( dict "value" .Values.ingress.extraTls "context" $ ) | nindent 4 }}
|
|
{{- end }}
|
|
{{- end }}
|
|
{{- end }}
|