feat: support extra catalog index images for Extensions UI [RHIDP-12933]#4655
Conversation
|
Skipping CI for Draft Pull Request. |
install-dynamic-plugins to parse and extract multiple catalog index images [RHIDP-12933]install-dynamic-plugins to support extra catalog index images [RHIDP-12933]
…12933] The Extensions UI currently only displays plugins from the primary CATALOG_INDEX_IMAGE. Organizations that maintain plugins across separate registries (e.g., community vs partner catalogs) have no way to surface all of them without rebuilding a single monolithic index. Introduce EXTRA_CATALOG_INDEX_IMAGES so that additional catalog index images can be listed (comma-separated). Each image's catalog entities are extracted to an isolated subdirectory under the extensions volume, making those plugins visible in the Extensions UI without affecting the primary index's dynamic-plugins.default.yaml. Ref: https://issues.redhat.com/browse/RHIDP-12933 Assisted-by: Claude
76e5126 to
2ea5ad5
Compare
install-dynamic-plugins to support extra catalog index images [RHIDP-12933]Prevent an extra catalog index entry like 'catalog-entities=<image>' from overwriting the primary index's catalog entities by extracting all extra images under a dedicated extra/ parent directory. Ref: https://issues.redhat.com/browse/RHIDP-12933 Assisted-by: Claude
The overwrite warning was printed before the extraction header line, making it look like it related to the previous entry. Move it into extract_extra_catalog_index() so it appears right after the header, clearly associating it with the entry being processed. Ref: https://issues.redhat.com/browse/RHIDP-12933 Assisted-by: Claude
…to-parse-and-extract-multiple-catalog-index-images
|
/test |
|
/agentic_review |
Code Review by Qodo
1. Unsafe extra dir name
|
|
/test e2e-ocp-helm |
…to-parse-and-extract-multiple-catalog-index-images
|
New changes are detected. LGTM label has been removed. |
|
|
Re-applying lgtm label as it was previously approved. I've only merged main to retrigger the E2E tests. |
10eb2c3
into
redhat-developer:main



Description
This PR introduces a new
EXTRA_CATALOG_INDEX_IMAGESenv var in theinstall-dynamic-plugins.pyscript, so that additional catalog index images can be listed alongside the primary CATALOG_INDEX_IMAGE.This is a comma-separated list of images.
Each extra image's catalog entities are extracted to an isolated sub-directory in the
/extensionsextraction dir, making those plugins automatically discoverable in the Extensions UI.Notes:
CATALOG_INDEX_IMAGEis considered primary source for extracting and handling thedynamic-plugins.default.yaml(DPDY). Extra catalog images contribute catalog entities only, since there is no use case yet for supporting multiple DPDY files<extraction_dir>/extra/, which should prevent entries from accidentally overwriting the primary index's catalog entitiesname=<image_ref>and plainimage_refformats: explicit names produce cleaner directory names (e.g.,/extra/community/), while plain refs auto-derive namesAssisted-by: Claude
Which issue(s) does this PR fix
PR acceptance criteria
Please make sure that the following steps are complete:
How to test changes / Special notes to the reviewer
Try running the install-dynamic-plugins script locally after setting the
EXTRA_CATALOG_INDEX_IMAGESenv var.You can also deploy the image from this PR with the
EXTRA_CATALOG_INDEX_IMAGESenv var in the install-dynamic-plugins container:Logs
And in the
/extensionsdir: