-
Epic
-
Resolution: Done
-
Blocker
-
None
-
Handle the optional installation of OCP Console from Openshift 4.12+
-
False
-
None
-
False
-
To Do
-
ACM-737 - Unite Consoles (ACM, OCP)
Epic Goal
- In OpenShift 4.12, installation of the OCP Console will be optional. MCE/ACM need to conditionally deploy the dynamic plugins and OCP Console operator CRDs.
https://github.com/openshift/enhancements/blob/master/enhancements/installer/component-selection.md
Why is this important?
- We do not want to install/activate features, and incur the runtime overhead associated with hem, when the underlying base OCP capabilities are disabled
- We do not want to try to install/activate features that depend on APIs (eg CRDs) that are not available, because doing that can lead to false-positive errors being reported in status, or visible in logs. While such may be begin from a runtime point of view, the presence of apparent errors can be alarming to customers, can cause "spurious" support cases, etc.
Scenarios
- During MCE and ACM deploy on 4.12+, if the OpenShift Web Console is not enabled:
- Do not install the dynamic plugins from MCE or ACM
- Do not install OpenShift Console related CRs (i.e., just skip the installation of the entire console / console-mce charts)
- ConsolePlugin
- ConsoleLink
- ConsoleNotification
- etc
- MCE/ACM is installed on a 4.12+ cluster that had the OCP Console disabled at install time, but later the OCP Console is enabled in a post-install flow (https://github.com/openshift/enhancements/blob/master/enhancements/installer/component-selection.md#axioms)
- ACM/MCE will install the dynamic plugins
- OpenShift Console related CRs will be installed (install charts for console / console-mce)
Non-Supported Scenarios
The following scenarios are not supported or not valid:
- An OCP 4.11 or OCP 4.10 EUS cluster is upgraded to OCP 4.12, and the OCP Console is disabled at upgrade or post-upgrade.
- This scenario is unsupported (actually, not possible) because the Console operator cannot be disabled post-install, and therefore cannot be disabled upon an upgrade into 4.12, see: https://github.com/openshift/enhancements/blob/master/enhancements/installer/component-selection.md#non-goals
- MCE/ACM is installed into a 4.12 cluster with the OCP Console enabled, but the OCP Console is later removed.
- This scenario is unsupported (actually not possible) because the Console operator cannot be disabled post-install, see: https://github.com/openshift/enhancements/blob/master/enhancements/installer/component-selection.md#non-goals
- The ACM standalone web console is deployed when the OCP console is disabled. (This is not supported for 2.6.z either, to keep things simple and not set the expectation that ACM console can be used when the OCP console is disabled.)
Acceptance Criteria
- CI - MUST be running successfully with tests automated
- Release Technical Enablement - Provide necessary release enablement details and documents.
- All scenarios described above are complete and functioning as described
- All scenarios are validated with QE test automation
- Add documentation in Install section of ACM, that the ACM console pages will not be available when the OCP Console is disabled from 4.12+
Dependencies (internal and external)
- OpenShift Installer
- Cluster Version Operator
- OCP Console Operator
Previous Work (Optional):
- ...
Open questions::
- Does this affect the install of MCE/ACM from the installer squad perspective? YES
- Do we need a chat with the OCP Console folks to make sure they provide a smooth UX for customers that want to turn off the OCP console which will then impact other dynamic plugin-ed components like ODF/ACM etc
Done Checklist
- CI - CI is running, tests are automated and merged.
- Release Enablement <link to Feature Enablement Presentation>
- DEV - Upstream code and tests merged: <link to meaningful PR or GitHub Issue>
- DEV - Upstream documentation merged: <link to meaningful PR or GitHub Issue>
- DEV - Downstream build attached to advisory: <link to errata>
- QE - Test plans in Polarion: <link or reference to Polarion>
- QE - Automated tests merged: <link or reference to automated tests>
- DOC - Downstream documentation merged: <link to meaningful PR>