Skip to content

app-catalog: Show error feedback when helm install fails#786

Open
AshutoshSharma-pixel wants to merge 1 commit into
headlamp-k8s:mainfrom
AshutoshSharma-pixel:fix/app-catalog-install-error
Open

app-catalog: Show error feedback when helm install fails#786
AshutoshSharma-pixel wants to merge 1 commit into
headlamp-k8s:mainfrom
AshutoshSharma-pixel:fix/app-catalog-install-error

Conversation

@AshutoshSharma-pixel

Copy link
Copy Markdown
Contributor

Closes #225

When a helm chart installation failed, the UI gave no feedback - the dialog would silently stay in a loading state or close without any error message.

Root causes fixed:

  • checkInstallStatus had no .catch() on the getActionStatus polling call - network errors were silently swallowed.

  • Both .catch() blocks in installAndCreateReleaseHandler called handleEditor(false) but never called setInstallLoading(false) leaving the install button stuck in "Installing..." indefinitely after failure.

  • Dialog was being closed prematurely before the status polling completed.

  • Error snackbars now include the specific error message and autoHideDuration: 5000

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR improves the app-catalog chart installation flow by ensuring Helm install failures (including status-polling network errors) surface clear UI feedback instead of leaving the dialog/loading state stuck or closing without explanation.

Changes:

  • Adds error handling to the getActionStatus polling loop and shows a detailed error snackbar when status checks fail.
  • Ensures installLoading is cleared on install request failures and on install status failure/success, preventing the install button from remaining stuck.
  • Prevents premature dialog closure by keeping the dialog open until the install status polling completes, and standardizes snackbar auto-hide duration.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

.then((response: any) => {
if (response.status === 'processing') {
checkInstallStatus(releaseName);
} else if (response.status === 'failed' || response.status !== 'success') {
Signed-off-by: Ashutosh Sharma <itsashutosh769@gmail.com>
@AshutoshSharma-pixel AshutoshSharma-pixel force-pushed the fix/app-catalog-install-error branch from 8efe781 to c626f92 Compare June 13, 2026 03:56
@AshutoshSharma-pixel

Copy link
Copy Markdown
Contributor Author

Simplified the condition to response.status !== 'success' as suggested.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

app-catalog: When failing to install there is no indication given to user

2 participants