Skip to content
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

Node Driver page does not handle errors #9183

Open
thatmidwesterncoder opened this issue Jun 22, 2023 · 5 comments
Open

Node Driver page does not handle errors #9183

thatmidwesterncoder opened this issue Jun 22, 2023 · 5 comments
Labels
area/clusterprovisioningv2 JIRA kind/bug QA/dev-automation Issues that engineers have written automation around so QA doesn't have look at this status/backport-candidate
Milestone

Comments

@thatmidwesterncoder
Copy link

thatmidwesterncoder commented Jun 22, 2023

SURE-9632

Setup

  • Rancher version: v2.7 head
  • Rancher UI Extensions: n/a
  • Browser type & version: chrome 114

Describe the bug

When disabling/enabling a Node Driver if the API returns a 400/500 it does not display the error nor update the UI in anyway, which is confusing.

To Reproduce

Apply rancher/webhook#250 to the webhook, then try and disable a node driver after creating a cluster that uses one of the node drivers. Nothing will happen in the UI after clicking disable.

Result
Nothing happens when the request is denied.

Expected Result

A notification is shown with the error so the user knows what happened in the background when trying to disable/enable the driver.

Screenshots

image

Additional context

path: /dashboard/c/_/manager/pages/rke-drivers

This was found when developing rancher/rancher#41128, when adding the webhook which can deny an update on the NodeDriver resources

@richard-cox
Copy link
Member

This is a general issue with how we handle requests related to actions that do not modify the resource state / message.

This page is currently in ember, but the pattern extends to dashboard as well.

We should look at / consider this when working on #9274

@thaneunsoo
Copy link

Hi just wanted to leave my findings here from rancher/rancher#42378

I noticed when activating both node drivers I noticed that one of the node drivers went into a Downloading state. Both are installed and active. I'm not sure if this is worth fixing for the ui since this is a very edge case, I'm ok with just having the backend working properly.
image.png
Even when uninstalling the active node driver, the downloading nodedriver stays in Downloading state in the UI. When looking at the api I see that the status is indeed in Downloading but when I check the nodedriver using kubectl I see that the node driver is actually installed and active.
image.png
image.png
I'm ok to close this out this ticket and keep this comment here as a reference but I don't think it is worth UI team's time to fix this edge case.

@richard-cox
Copy link
Member

@timirnich that seems to be a separate issue, where two of the same drivers are added and the state supplied getting broken. Think the key issue on this one is the request fails and the UI does not show the error message.

Needs re-testing in 2.9.0 after this page was ported to vue

@richard-cox richard-cox added this to the v2.9.next1 milestone May 8, 2024
@gaktive gaktive modified the milestones: v2.9.next1, v2.10.0 Jul 2, 2024
@nwmac nwmac modified the milestones: v2.10.0, v2.11.0 Jul 4, 2024
@XavierDuthil
Copy link

XavierDuthil commented Jan 16, 2025

Hello, I would like to add that this issue also concerns Cluster/Kontainer drivers. We put a webhook in place to prevent any driver activation/deactivation and no error message is displayed when one of these operations is blocked.

@nwmac nwmac modified the milestones: v2.12.0, v2.11.0 Jan 21, 2025
@richard-cox richard-cox added JIRA QA/dev-automation Issues that engineers have written automation around so QA doesn't have look at this labels Jan 21, 2025
@nwmac
Copy link
Member

nwmac commented Jan 22, 2025

We need to add error handling into the models for node and kontainer drivers and into the deactivate dialogs used for those.

In the models, we should show a growl when an error occurs and for the modals, we should show the error in the modal.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
area/clusterprovisioningv2 JIRA kind/bug QA/dev-automation Issues that engineers have written automation around so QA doesn't have look at this status/backport-candidate
Projects
None yet
Development

No branches or pull requests

6 participants