add Install button to trigger Epinio install on unregistered clusters#545
Merged
dcharles525 merged 3 commits intodevelopmentfrom Mar 31, 2026
Merged
Conversation
Adds an Actions column to the Epinio instances table with an Install button that appears only for clusters where Epinio is not yet installed. Clicking the button opens an InstallDialog that collects domain, targetNamespace, and version, checks for an existing active install to prevent duplicates, creates an InstallEpinio CR on the target cluster via the Rancher K8s proxy, and polls the CR status conditions to show live progress (Progressing / Available / Degraded) until the operator completes the Helm-based install.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
PR Checklist
Summary
Fixes #
Adds an Actions column to the Epinio instances table with an Install button that appears only for clusters where Epinio is not yet installed. Clicking the button opens an InstallDialog that collects domain, targetNamespace, and version, checks for an existing active install to prevent duplicates, creates an InstallEpinio CR on the target cluster via the Rancher K8s proxy, and polls the CR status conditions to show live progress (Progressing / Available / Degraded) until the operator completes the Helm-based install.
Occurred changes and/or fixed issues
uninstalled(i.e. clusters registered in Rancher that do not yet have Epinio running).InstallDialogthat collects the three required inputs: Domain, Target Namespace (defaults toepinio), and Version.Available=TrueorProgressing=True) for the same target namespace on the same cluster, preventing duplicate installs.InstallEpiniocustom resource on the selected cluster via the Rancher Kubernetes API proxy (/k8s/clusters/{id}/apis/epinio.apps.example.com/...).status.conditionsevery 4 seconds and surfaces the operator's live progress to the user. The user can close the dialog early; the install continues in the background.- A newInstallDialogcomponent is registered in the plugin entry point so Rancher'spromptModalmechanism can resolve it by name.Technical notes summary
Areas or cases that should be tested
Areas which could experience regressions
Screenshot/Video