-
Notifications
You must be signed in to change notification settings - Fork 10
/
ingress.yaml
73 lines (72 loc) · 2.39 KB
/
ingress.yaml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
{{- define "createIngress" }}
{{- $svcName := index . 0 }}
{{- $svcPort := index . 1 }}
{{- $ := index . 2 }}
{{- with index . 3 }}
{{- if and .ingress.className (not (semverCompare ">=1.18-0" $.Capabilities.KubeVersion.GitVersion)) }}
{{- if not (hasKey .ingress.annotations "kubernetes.io/ingress.class") }}
{{- $_ := set .ingress.annotations "kubernetes.io/ingress.class" .ingress.className}}
{{- end }}
{{- end }}
---
{{- if semverCompare ">=1.19-0" $.Capabilities.KubeVersion.GitVersion -}}
apiVersion: networking.k8s.io/v1
{{- else if semverCompare ">=1.14-0" $.Capabilities.KubeVersion.GitVersion -}}
apiVersion: networking.k8s.io/v1beta1
{{- else -}}
apiVersion: extensions/v1beta1
{{- end }}
kind: Ingress
metadata:
name: {{ $svcName }}
{{- $labels := include "cryostat.labels" $ | nindent 4 }}
labels: {{ $labels }}
{{- with .ingress.annotations }}
annotations:
{{- toYaml . | nindent 4 }}
{{- end }}
spec:
{{- if and .ingress.className (semverCompare ">=1.18-0" $.Capabilities.KubeVersion.GitVersion) }}
ingressClassName: {{ .ingress.className }}
{{- end }}
{{- if .ingress.tls }}
tls:
{{- range .ingress.tls }}
- hosts:
{{- range .hosts }}
- {{ . | quote }}
{{- end }}
secretName: {{ .secretName }}
{{- end }}
{{- end }}
rules:
{{- range .ingress.hosts }}
- host: {{ .host | quote }}
http:
paths:
{{- range .paths }}
- path: {{ .path }}
{{- if and .pathType (semverCompare ">=1.18-0" $.Capabilities.KubeVersion.GitVersion) }}
pathType: {{ .pathType }}
{{- end }}
backend:
{{- if semverCompare ">=1.19-0" $.Capabilities.KubeVersion.GitVersion }}
service:
name: {{ $svcName }}
port:
number: {{ $svcPort }}
{{- else }}
serviceName: {{ $svcName }}
servicePort: {{ $svcPort }}
{{- end }}
{{- end }}
{{- end }}
{{- end }}
{{- end }}
{{- $fullName := include "cryostat.fullname" . -}}
{{- if .Values.core.ingress.enabled }}
{{- include "createIngress" (list $fullName .Values.core.service.httpPort $ .Values.core)}}
{{- end }}
{{- if and (not .Values.minimal) .Values.grafana.ingress.enabled }}
{{- include "createIngress" (list (printf "%s-%s" $fullName "grafana") .Values.grafana.service.port $ .Values.grafana)}}
{{- end }}