gloo icon indicating copy to clipboard operation
gloo copied to clipboard

Failure to report bad port number on backendRef in HTTPRoute

Open jameshbarton opened this issue 1 year ago • 0 comments

Gloo Edge Product

Open Source

Gloo Edge Version

v2.0.0-beta1

Kubernetes Version

v1.27.3 (kind)

Describe the bug

In testing GGv2's response to bad backendRefs on an HTTPRoute, changing the backendRef name to something non-existent works as expected. But changing the corresponding port to an invalid value does not generate an error either in the HTTPRoute status or with glooctl.

Expected Behavior

A bad port specification in an HTTPRoute backendRef should create an error in the HTTPRoute status that can be reported on by glooctl.

Steps to reproduce the bug

  1. Deploy the httpbin service / upstream as described here. Complete all the steps before the Next Steps section.
  2. Confirm that this test succeeds as expected:
curl -vik http://$INGRESS_GW_ADDRESS:8080/status/200 -H "host: www.example.com:8080"
  1. Use kubectl to modify the httpbin HTTPRoute to change the backendRef name to bad-httpbin. Observe that this is detected both in the HTTPRoute status and will be reported by glooctl check, all as expected.
  2. Use kubectl to modify the httpbin HTTPRoute to change the backendRef name to the correct httpbin value, but change the port to a non-existent value, say 9999.
  3. Observe that this bad reference is not reported in the HTTPRoute status, nor is it reported by glooctl check.

Additional Environment Detail

No response

Additional Context

No response

jameshbarton avatar Dec 04 '23 19:12 jameshbarton