solo-io / gloo

The Feature-rich, Kubernetes-native, Next-Generation API Gateway Built on Envoy
https://docs.solo.io/
Apache License 2.0
4.08k stars 438 forks source link

virtualservice does not alert on routetable conflicting path #6113

Open jjsadek opened 2 years ago

jjsadek commented 2 years ago

Gloo Edge Version

1.10.x (latest stable)

Kubernetes Version

No response

Describe the bug

We have multiple teams and a single gloo deployment handling all of the traffic for the k8s cluster. We want to delegate the root prefix control to those teams so that we don't need to modify the vs, and we expect the vs to report a warning in case of routetable prefix conflict, as per the documentation guidelines.

https://docs.solo.io/gloo-edge/latest/guides/traffic_management/destination_types/delegation/#delegation-via-route-table-selector

Steps to reproduce the bug

apiVersion: gateway.solo.io/v1
kind: RouteTable
metadata:
  name: test1
  namespace: test1
  labels:
    test: prefix
spec:
  routes:
    - matchers:
       - prefix: /test
      directResponseAction:
        status: 200
        body: "test1"

---

apiVersion: gateway.solo.io/v1
kind: RouteTable
metadata:
  name: test2
  namespace: test2
  labels:
    test: prefix
spec:
  routes:
    - matchers:
       - prefix: /test
      directResponseAction:
        status: 200
        body: "test2"

---

apiVersion: gateway.solo.io/v1
kind: VirtualService
metadata:
  annotations:
  name: bookinfo-vs
  namespace: gloo-system
spec:
  sslConfig:
    secretRef:
      name: bookinfo
      namespace: gloo-system
    sniDomains:
    - bookinfo.example.com
  virtualHost:
    domains:
    - bookinfo.example.com
    routes:
    - delegateAction:
        selector:
          labels:
            test: prefix
          namespaces:
          - '*'
      matchers:
      - prefix: /

Expected Behavior

virtualservice and routetable to report alert status for the conflict

Additional Context

No response

github-actions[bot] commented 4 days ago

This issue has been marked as stale because of no activity in the last 180 days. It will be closed in the next 180 days unless it is tagged "no stalebot" or other activity occurs.