-
Notifications
You must be signed in to change notification settings - Fork 57
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
Routing errors propagation #385
Conversation
Add string field .status.message to devworkspaceroutings to allow the devworkspacerouting reconciler to propagate error messages up to the owner DevWorkspace. Also add a few printColumns to print useful information about the DevWorkspaceRouting: - The owner's DevWorkspaceId - The current phase - The current status.message Signed-off-by: Angel Misevski <[email protected]>
Signed-off-by: Angel Misevski <[email protected]>
When a DevWorkspaceRouting enters the failed phase, propagate the message in `routing.status.message` to the DevWorkspace as a failure reason. Signed-off-by: Angel Misevski <[email protected]>
Propagate messages (where appropriate) from DevWorkspaceRouting to DevWorkspaces (e.g. "preparing services/ingresses/routes"). Note that for a typical successful startup, these messages will never be reconciled to the DevWorkspace (as the routing enters the ready state too quickly) but could help diagnose issues if a particular step occurs slowly. Also change how status for DevWorkspaceRoutings is synced to ensure that "Preparing" phase is entered while resources are being created. Signed-off-by: Angel Misevski <[email protected]>
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I haven't tested but changes LGTM
...t/openshift/objects/devworkspaceroutings.controller.devfile.io.CustomResourceDefinition.yaml
Show resolved
Hide resolved
/test v7-devworkspaces-operator-e2e |
[APPROVALNOTIFIER] This PR is APPROVED This pull-request has been approved by: amisevsk, JPinkney, metlos, sleshchenko The full list of commands accepted by this bot can be found here. The pull request process is described here
Needs approval from an approver in each of these files:
Approvers can indicate their approval by writing |
What does this PR do?
Adds a string field
.status.message
to DevWorkspaceRoutings, and uses this value in place of"preparing networking"
in DevWorkspaces that are waiting for routing to be ready. This means that user-readable failure reasons can be set in DevWorkspaceRoutings and are automatically propagated to the DevWorkspace status.Also adds printColumns to DevWorkspaceRoutings to improve readability for short output:
Commit messages should be clear for what each commit adds. Note that I've also added propagating messages from dwr to dw status even when the dwr is not failed, but since a the dwr is ready so quickly in normal usage the message never reaches the DevWorkspace's status, so we never see
Preparing [services|routes|ingresses]
. This might still be useful if e.g. there is an issue applying resources, but might also make tracking progress harder (since the messages may or may not appear)What issues does this PR fix or reference?
Closes eclipse-che/che#17455
Is it tested? How?
Easiest to test on Kubernetes as otherwise all routingClasses are valid and the default
dwr
reconciler cannot fail:Output: