Skip to content

feat: migrate lifecycle/support metadata to overlay repo for all supported plugins in downstream-plugins file RHIDP-7526 #1297

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Draft
wants to merge 3 commits into
base: main
Choose a base branch
from

Conversation

polasudo
Copy link
Contributor

@polasudo polasudo commented Aug 7, 2025

This pull request updates the documentation for supported and preinstalled dynamic plugins, making the lists more accurate and consistent. The main changes involve reordering, adding, and removing plugins from the lists, as well as updating plugin details and environment variables.

Assisted-by: Cursor

changes:

Header (schema) difference

  • Old (main):

    • "Name","Plugin","Role","Version","Support Level","Path","Required Variables","Default"
  • New (current):

    • "Name","Plugin","Role","Version","Support Level","Lifecycle","Path","Required Variables","Default"
    • Added column: Lifecycle (typically active, from spec.lifecycle)

    High-level changes

  • Data source switched: JSON wrappers ➜ YAML marketplace packages

  • One new column added: Lifecycle

  • Filtering:

    • Include only dynamic plugins (Path contains -dynamic)
    • Exclude oci:// entries - not sure if they should be there but during working on this task they were found there but i was not sure if they should be there also
    • Exclude @redhat packages at package scope - same as above
  • Required variables extracted from YAML spec.appConfigExamples[].content

  • Default state derived from dynamic-plugins.default.yaml

Plugin set differences

  • Removed (present in main, not in current):
    • @red-hat-developer-hub/backstage-plugin-quickstart
  • Added: none

Why removed: dynamic-only filtering quickstart does not have a dynamic wrapper, so it is excluded.

@nickboldt what u suggest should i return it or not ?

IMPORTANT: Do Not Merge - To be merged by Docs Team Only

Version(s):

Issue:

Preview:

…changes in plugin versions and configurations. Added new plugins, removed deprecated ones, and adjusted the structure for better clarity. Enhanced the script for generating supported plugins to accommodate YAML files and improved output formatting.

Co-author: cursor
@rhdh-bot
Copy link
Collaborator

rhdh-bot commented Aug 7, 2025

@polasudo polasudo changed the title feat: migrate lifecycle/support metadata to overlay repo for all supported plugins in downstream-plugins file RHIDP-12345 feat: migrate lifecycle/support metadata to overlay repo for all supported plugins in downstream-plugins file RHIDP-7526 Aug 8, 2025
* `@red-hat-developer-hub/backstage-plugin-marketplace`
* `@red-hat-developer-hub/backstage-plugin-quickstart`
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

this appears to be an on-by-default plugin. https://github.com/redhat-developer/rhdh/blob/main/dynamic-plugins.default.yaml#L628-L629

were you looking at an older branch?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

looks like it, i will double check it

@@ -67,7 +67,10 @@ titlecase() {
case $f in
aap) echo -n "Ansible Automation Platform (AAP) ";;
# UPPERCASE these exceptions
acr|cd|ocm|rbac) echo -n "${f^^} ";;
acr) echo -n "ACR ";;
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

why change this?

@@ -79,7 +82,11 @@ titlecase() {
sonarqube) echo -n "SonarQube ";;
techdocs) echo -n "TechDocs ";;
# Uppercase the first letter
*) echo -n "${f^} " ;;
*)
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

why 5 lines when a single line achieved the same thing?

Name=$(yq -r '.metadata.name' "$y")
Plugin_Title=$(yq -r '.metadata.title' "$y")

# Use the actual packageName from spec, fallback to name
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
# Use the actual packageName from spec, fallback to name
# Use .spec.packageName, or if not set use .metadata.name

if [[ $QUIET -eq 0 ]]; then echo " * [$c] $key [ community-plugins ] = ${csv[$key]}"; fi
echo -e "${adoc3[$key]}" >> "${0/.sh/.ref-community-plugins}";
echo -e "${csv[$key]}" >> "${0/.sh/.csv}"
# Process temporary files instead of associative arrays
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
# Process temporary files instead of associative arrays
# Process temporary files

echo -e "${adoc3[$key]}" >> "${0/.sh/.ref-community-plugins}";
echo -e "${csv[$key]}" >> "${0/.sh/.csv}"
# Process temporary files instead of associative arrays
for i in 1 2 3; do
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

if we're switching to files why not use target file names instead of adoc1.tmp and this 1 2 3 loop?

@@ -277,17 +308,22 @@ for j in $jsons; do

# TODO include missing data fields for Provider and Description - see https://issues.redhat.com/browse/RHIDP-3496 and https://issues.redhat.com/browse/RHIDP-3440

# Use temporary files instead of associative arrays
Copy link
Member

@nickboldt nickboldt Aug 8, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
# Use temporary files instead of associative arrays
# Use temporary files to allow sorting later

@nickboldt
Copy link
Member

Include only dynamic plugins (Path contains -dynamic)

this might be an error; only BACKEND plugins have the -dynamic folder suffix; front end ones do not. For example

@nickboldt
Copy link
Member

Why removed: dynamic-only filtering quickstart does not have a dynamic wrapper, so it is excluded.

But it exists here:

So I think the issue is there's no catalog entity for it? If so we need to add one.

…namic plugins and updated temporary file handling based on comments
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants