{{- if .Values.ingress.enabled -}} {{- $serviceName := include "artifactory-ha.fullname" . -}} {{- $servicePort := .Values.artifactory.externalPort -}} {{- $artifactoryServicePort := .Values.artifactory.externalArtifactoryPort -}} {{- $ingressName := default ( include "artifactory-ha.fullname" . ) .Values.ingress.name -}} {{- if semverCompare ">=v1.14.0" .Capabilities.KubeVersion.GitVersion }} apiVersion: networking.k8s.io/v1beta1 {{- else }} apiVersion: extensions/v1beta1 {{- end }} kind: Ingress metadata: name: {{ $ingressName }} labels: app: {{ template "artifactory-ha.name" . }} chart: {{ template "artifactory-ha.chart" . }} release: {{ .Release.Name }} heritage: {{ .Release.Service }} {{- if .Values.ingress.labels }} {{ .Values.ingress.labels | toYaml | trimSuffix "\n"| indent 4 -}} {{- end}} {{- if .Values.ingress.annotations }} annotations: {{ .Values.ingress.annotations | toYaml | trimSuffix "\n" | indent 4 -}} {{- end }} spec: {{- if .Values.ingress.defaultBackend.enabled }} backend: serviceName: {{ $serviceName }} servicePort: {{ $servicePort }} {{- end }} rules: {{- if .Values.ingress.hosts }} {{- range $host := .Values.ingress.hosts }} - host: {{ $host | quote }} http: paths: - path: {{ $.Values.ingress.routerPath }} backend: serviceName: {{ $serviceName }} servicePort: {{ $servicePort }} - path: {{ $.Values.ingress.artifactoryPath }} backend: serviceName: {{ $serviceName }} servicePort: {{ $artifactoryServicePort }} {{- end -}} {{- end -}} {{- with .Values.ingress.additionalRules }} {{ tpl . $ | indent 2 }} {{- end }} {{- if .Values.ingress.tls }} tls: {{ toYaml .Values.ingress.tls | indent 4 }} {{- end -}} {{- if .Values.artifactory.replicator.enabled }} --- {{- $replicationIngressName := default ( include "artifactory-ha.replicator.fullname" . ) .Values.artifactory.replicator.ingress.name -}} {{- if semverCompare ">=v1.14.0" .Capabilities.KubeVersion.GitVersion }} apiVersion: networking.k8s.io/v1beta1 {{- else }} apiVersion: extensions/v1beta1 {{- end }} kind: Ingress metadata: name: {{ $replicationIngressName }} labels: app: "{{ template "artifactory-ha.name" $ }}" chart: "{{ template "artifactory-ha.chart" $ }}" release: {{ $.Release.Name | quote }} heritage: {{ $.Release.Service | quote }} {{- if .Values.artifactory.replicator.ingress.annotations }} annotations: {{ .Values.artifactory.replicator.ingress.annotations | toYaml | trimSuffix "\n" | indent 4 -}} {{- end }} spec: {{- if .Values.ingress.defaultBackend.enabled }} backend: serviceName: {{ $serviceName }} servicePort: {{ $servicePort }} {{- end }} rules: {{- if .Values.artifactory.replicator.ingress.hosts }} {{- range $host := .Values.artifactory.replicator.ingress.hosts }} - host: {{ $host | quote }} http: paths: - path: /replicator/ backend: serviceName: {{ $serviceName }} servicePort: {{ $servicePort }} - path: /artifactory/api/replication/replicate/file/streaming backend: serviceName: {{ $serviceName }} servicePort: {{ $servicePort }} {{- end -}} {{- end -}} {{- if .Values.artifactory.replicator.ingress.tls }} tls: {{ toYaml .Values.artifactory.replicator.ingress.tls | indent 4 }} {{- end -}} {{- end -}} {{- end -}}