{{- range $zone := .Values.basic.activeZones }}
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
  annotations:
    nginx.ingress.kubernetes.io/rewrite-target: /$2
    nginx.ingress.kubernetes.io/use-regex: "true"
  name: loki-{{ $zone }}
spec:
  ingressClassName: nginx-{{ $zone }}
  rules:
  - http:
      paths:
      - backend:
          service:
            name: loki-ha-write
            port:
              number: 3100
        path: /loki(/|$)(.*)
        pathType: Prefix
---
{{- end }}
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
  annotations:
    nginx.ingress.kubernetes.io/rewrite-target: /$2
    nginx.ingress.kubernetes.io/use-regex: "true"
  name: loki-read
spec:
  ingressClassName: nginx
  rules:
  - http:
      paths:
      - backend:
          service:
            name: loki-ha-read
            port:
              number: 3100
        path: /loki/self-monitoring(/|$)(.*)
        pathType: Prefix
---
{{- range $zone := .Values.basic.activeZones }}
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
  annotations:
    nginx.ingress.kubernetes.io/rewrite-target: /insert/2147483646/$2
    nginx.ingress.kubernetes.io/use-regex: "true"
  name: topsql-vm-ingress-{{ $zone }}
spec:
  ingressClassName: nginx-{{ $zone }}
  rules:
  - http:
      paths:
      - backend:
          service:
            name: vminsert-vmcluster
            port:
              number: 8480
        path: /topsql-vminsert/insert/(\d+)/(.*)
        pathType: Prefix
---
{{- end }}
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
  annotations:
    nginx.ingress.kubernetes.io/rewrite-target: /select/2147483646/$2
    nginx.ingress.kubernetes.io/use-regex: "true"
  name: topsql-vm-ingress-read
spec:
  ingressClassName: {{ .Values.other.ingress.topsqlVmIngressRead.ingressClassName }}
  rules:
  - http:
      paths:
      - backend:
          service:
            name: vmselect-vmcluster
            port:
              number: 8481
        path: /internal/topsql-vmselect/select/(\d+)/(.*)
        pathType: Prefix
---
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
  annotations:
    nginx.ingress.kubernetes.io/rewrite-target: /$2
    nginx.ingress.kubernetes.io/use-regex: "true"
  name: self-monitoring-prometheus
  namespace: {{ .Values.namespace.selfMonitoring }}
spec:
  ingressClassName: {{ .Values.other.ingress.selfMonitoringPrometheus.ingressClassName }}
  rules:
  - http:
      paths:
      - backend:
          service:
            name: kube-prometheus-stack-prometheus
            port:
              number: 9090
        path: /prom/self-monitoring(/|$)(.*)
        pathType: Prefix