Skip to content

HTTPRoutes with invalid ParentRefs are easy to missΒ #3738

Open
@robscott

Description

@robscott

What would you like to be added:
Some kind of warning(s) when a HTTPRoute is attached to an invalid ParentRef. This may involve some combination of:

  1. Adding a default status that indicates the unknown status similar to Gateway:

// +kubebuilder:default={conditions: {{type: "Accepted", status: "Unknown", reason:"Pending", message:"Waiting for controller", lastTransitionTime: "1970-01-01T00:00:00Z"},{type: "Programmed", status: "Unknown", reason:"Pending", message:"Waiting for controller", lastTransitionTime: "1970-01-01T00:00:00Z"}}}

  1. Adding some guidance that providers that install/manage CRDs in a cluster can also populate warnings in CRD status in these cases. Although this is not universal, where it is present, it means that we have a single controller that is responsible for CRDs overall, and that could extend to unowned or orphaned CRDs like this.

Why this is needed:
It's unfortunately easy to have an invalid ParentRef in an HTTPRoute without realizing. Because an HTTPRoute with an invalid ParentRef is inherently not tied to a controller, no single controller can populate a warning message when this happens today, leading to further confusion.

Metadata

Metadata

Assignees

No one assigned

    Labels

    kind/featureCategorizes issue or PR as related to a new feature.needs-triageIndicates an issue or PR lacks a `triage/foo` label and requires one.

    Type

    No type

    Projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions