Skip to content

Clarify route conflicts in the same resource #613

Closed
@stevesloka

Description

@stevesloka

I ran into a conflict today thinking about implementation and thought it would be best to gather everyone else's thoughts on it.

There is some logic written in the API which states in the event of conflicts occur, how to handle (e.g. The oldest Route based on creation timestamp, or the Route appearing first in alphabetical order).

What if I have an HTTPRoute which has the same matches set, but with different forwardTo? We can't apply any timestamp logic since there isn't a resource to compare against.

What should a GET for local.projectcontour.io/ respond with? What conditions should I set?

Example:

kind: HTTPRoute
apiVersion: networking.x-k8s.io/v1alpha1
metadata:
  name: http-filter-1
  namespace: projectcontour-roots 
spec:
  hostnames:
    - local.projectcontour.io
  rules:
    - matches:  
      - path:
          type: Prefix
          value: /  
      forwardTo:
      - serviceName: insecure   #<--- serviceName different
        port: 80
    - matches:
      - path:
          type: Prefix
          value: / 
      forwardTo:
      - serviceName: rootapp   #<--- serviceName different
        port: 80

Metadata

Metadata

Assignees

No one assigned

    Labels

    area/webhookkind/featureCategorizes issue or PR as related to a new feature.

    Type

    No type

    Projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions