What happened:
According to the API reference, Pending
is the default Reason for the status condition Accepted
of a new GatewayClass. However, in the actual code, the default reason is inconsistently set to two different values:
// +kubebuilder:default={conditions: {{type: "Accepted", status: "Unknown", message: "Waiting for controller", reason: "Waiting", lastTransitionTime: "1970-01-01T00:00:00Z"}}}
// +kubebuilder:default={{type: "Accepted", status: "Unknown", message: "Waiting for controller", reason: "Pending", lastTransitionTime: "1970-01-01T00:00:00Z"}}
During the creation of a resource, the status is typically absent. As a result, the reason for the status condition Accepted
is still set to the deprecated value Waiting
.
What you expected to happen:
Regardless of how a GatewayClass is created, the reason for the status condition Accepted
should always be set to Pending
.
How to reproduce it (as minimally and precisely as possible):
Apply the following manifest and verify its status:
apiVersion: gateway.networking.k8s.io/v1
kind: GatewayClass
metadata:
name: foo
spec:
controllerName: foo.com/bar
Anything else we need to know?:
N/A
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4