-
Story
-
Resolution: Unresolved
-
Critical
-
None
-
None
-
3
-
False
-
-
False
-
-
-
RHDH Dynamic Plugins 3278, RHDH COPE 3279, RHDH COPE 3280, RHDH COPE 3281
Story
Enhance the RHDH installation script to allow explicit omission of tags/SHAs on OCI references for dynamic plugins, inferring the precise version from an included default plugin configuration.
Background
Currently, when enabling dynamic plugins in RHDH, the `dynamic-plugins.yaml` configuration requires explicit OCI references, including specific tags or SHAs, to lock in plugin versions. This approach creates a manual burden for customers who must update these plugin versions in the config map with every RHDH update.
To streamline plugin updates and better support productized plugins and air-gapped environments, the RHDH installation script needs to be modified to:
- Allow explicit tag omission on OCI references: When processing the `dynamic-plugins.yaml` configurations (both the merged default and customer-provided), the installation script should recognize an explicit token (e.g., an empty string, or a specific placeholder) indicating that the OCI reference for a dynamic plugin is provided without a tag or SHA. In such cases, the script will then match this tagless reference to a corresponding entry in an included yaml file (typically the `dynamic-plugins.default.yaml` file). The precise tag or digest specified for that plugin found in the included yaml file will then be used for the plugin's OCI reference. This allows customers to simply reference the plugin name in their configuration without needing to manage specific versions.
Benefits
- Simplified Plugin Updates: Customers will no longer need to manually update plugin versions in their config maps with every RHDH release. This significantly reduces the overhead and potential for errors during upgrades.
- Decoupled Plugin Releases: This change is crucial for decoupling plugin releases from the main RHDH release flow. Plugins can be updated independently of the core RHDH product, allowing for faster security fixes and feature enhancements.
- Improved Air-Gapped Deployments: By centralizing plugin versioning within a catalog (the included yaml file (typically the dynamic-plugins.default.yaml)), it becomes easier to manage and mirror plugins in air-gapped or disconnected environments, as the customer''s configuration remains stable and points to a well-defined version source.
- Consistent Versioning: Ensures that customers are running officially supported and compatible plugin versions for a given RHDH release, as defined by the provided default catalog.
Technical Details/Implementation Notes
- The included yaml file (typically the dynamic-plugins.default.yaml) will be included as part of the RHDH distribution, likely within a dedicated "catalog" container - see RHIDP-8210
- The existing installation script''s logic for merging `dynamic-plugins.yaml` files should be leveraged.
- The script must implement a mechanism to detect the explicit omission of a tag/SHA in the customer''s OCI reference.
- The script must then look up and apply the correct precise OCI tag/SHA from the included yaml file (typically the dynamic-plugins.default.yaml) when a plugin is referenced in this manner.
- Consider error handling for cases where a plugin referenced by the customer without a tag/SHA is not found in the included yaml file (typically the dynamic-plugins.default.yaml) or if there are conflicts.
Dependencies and Blockers
QE impacted work
Documentation impacted work
Acceptance Criteria
- RHDH installation script successfully processes OCI references where the tag/SHA is explicitly omitted.
- RHDH instances correctly load dynamic plugins using the precise version (tag or digest) specified in the included yaml file (typically the dynamic-plugins.default.yaml) when the tag/SHA is explicitly omitted by the customer.
- Documentation is updated to reflect this new behavior and recommended configuration for dynamic plugins.
- is blocked by
-
RHIDP-8210 publish plugin catalog index (scratch image)
-
- In Progress
-
- links to