-
Story
-
Resolution: Done
-
Normal
-
None
-
None
-
None
-
False
-
None
-
False
-
OCPSTRAT-1666 - Ensure Sustainability of the HyperShift Project through Comprehensive Refactor and Standardization of Key Components
-
-
-
Hypershift Sprint 257, Hypershift Sprint 258, Hypershift Sprint 259, Hypershift Sprint 260
-
0
-
0
-
0
User Story:
As a (user persona), I want to be able to:
- As an external dev I want to be able to add new components to the CPO easily
- As a core dev I want to feel safe when adding new components to the CPO
- As a core dev I want to add new components to the CPO with our copy/pasting big chunks of code
Acceptance Criteria:
Context:
If you ever had to add or modify a component to the control plane operator the need for this becomes very obvious. There should be possible to only add components manifest through a gated interface.
Right now adding a new component requires copy/paste hundreds of lines of boilerplate and there's plenty of room for side effects. A dev need to manually remember to set the right config like AutomountServiceAccountToken false, topology opinions...
We should refactor support/config and all the consumers in the CPO to enforce components creation through audited and common signature/interfaces.
Adding a new component is only possible through this higher abstractions
More Details
- If you ever had to add or modify a component to the control plane operator the need for this becomes very obvious. There should be possible o only add components manifest through a gated interface.
- Right now adding a new component requires copy/paste hundreds of lines of boilerplane and there's plenty of room for side effects
- blocks
-
HOSTEDCP-2004 Add a Mechanism to Label all Pods in the Control Plane Namespace
- In Progress
- is depended on by
-
HOSTEDCP-1571 CVO independent Hosted Control Plane upgrades
- In Progress
- links to