{{- if and .Values.devEnv.enabled .Values.devEnv.ingress.enabled }} {{- $fullname := include "sebastian.fullname" . }} {{- $ingressName := printf "%s-dev-env" $fullname | trunc 63 | trimSuffix "-" }} {{- $codeServerService := printf "%s-code-server" $fullname | trunc 63 | trimSuffix "-" }} {{- $aiWebService := printf "%s-ai-web" $fullname | trunc 63 | trimSuffix "-" }} {{- $aiApiService := printf "%s-ai-api" $fullname | trunc 63 | trimSuffix "-" }} apiVersion: networking.k8s.io/v1 kind: Ingress metadata: name: {{ $ingressName }} namespace: {{ .Values.devEnv.namespace }} labels: {{- include "sebastian.labels" . | nindent 4 }} {{- with .Values.devEnv.ingress.annotations }} annotations: {{- toYaml . | nindent 4 }} {{- end }} spec: {{- if .Values.devEnv.ingress.className }} ingressClassName: {{ .Values.devEnv.ingress.className }} {{- end }} {{- if .Values.devEnv.ingress.tls.enabled }} tls: - hosts: - {{ tpl .Values.devEnv.ingress.hosts.codeServer.host . }} {{- if .Values.devEnv.aiAutomation.enabled }} - {{ tpl .Values.devEnv.ingress.hosts.aiAutomationWeb.host . }} - {{ tpl .Values.devEnv.ingress.hosts.aiAutomationApi.host . }} {{- end }} secretName: {{ .Values.devEnv.ingress.tls.secretName }} {{- end }} rules: # Code Server {{- if .Values.devEnv.codeServer.enabled }} - host: {{ tpl .Values.devEnv.ingress.hosts.codeServer.host . }} http: paths: {{- range .Values.devEnv.ingress.hosts.codeServer.paths }} - path: {{ .path }} pathType: {{ .pathType }} backend: service: name: {{ $codeServerService }} port: number: {{ $.Values.devEnv.codeServer.service.port }} {{- end }} {{- end }} # AI Automation Web {{- if .Values.devEnv.aiAutomation.enabled }} - host: {{ tpl .Values.devEnv.ingress.hosts.aiAutomationWeb.host . }} http: paths: {{- range .Values.devEnv.ingress.hosts.aiAutomationWeb.paths }} - path: {{ .path }} pathType: {{ .pathType }} backend: service: name: {{ $aiWebService }} port: number: {{ $.Values.devEnv.aiAutomation.web.service.port }} {{- end }} # AI Automation API - host: {{ tpl .Values.devEnv.ingress.hosts.aiAutomationApi.host . }} http: paths: {{- range .Values.devEnv.ingress.hosts.aiAutomationApi.paths }} - path: {{ .path }} pathType: {{ .pathType }} backend: service: name: {{ $aiApiService }} port: number: {{ $.Values.devEnv.aiAutomation.api.service.port }} {{- end }} {{- end }} {{- end }}