blob: e78dfcce2cae944d44431047afe6dbd060656b6c [file] [log] [blame]
Giorgi Lekveishvili285ab622023-11-22 13:50:45 +04001{{ if and .Values.ingress.enabled (not .Values.istio.enabled) -}}
2apiVersion: networking.k8s.io/v1
3kind: Ingress
4metadata:
5 name: {{ .Release.Name }}-ingress
6 labels:
7 app.kubernetes.io/component: gerrit-replica
8 app.kubernetes.io/instance: {{ .Release.Name }}
9 chart: {{ template "gerrit-replica.chart" . }}
10 heritage: {{ .Release.Service }}
11 release: {{ .Release.Name }}
12 {{- if .Values.additionalLabels }}
13{{ toYaml .Values.additionalLabels | indent 4 }}
14 {{- end }}
15 annotations:
16 kubernetes.io/ingress.class: nginx
17 nginx.ingress.kubernetes.io/proxy-body-size: {{ .Values.ingress.maxBodySize | default "50m" }}
18 nginx.ingress.kubernetes.io/use-regex: "true"
19 nginx.ingress.kubernetes.io/configuration-snippet: |-
20 if ($args ~ service=git-receive-pack){
21 set $proxy_upstream_name "{{ .Release.Namespace }}-{{ .Release.Name }}-git-backend-service-http";
22 set $proxy_host $proxy_upstream_name;
23 set $service_name "{{ .Release.Name }}-git-backend-service";
24 }
25 {{- if .Values.ingress.additionalAnnotations }}
26{{ toYaml .Values.ingress.additionalAnnotations | indent 4 }}
27 {{- end }}
28spec:
29 {{ if .Values.ingress.tls.enabled -}}
30 tls:
31 - hosts:
32 - {{ .Values.ingress.host }}
33 {{ if .Values.ingress.tls.secret.create -}}
34 secretName: {{ .Release.Name }}-tls-secret
35 {{- else }}
36 secretName: {{ .Values.ingress.tls.secret.name }}
37 {{- end }}
38 {{- end }}
39 rules:
40 - host: {{required "A host URL is required for the ingress. Please set 'ingress.host'" .Values.ingress.host }}
41 http:
42 paths:
43 - pathType: Prefix
44 path: /a/projects
45 backend:
46 service:
47 name: {{ .Release.Name }}-git-backend-service
48 port:
49 number: {{ .Values.gitBackend.service.http.port }}
50 - pathType: Prefix
51 path: "/.*/git-receive-pack"
52 backend:
53 service:
54 name: {{ .Release.Name }}-git-backend-service
55 port:
56 number: {{ .Values.gitBackend.service.http.port }}
57 - pathType: Prefix
58 path: /
59 backend:
60 service:
61 name: {{ .Release.Name }}-gerrit-replica-service
62 port:
63 number: {{ .Values.gerritReplica.service.http.port }}
64{{- end }}
65---
66{{ if and (and .Values.ingress.tls.enabled .Values.ingress.tls.secret.create) (not .Values.istio.enabled) -}}
67apiVersion: v1
68kind: Secret
69metadata:
70 name: {{ .Release.Name }}-tls-secret
71 labels:
72 app.kubernetes.io/component: gerrit-replica
73 app.kubernetes.io/instance: {{ .Release.Name }}
74 chart: {{ template "gerrit-replica.chart" . }}
75 heritage: {{ .Release.Service }}
76 release: {{ .Release.Name }}
77 {{- if .Values.additionalLabels }}
78{{ toYaml .Values.additionalLabels | indent 4 }}
79 {{- end }}
80type: kubernetes.io/tls
81data:
82 {{ with .Values.ingress.tls -}}
83 tls.crt: {{ .cert | b64enc }}
84 tls.key: {{ .key | b64enc }}
85 {{- end }}
86{{- end }}