91 lines
3.0 KiB
YAML
91 lines
3.0 KiB
YAML
{{- $kubeTargetVersion := default .Capabilities.KubeVersion.GitVersion .Values.kubeTargetVersionOverride }}
|
|
{{- if .Values.controller.ingress.enabled }}
|
|
{{- if semverCompare ">=1.19-0" $kubeTargetVersion -}}
|
|
apiVersion: networking.k8s.io/v1
|
|
{{- else if semverCompare ">=1.14-0" $kubeTargetVersion -}}
|
|
apiVersion: networking.k8s.io/v1beta1
|
|
{{- else -}}
|
|
apiVersion: {{ .Values.controller.ingress.apiVersion }}
|
|
{{- end }}
|
|
kind: Ingress
|
|
metadata:
|
|
namespace: {{ template "jenkins.namespace" . }}
|
|
labels:
|
|
{{- include "jenkins.labels" . | nindent 4 }}
|
|
{{- if .Values.controller.ingress.labels }}
|
|
{{ toYaml .Values.controller.ingress.labels | indent 4 }}
|
|
{{- end }}
|
|
{{- if .Values.controller.ingress.annotations }}
|
|
annotations:
|
|
{{ tpl (toYaml .Values.controller.ingress.annotations) . | indent 4 }}
|
|
{{- end }}
|
|
name: {{ template "jenkins.fullname" . }}
|
|
spec:
|
|
{{- if .Values.controller.ingress.ingressClassName }}
|
|
ingressClassName: {{ tpl .Values.controller.ingress.ingressClassName . | quote }}
|
|
{{- end }}
|
|
rules:
|
|
- http:
|
|
paths:
|
|
{{- if empty (.Values.controller.ingress.paths) }}
|
|
- backend:
|
|
{{- if semverCompare ">=1.19-0" $kubeTargetVersion }}
|
|
service:
|
|
name: {{ template "jenkins.fullname" . }}
|
|
port:
|
|
number: {{ .Values.controller.servicePort }}
|
|
pathType: {{ .Values.controller.ingress.pathType }}
|
|
{{- else }}
|
|
serviceName: {{ template "jenkins.fullname" . }}
|
|
servicePort: {{ .Values.controller.servicePort }}
|
|
{{- end }}
|
|
{{- if .Values.controller.ingress.path }}
|
|
path: {{ .Values.controller.ingress.path }}
|
|
{{- end -}}
|
|
{{- else }}
|
|
{{ tpl (toYaml .Values.controller.ingress.paths | indent 6) . }}
|
|
{{- end -}}
|
|
{{- if .Values.controller.ingress.hostName }}
|
|
host: {{ tpl .Values.controller.ingress.hostName . | quote }}
|
|
{{- end }}
|
|
{{- if .Values.controller.ingress.resourceRootUrl }}
|
|
- http:
|
|
paths:
|
|
- backend:
|
|
{{- if semverCompare ">=1.19-0" $kubeTargetVersion }}
|
|
service:
|
|
name: {{ template "jenkins.fullname" . }}
|
|
port:
|
|
number: {{ .Values.controller.servicePort }}
|
|
pathType: {{ .Values.controller.ingress.pathType }}
|
|
{{- else }}
|
|
serviceName: {{ template "jenkins.fullname" . }}
|
|
servicePort: {{ .Values.controller.servicePort }}
|
|
{{- end }}
|
|
host: {{ tpl .Values.controller.ingress.resourceRootUrl . | quote }}
|
|
{{- end }}
|
|
{{- if .Values.controller.ingress.tls }}
|
|
{{- $withTlsEntries := false }}
|
|
{{- range .Values.controller.ingress.tls }}
|
|
{{- if gt (len .) 0 }}
|
|
{{- $withTlsEntries = true }}
|
|
{{- end }}
|
|
{{- end }}
|
|
{{- if $withTlsEntries }}
|
|
tls:
|
|
{{- range .Values.controller.ingress.tls }}
|
|
- hosts:
|
|
{{- range .hosts }}
|
|
- {{ tpl . $ | quote }}
|
|
{{- end }}
|
|
{{- if $.Values.controller.ingress.resourceRootUrl }}
|
|
- {{ tpl $.Values.controller.ingress.resourceRootUrl $ | quote }}
|
|
{{- end }}
|
|
{{- if .secretName }}
|
|
secretName: {{ tpl (.secretName | toString) $ | quote }}
|
|
{{- end }}
|
|
{{- end }}
|
|
{{- end }}
|
|
{{- end }}
|
|
{{- end }}
|