blob: 899b2c5f1156353f83c6db3d88a742129cac7bec [file] [log] [blame]
Mohammed Naser4569e9b2024-07-19 01:08:18 -04001{{- if .Values.ingress.enabled -}}
2{{- $fullName := include "goldpinger.fullname" . -}}
3{{- $svcPort := .Values.service.port -}}
4{{- if and .Values.ingress.className (not (semverCompare ">=1.18-0" .Capabilities.KubeVersion.GitVersion)) }}
5 {{- if not (hasKey .Values.ingress.annotations "kubernetes.io/ingress.class") }}
6 {{- $_ := set .Values.ingress.annotations "kubernetes.io/ingress.class" .Values.ingress.className}}
7 {{- end }}
8{{- end }}
9{{- if semverCompare ">=1.19-0" .Capabilities.KubeVersion.GitVersion -}}
10apiVersion: networking.k8s.io/v1
11{{- else if semverCompare ">=1.14-0" .Capabilities.KubeVersion.GitVersion -}}
12apiVersion: networking.k8s.io/v1beta1
13{{- else -}}
14apiVersion: extensions/v1beta1
15{{- end }}
16kind: Ingress
17metadata:
18 name: {{ $fullName }}
19 labels:
20 {{- include "goldpinger.labels" . | nindent 4 }}
21 {{- with .Values.ingress.annotations }}
22 annotations:
23 {{- toYaml . | nindent 4 }}
24 {{- end }}
25spec:
26 {{- if and .Values.ingress.className (semverCompare ">=1.18-0" .Capabilities.KubeVersion.GitVersion) }}
27 ingressClassName: {{ .Values.ingress.className }}
28 {{- end }}
29 {{- if .Values.ingress.tls }}
30 tls:
31 {{- range .Values.ingress.tls }}
32 - hosts:
33 {{- range .hosts }}
34 - {{ . | quote }}
35 {{- end }}
36 secretName: {{ .secretName }}
37 {{- end }}
38 {{- end }}
39 rules:
40 {{- range .Values.ingress.hosts }}
41 - host: {{ .host | quote }}
42 http:
43 paths:
44 {{- range .paths }}
45 - path: {{ .path }}
46 {{- if and .pathType (semverCompare ">=1.18-0" $.Capabilities.KubeVersion.GitVersion) }}
47 pathType: {{ .pathType }}
48 {{- end }}
49 backend:
50 {{- if semverCompare ">=1.19-0" $.Capabilities.KubeVersion.GitVersion }}
51 service:
52 name: {{ $fullName }}
53 port:
54 number: {{ $svcPort }}
55 {{- else }}
56 serviceName: {{ $fullName }}
57 servicePort: {{ $svcPort }}
58 {{- end }}
59 {{- end }}
60 {{- end }}
61{{- end }}