Skip to content

Fix path construction in update-plugins-repo-refs to prevent doubled prefixes #3558

Description

@fullsend-ai-triage

Problem

The update-plugins-repo-refs.yaml workflow has a bug in its plugin path construction logic that produced a doubled prefix: plugins/catalog-backend-module-catalog-backend-module-ai-resource-extensions instead of the correct plugins/catalog-backend-module-ai-resource-extensions.

This was observed in PR #3548 updating the ai-integrations workspace. The upstream diff between old and new refs only touched kserve-kubeflow-connector-backend — no new plugin was added — yet the workflow generated a new bogus entry.

Root cause hypothesis

The workflow constructs plugins-list.yaml paths from npm package metadata (e.g., repository.directory or npm package name). The likely cause is that the path derivation logic does not properly normalize or deduplicate path components when the npm package name already contains the prefix that the logic prepends (e.g., @red-hat-developer-hub/backstage-plugin-catalog-backend-module-ai-resource-extensions → the catalog-backend-module- segment gets added again).

Fix

Investigate the path construction logic in .github/workflows/update-plugins-repo-refs.yaml and any scripts it invokes. Fix the derivation to avoid doubling path components.

Complementary work

Issue #3060 proposes validating that plugin directories exist at the pinned commit before adding them to plugins-list.yaml. That validation would catch this class of bug generically as a safety net.

Note

This fix requires changes to GitHub Actions workflow files (.github/workflows/). The code agent cannot modify workflow files under current permissions — manual intervention is needed.

Split from #3555.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions