dashboard
dashboard copied to clipboard
Display the status of ClusterTemplate instances
What would you like to be added? / User Story: Currently when creating a Cluster through a ClusterTemplate over the UI, there is just a notification that the ClusterTemplateInstance was created and thats it. If all is well, we will see new clusters popping up in the project.
But, if something goes wrong, nothing is visible in the UI. The user does not know what happened to its Clusters, because we dont show what are and what is the status of the ClusterTemplateInstances and its controller which is responsible for turning ClusterTemplates into Clusters.
So the proposal would be to show users the ongoing ClusterTemplateInstances and their status on some tab. In most cases the ClusterTemplateInstance gets created and removed in a second (as they get removed after succesfully creating all the clusters). But having there instances where there are issues would help users with realizing that maybe:
- there is an issue with the ClusterTemplate
- there is an issue with credentials
- or something else
Now users can only check the logs of the seed-controller-manager for that.
So what would need to be done:
- Add a status to the ClusterTemplateInstance CRD which would hold the info about what is going on with it
- Add an API endpoint to list ClusterTemplateInstances
- Design a tab with ClusterTemplateInstances
- Implement the ClusterTemplateInstances tab in the UI
Proposed UX
Show instances like normal clusters in the table, show their status as failed/paused. On hover/tooltip: "Cluster could not be created because the Cluster Template is invalid. Check the Cluster Template xxxx for errors." Disable hover effect on the row, disable click on row sending to the cluster page.
Send an error message "Clusters could not be created because the Cluster Template is invalid. Check the Cluster Template xxxx for errors."
On Cluster Template view: Add error/warning icon to the broken template. On hover of this icon state the error (if we know it) like "Credentials invalid" otherwise just "Template invalid"
After Cluster Template was fixed send the success message we usually show e. g. "Created 1 instance from cluster template xxx" Remove error marker from template, proceed with creating instances as normal
The issue with invalid / non-working ClusterTemplate can be easily hit after upgrading to a higher KKP minor version, where the list of supported k8s versions changes. That may render all cluster templates with older k8s versions invalid - creating the clusters from them is not working, even though the UI says it was successful.