-
Notifications
You must be signed in to change notification settings - Fork 472
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
discrepancies between Accepted, Ready, and Detached condition types and reasons #1111
Comments
We need to make sure this is compatible with Route inclusion status proposal |
I would like to work on this, if it's alright 🙂 |
@mehabhalodiya from what I've heard in Slack it sounds like you may not be taking this one on because you've got some other things you're working on? If that's the case I was gonna pick this one up, let me know what's up? |
@shaneutt I think that you already have some more context on what needs to be done; so that you can get it done a little quicker as compared to me! Also @robscott and @youngnick would really like to get this sorted asap. /assign @shaneutt Thank you. |
/assign @shaneutt |
Turns out the ask here is somewhat large and after reviewing I do think a GEP might be warranted as suggested so that we can ensure consensus about the changes ahead of implementation. I'm not going to be able to work on this one after all as I have significant time constraints and several things competing for my time at this moment, so I will be un-assigning myself. |
Cross-posting here that I extracted the case for a "Ready" Route condition into a new issue. |
Thanks @carlisia ! I think that makes this issue much more manageable |
Moving this out of the v0.5.0 milestone so it doesn't block the release. We can add the reasons in a patch release afterward. |
The Kubernetes project currently lacks enough contributors to adequately respond to all issues and PRs. This bot triages issues and PRs according to the following rules:
You can:
Please send feedback to sig-contributor-experience at kubernetes/community. /lifecycle stale |
I'm attempting to close this one as part of GEP-1364, so I'll take it. /assign |
GEP-1364 helped significantly clarify the expected behavior here, tracking followup work individually in: |
Several different
Kubernetes meta/v1.Condition
types are defined by the spec, and some use differing terminology to communicate apparently similar status.What would you like to be added:
Pending
GatewayClassConditionReason, deprecateWaiting
(for parity with ListenerConditionType)Accepted
GatewayConditionType, withAccepted
,Invalid
andPending
GatewayConditionReason to disambiguate the status of the object being accepted by the Gateway Controller versus being ready to route traffic.GatewayConditionScheduled
with a newGatewayConditionAccepted
Attached
orAccepted
ListenerConditionType, deprecateDetached
Attached
could still be a reasonable choice to clarify that this object isn't submitted to the controller individually, but rather evaluated as part of a Gateway object.Accepted
, addAccepted
ListenerConditionReason, deprecateAttached
Accepted
AddInvalidParameters
ListenerConditionReason, prefer over more genericInvalid
when applicable?Accepted
RouteConditionReason, deprecateAdmitted
(for parity with GatewayClassConditionType)Admitted
was only in the v1alpha1 spec, and had already been removed in Another round of v1alpha2 cleanup #839Accepted
properly in api: add RouteConditionReason to v1alpha2 #1114Possibly addReady
RouteConditionType, although this is known to be difficult to implement accurately.Pending
andInvalid
orInvalidParameters
RouteConditionReason,prefer over genericRefused
when applicable?Pending
in Add "Pending" reason and document usage for condition "Accepted", status: "Unknown" on all resources #1449Why this is needed:
GatewayClassConditionType
"Accepted"
The possible
false
reasons indicate either that the controller is evaluating the GatewayClass still, or that it has been rejected and likely requires manual intervention to resolve. AReady
condition doesn't feel appropriate here as this isn't a concrete instance.true
reasonsfalse
reasonsGatewayConditionType
"Ready"
This is pretty clearly intended to communicate different issues than the
Accepted
conditions, judging from the possiblefalse
values, the latter two of which seem to communicate issues that could be expected to be transient and eventually resolve on their own, or to look to a child object for additional detail.true
reasonsfalse
reasonsListenerConditionType
"Detached"
The logical inversion issues with this condition are separately described in #1110, but at a high level the possible
true
reasons seem to communicate issues that could be expected to require manual intervention to resolve.true
reasonsfalse
reasons"Ready"
The possible
false
reasons for this field look quite similar to thefalse
reasons for theAccepted
GatewayClassConditionType
, but use slightly different terminology. I'm not quite sure how useful this field is beyond being a cue to look to other conditions if the status isfalse
.true
reasonsfalse
reasonsRouteConditionType
"Accepted"
The possible
false
reasons for this field are not currently defined in the v1alpha2 API spec docs but were previously defined in v1alpha1, although don't appear to offer any additional context beyond the status boolean.true
reasons (only documented in v1alpha1)false
reasons (only documented in v1alpha1)(If there's interest in enough of this changing, it could be substantial enough to warrant a GEP.)
The text was updated successfully, but these errors were encountered: