-
Feature
-
Resolution: Unresolved
-
Critical
-
None
-
None
-
None
-
False
-
-
False
-
0% To Do, 100% In Progress, 0% Done
-
-
Goals
Users of the Progressive Delivery (Argo Rollouts) within OpenShift GitOps must have a proper way to inspect and control the various progressive delivery mechanisms. In upstream Argo Rollouts, this is performed using a kubectl plugin.
The goal of this feature is to provide our customers with a productized version of the Argo Rollouts kubectl plugin, which is easy to install and usable out of the box.
Requirements
| Requirements | Notes | IS MVP |
| The build of the Argo Rollouts kubectl plugin is integrated into our productization systems | Y | |
| The plugin is available for all architectures which we ship the Argo CD CLI for | Y | |
| Lifecycle of the plugin is synchronized to the lifecycle of the Operator | Y | |
| Plugin is easy to install and usable without any complex configuration from the user's side | Y | |
| Plugin functionality is integrated into our test suite | N | |
| Plugin's lifecycle management (install, upgrade, remove) and basic usage is documented (see doc considerations below) | Y |
Use Cases
- As a user of the OpenShift GitOps's rollouts feature, I want to be able to in-depth inspect the status of my rollout resources
- As a user of the OpenShift GitOps's rollouts feature, I want to be able to manually promote or abort a rollout
- As a user of the upstream Argo Rollouts project who is migrating to the Red Hat built and supported version, I don't want to learn a new interface other than the one I'm already using
Out of scope
- Any UI related work is out-of-scope and handled in https://issues.redhat.com/browse/SECFLOWOTL-101{}
- "argo rollouts dashboard" is out-of-the-scope of the downstream support of the CLI
Dependencies
NA
Background, and strategic fit
NA
Assumptions
Without the Argo Rollouts plugin, the functionality of our Progressive Rollouts feature is pretty limited. We assume that we can use the upstream plugin in a productized version 1:1 without any required changes.
Customer Considerations
Argo Rollouts CI is considered as the primary way for customers to interact with Argo Rollouts directly and through CI pipelines.
Documentation Considerations
Documentation should guide the user on how to:
- Install, upgrade and uninstall the plugin
- Perform basic tasks using the plugin (e.g. inspect a rollout resource, promote a rollout or abort a rollout currently in progress)
Furthermore, the documentation should link out to the upstream documentation for further reference.
What does success look like?
TBD
QE Contact
TBD
Impact
TBD
Related Architecture/Technical Documents
TBD
Done Checklist
- Acceptance criteria are met
- Non-functional properties of the Feature have been validated (such as performance, resource, UX, security or privacy aspects)
- User Journey automation is delivered
- Support and SRE teams are provided with enough skills to support the feature in production environment