apiVersion: gateway.networking.k8s.io/v1 kind: HTTPRoute metadata: name: method-matching namespace: gateway-conformance-infra spec: parentRefs: - name: same-namespace rules: - matches: - method: POST backendRefs: - name: infra-backend-v1 port: 8080 - matches: - method: GET backendRefs: - name: infra-backend-v2 port: 8080 # Combinations with core match types. - matches: - path: type: PathPrefix value: /path1 method: GET backendRefs: - name: infra-backend-v1 port: 8080 - matches: - headers: - name: version value: one method: PUT backendRefs: - name: infra-backend-v2 port: 8080 - matches: - path: type: PathPrefix value: /path2 headers: - name: version value: two method: POST backendRefs: - name: infra-backend-v3 port: 8080 # Match of the form (cond1 AND cond2) OR (cond3 AND cond4 AND cond5) - matches: - path: type: PathPrefix value: /path3 method: PATCH - path: type: PathPrefix value: /path4 headers: - name: version value: three method: DELETE backendRefs: - name: infra-backend-v1 port: 8080 # Matches for checking precedence. - matches: - path: type: PathPrefix value: /path5 backendRefs: - name: infra-backend-v1 port: 8080 - matches: - method: PATCH backendRefs: - name: infra-backend-v2 port: 8080 - matches: - headers: - name: version value: four backendRefs: - name: infra-backend-v3 port: 8080