ragflow/helm/templates/ingress.yaml
2025-11-03 15:03:46 +08:00

77 lines
2.4 KiB
YAML

{{- if .Values.ingress.enabled -}}
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
name: {{ include "ragflow.fullname" . }}
labels:
{{- include "ragflow.labels" . | nindent 4 }}
{{- with .Values.ingress.annotations }}
annotations:
{{- toYaml . | nindent 4 }}
{{- end }}
spec:
{{- with .Values.ingress.className }}
ingressClassName: {{ . }}
{{- end }}
{{- if .Values.ingress.tls }}
tls:
{{- range .Values.ingress.tls }}
- hosts:
{{- range .hosts }}
- {{ . | quote }}
{{- end }}
secretName: {{ .secretName }}
{{- end }}
{{- end }}
rules:
{{- range .Values.ingress.hosts }}
- host: {{ .host | quote }}
http:
paths:
{{- $pathFlags := dict "hasV1" false }}
{{- range .paths }}
{{- if eq .path "/v1" }}
{{- $_ := set $pathFlags "hasV1" true }}
{{- end }}
- path: {{ .path }}
{{- with .pathType }}
pathType: {{ . }}
{{- end }}
backend:
service:
{{- $backend := .backend | default dict }}
{{- if $backend.serviceName }}
name: {{ $backend.serviceName }}
{{- else if $backend.component }}
name: {{ include "ragflow.componentFullname" (dict "root" $ "component" $backend.component) }}
{{- else }}
name: {{ include "ragflow.componentFullname" (dict "root" $ "component" "frontend") }}
{{- end }}
{{- $port := default "http" $backend.port }}
port:
{{- if kindIs "string" $port }}
name: {{ $port }}
{{- else }}
number: {{ $port }}
{{- end }}
{{- end }}
{{- if not ($pathFlags.hasV1) }}
- path: /v1
pathType: Prefix
backend:
service:
name: {{ include "ragflow.componentFullname" (dict "root" $ "component" "api") }}
port:
name: http
{{- end }}
{{- if $.Values.ragflow.admin.enabled }}
- path: /api/v1/admin
pathType: Prefix
backend:
service:
name: {{ include "ragflow.componentFullname" (dict "root" $ "component" "admin") }}
port:
name: http
{{- end }}
{{- end }}
{{- end }}