1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677 |
- {{- $kubeTargetVersion := default .Capabilities.KubeVersion.GitVersion .Values.kubeTargetVersionOverride }}
- {{- if .Values.controller.ingress.enabled }}
- {{- if semverCompare ">=1.19-0" $kubeTargetVersion -}}
- apiVersion: networking.k8s.io/v1
- {{- else if semverCompare ">=1.14-0" $kubeTargetVersion -}}
- apiVersion: networking.k8s.io/v1beta1
- {{- else -}}
- apiVersion: {{ .Values.controller.ingress.apiVersion }}
- {{- end }}
- kind: Ingress
- metadata:
- namespace: {{ template "jenkins.namespace" . }}
- labels:
- "app.kubernetes.io/name": '{{ template "jenkins.name" .}}'
- {{- if .Values.renderHelmLabels }}
- "helm.sh/chart": "{{ template "jenkins.label" .}}"
- {{- end }}
- "app.kubernetes.io/managed-by": "{{ .Release.Service }}"
- "app.kubernetes.io/instance": "{{ .Release.Name }}"
- "app.kubernetes.io/component": "{{ .Values.controller.componentName }}"
- {{- if .Values.controller.ingress.labels }}
- {{ toYaml .Values.controller.ingress.labels | indent 4 }}
- {{- end }}
- {{- if .Values.controller.ingress.annotations }}
- annotations:
- {{ toYaml .Values.controller.ingress.annotations | indent 4 }}
- {{- end }}
- name: {{ template "jenkins.fullname" . }}
- spec:
- {{- if .Values.controller.ingress.ingressClassName }}
- ingressClassName: {{ .Values.controller.ingress.ingressClassName | quote }}
- {{- end }}
- rules:
- - http:
- paths:
- {{- if empty (.Values.controller.ingress.paths) }}
- - backend:
- {{- if semverCompare ">=1.19-0" $kubeTargetVersion }}
- service:
- name: {{ template "jenkins.fullname" . }}
- port:
- number: {{ .Values.controller.servicePort }}
- pathType: ImplementationSpecific
- {{- else }}
- serviceName: {{ template "jenkins.fullname" . }}
- servicePort: {{ .Values.controller.servicePort }}
- {{- end }}
- {{- if .Values.controller.ingress.path }}
- path: {{ .Values.controller.ingress.path }}
- {{- end -}}
- {{- else }}
- {{ tpl (toYaml .Values.controller.ingress.paths | indent 6) . }}
- {{- end -}}
- {{- if .Values.controller.ingress.hostName }}
- host: {{ tpl .Values.controller.ingress.hostName . | quote }}
- {{- end }}
- {{- if .Values.controller.ingress.resourceRootUrl }}
- - http:
- paths:
- - backend:
- {{- if semverCompare ">=1.19-0" $kubeTargetVersion }}
- service:
- name: {{ template "jenkins.fullname" . }}
- port:
- number: {{ .Values.controller.servicePort }}
- pathType: ImplementationSpecific
- {{- else }}
- serviceName: {{ template "jenkins.fullname" . }}
- servicePort: {{ .Values.controller.servicePort }}
- {{- end }}
- host: {{ tpl .Values.controller.ingress.resourceRootUrl . | quote }}
- {{- end }}
- {{- if .Values.controller.ingress.tls }}
- tls:
- {{ tpl (toYaml .Values.controller.ingress.tls ) . | indent 4 }}
- {{- end -}}
- {{- end }}
|