-
Epic
-
Resolution: Unresolved
-
Major
-
None
-
None
Expose CIM as an OpenShift Console Dynamic Plugin so it runs natively inside OCP/ACM console, using the Console Dynamic Plugin SDK for routing, RBAC, K8s access, and service proxying.
High-level steps
- Isolate CIM entry and adapters (no global window, no direct fetch to cluster APIs).
- Wrap all K8s CRUD in SDK-based helpers (k8sCreate/List/Patch/Delete, useK8sWatchResource).
- Use Console Plugin routing and navigation extensions to mount CIM pages.
- Use ConsolePlugin CR proxy to reach assisted-service (and image-service) from the plugin.
- Package via Webpack 5 Module Federation with the SDK; register in cluster with a ConsolePlugin resource.
Minimal architecture
- Plugin host: OpenShift Console (and ACM Console).
- Plugin runtime APIs:
- K8s: @openshift-console/dynamic-plugin-sdk (auth, impersonation handled).
- Assisted Service: ConsolePlugin proxy endpoints.
- CIM UI: existing components adapted to read K8s functions from a provider and call Assisted API via proxied URLs.
- links to