deploy-templates/templates/istio-virtual-service.yaml (49 lines of code) (raw):

kind: VirtualService apiVersion: networking.istio.io/v1alpha3 metadata: name: {{ include "controlPlaneConsole.name" . }} spec: hosts: - {{ template "control-plane-console.hostname" $ }} gateways: - gateway http: {{ range $it := .Values.consoleVersions }} - match: - uri: regex: '\/[^/]+\/registry\/[^/]+\/[^?]+' queryParams: version: exact: {{ $it.registryVersion }} - uri: regex: '\/[^/]+\/registry\/[^/]+' queryParams: version: exact: {{ $it.registryVersion }} - uri: exact: '/assets/index.css' queryParams: version: exact: {{ $it.registryVersion }} - uri: exact: '/assets/index.js' queryParams: version: exact: {{ $it.registryVersion }} name: version-{{ $it.registryVersion }} route: - destination: host: {{ $.Chart.Name }}.{{ $.Release.Namespace }}.svc.cluster.local port: number: 8080 subset: {{ template "istio.subset.name" (dict "version" $it.registryVersion) }} {{- if $it.latest }} - name: default-console route: - destination: host: {{ $.Chart.Name }}.{{ $.Release.Namespace }}.svc.cluster.local port: number: 8080 subset: {{ template "istio.subset.name" (dict "version" $it.registryVersion) }} {{- end }} {{- end }}