[FEAT] can configure ingress default path

Signed-off-by: Guillaume Calmettes <gcalmettes@idmog.com>
This commit is contained in:
Guillaume Calmettes 2021-03-29 16:59:15 +02:00
parent eedcf15a9c
commit bf7f917299
2 changed files with 36 additions and 19 deletions

View file

@ -2,6 +2,8 @@
{{- if .Values.server.ingress.enabled -}}
{{- $serviceName := printf "%s-%s" .Release.Name .Values.server.name -}}
{{- $servicePort := .Values.server.servicePort -}}
{{- $paths := .Values.server.ingress.paths -}}
{{- $extraPaths := .Values.server.ingress.extraPaths -}}
{{- if .Capabilities.APIVersions.Has "networking.k8s.io/v1beta1" }}
apiVersion: networking.k8s.io/v1beta1
{{ else }}
@ -23,24 +25,37 @@ metadata:
{{- end }}
spec:
rules:
{{- range .Values.server.ingress.hosts }}
- host: {{ . }}
{{- if .Values.server.ingress.hosts }}
{{- range $host := .Values.server.ingress.hosts }}
- host: {{ $host }}
http:
paths:
{{- if $.Values.server.ingress.paths }}
{{- range $.Values.server.ingress.paths }}
- backend:
serviceName: {{ .serviceName }}
servicePort: {{ .servicePort }}
{{- end }}
{{- end }}
- backend:
{{- if $extraPaths }}
{{- toYaml $extraPaths | nindent 10 }}
{{- end }}
{{- range $p := $paths }}
- path: {{ $p }}
backend:
serviceName: {{ $serviceName }}
servicePort: {{ $servicePort }}
{{- end -}}
{{- end -}}
{{- end -}}
{{- else }}
- http:
paths:
{{- if $extraPaths }}
{{- toYaml $extraPaths | nindent 10 }}
{{- end }}
{{- range $p := $paths }}
- path: {{ $p }}
backend:
serviceName: {{ $serviceName }}
servicePort: {{ $servicePort }}
{{- end -}}
{{- end -}}
{{- if .Values.server.ingress.tls }}
tls:
{{ toYaml .Values.server.ingress.tls | indent 4 }}
{{- toYaml .Values.server.ingress.tls | nindent 4 }}
{{- end -}}
{{- end -}}
{{- end -}}

View file

@ -219,7 +219,6 @@ server:
##
ingress:
enabled: false
## Annotations to be added to the web ingress.
##
# annotations:
@ -234,13 +233,16 @@ server:
## Hostnames.
## Must be provided if Ingress is enabled.
##
# hosts:
# - argo.domain.com
hosts: []
# - argocd.example.com
paths:
- /
## Additional Paths for each host
# paths:
# - serviceName: "ssl-redirect"
# servicePort: "use-annotation"
extraPaths: []
# - path: /*
# backend:
# serviceName: ssl-redirect
# servicePort: use-annotation
## TLS configuration.
## Secrets must be manually created in the namespace.