blob: 53eaa2589cf46fbc90b9f45e44e96c10cf7c1d83 [file] [log] [blame]
Giorgi Lekveishvili35982662024-04-05 13:05:40 +04001{{- $kubeTargetVersion := default .Capabilities.KubeVersion.GitVersion .Values.kubeTargetVersionOverride }}
2{{- if .Values.controller.ingress.enabled }}
3{{- if semverCompare ">=1.19-0" $kubeTargetVersion -}}
4apiVersion: networking.k8s.io/v1
5{{- else if semverCompare ">=1.14-0" $kubeTargetVersion -}}
6apiVersion: networking.k8s.io/v1beta1
7{{- else -}}
8apiVersion: {{ .Values.controller.ingress.apiVersion }}
9{{- end }}
10kind: Ingress
11metadata:
12 namespace: {{ template "jenkins.namespace" . }}
13 labels:
gio20157e82026-07-22 13:10:48 +040014 {{- include "jenkins.labels" . | nindent 4 }}
Giorgi Lekveishvili35982662024-04-05 13:05:40 +040015{{- if .Values.controller.ingress.labels }}
16{{ toYaml .Values.controller.ingress.labels | indent 4 }}
17{{- end }}
18{{- if .Values.controller.ingress.annotations }}
19 annotations:
gio20157e82026-07-22 13:10:48 +040020{{ tpl (toYaml .Values.controller.ingress.annotations) . | indent 4 }}
Giorgi Lekveishvili35982662024-04-05 13:05:40 +040021{{- end }}
22 name: {{ template "jenkins.fullname" . }}
23spec:
24{{- if .Values.controller.ingress.ingressClassName }}
gio20157e82026-07-22 13:10:48 +040025 ingressClassName: {{ tpl .Values.controller.ingress.ingressClassName . | quote }}
Giorgi Lekveishvili35982662024-04-05 13:05:40 +040026{{- end }}
27 rules:
28 - http:
29 paths:
30{{- if empty (.Values.controller.ingress.paths) }}
31 - backend:
32{{- if semverCompare ">=1.19-0" $kubeTargetVersion }}
33 service:
34 name: {{ template "jenkins.fullname" . }}
35 port:
36 number: {{ .Values.controller.servicePort }}
gio20157e82026-07-22 13:10:48 +040037 pathType: {{ .Values.controller.ingress.pathType }}
Giorgi Lekveishvili35982662024-04-05 13:05:40 +040038{{- else }}
39 serviceName: {{ template "jenkins.fullname" . }}
40 servicePort: {{ .Values.controller.servicePort }}
41{{- end }}
42{{- if .Values.controller.ingress.path }}
43 path: {{ .Values.controller.ingress.path }}
44{{- end -}}
45{{- else }}
46{{ tpl (toYaml .Values.controller.ingress.paths | indent 6) . }}
47{{- end -}}
48{{- if .Values.controller.ingress.hostName }}
49 host: {{ tpl .Values.controller.ingress.hostName . | quote }}
50{{- end }}
51{{- if .Values.controller.ingress.resourceRootUrl }}
52 - http:
53 paths:
54 - backend:
55{{- if semverCompare ">=1.19-0" $kubeTargetVersion }}
56 service:
57 name: {{ template "jenkins.fullname" . }}
58 port:
59 number: {{ .Values.controller.servicePort }}
gio20157e82026-07-22 13:10:48 +040060 pathType: {{ .Values.controller.ingress.pathType }}
Giorgi Lekveishvili35982662024-04-05 13:05:40 +040061{{- else }}
62 serviceName: {{ template "jenkins.fullname" . }}
63 servicePort: {{ .Values.controller.servicePort }}
64{{- end }}
65 host: {{ tpl .Values.controller.ingress.resourceRootUrl . | quote }}
66{{- end }}
67{{- if .Values.controller.ingress.tls }}
gio20157e82026-07-22 13:10:48 +040068{{- $withTlsEntries := false }}
69{{- range .Values.controller.ingress.tls }}
70 {{- if gt (len .) 0 }}
71 {{- $withTlsEntries = true }}
72 {{- end }}
73{{- end }}
74{{- if $withTlsEntries }}
Giorgi Lekveishvili35982662024-04-05 13:05:40 +040075 tls:
gio20157e82026-07-22 13:10:48 +040076{{- range .Values.controller.ingress.tls }}
77 - hosts:
78{{- range .hosts }}
79 - {{ tpl . $ | quote }}
80{{- end }}
81{{- if $.Values.controller.ingress.resourceRootUrl }}
82 - {{ tpl $.Values.controller.ingress.resourceRootUrl $ | quote }}
83{{- end }}
84{{- if .secretName }}
85 secretName: {{ tpl (.secretName | toString) $ | quote }}
86{{- end }}
87{{- end }}
88{{- end }}
89{{- end }}
Giorgi Lekveishvili35982662024-04-05 13:05:40 +040090{{- end }}