关于 rhdh-overlay
此工作流技能用于维护 redhat-developer/rhdh-plugin-export-overlays 中的插件目录打包与 overlay 仓库操作。它按仓库流程处理插件接入、元数据更新、构建故障排查、PR 分析和受控发布。
主要功能
- 01插件接入与更新
- 02Overlay 元数据查询
- 03导出和发布故障诊断
- 04工作区与 CI 状态检查
- 05PR 分类与分析
- 06受控发布流程
适用场景
- 01在 overlay 工作区接入插件
- 02查询插件包版本和安装产物
- 03排查导出或发布失败
- 04检查 overlay PR 和工作区状态
安装
复制下面的命令,在终端中运行。
npx skills add https:/ / github.com/ redhat-developer/ rhdh-skills --skill rhdh-overlay安装后在 Claude Code 中输入/rhdh-overlay确认已加载。
包含的文件
除 SKILL.md 外,安装时一起下载的参考资料和脚本。
agents/openai.yamlreferences/ci-feedback.mdlabel-priority.mdmetadata-format.mdoverlay-repo.mdrhdh-local.mdscripts/analyze-pr.pytriage-prs.pytemplates/workspace-files.mdworkflows/analyze-pr.mddoctor.mddraft-notification.mdfix-build.mdonboard-plugin.mdtriage-prs.mdupdate-plugin.md详细介绍
RHDH Overlay
负责目录打包和覆盖层仓库操作。请在远程仓库标识为
redhat-developer/rhdh-plugin-export-overlays 的检出目录中操作;不要依赖其他已安装技能的文件或 CLI。
从这里开始
- 阅读仓库说明并运行
gh auth status。 - 使用
git remote -v确认检出目录和远程仓库。 - 修改元数据前,检查目标工作区、相似工作区以及相关 PR 或 CI 日志。
- 遇到环境问题时,遵循
workflows/doctor.md。
根据目标选择流程
| 目标 | 加载并遵循 |
|---|---|
| 接入插件 | workflows/onboard-plugin.md |
| 更新源版本或提交 | workflows/update-plugin.md |
| 诊断导出或发布失败 | workflows/fix-build.md |
| 查询分支或标签上的插件版本或安装制品 | 遵循下方的元数据查询流程 |
| 检查工作区状态 | references/overlay-repo.md,然后检查工作区文件和近期的 gh 运行记录 |
| 分类待处理的开放 PR | workflows/triage-prs.md;使用 scripts/triage-prs.py 进行确定性分类 |
| 分析单个覆盖层 PR | workflows/analyze-pr.md;使用 scripts/analyze-pr.py |
| 起草过期 PR 通知 | workflows/draft-notification.md |
| 触发发布 | 运行下方的受保护发布流程 |
推断明确的处理流程。只有当插件、工作区、源引用或 PR 编号缺失且无法从检出目录中发现时,才提出询问。
元数据查询
所有读取操作均使用请求中指定的覆盖层分支或标签;若未指定,则使用 main。在该引用下读取 catalog-entities/extensions/plugins/<plugin-name>.yaml,解析 spec.packages,然后在同一引用下的工作区 metadata/ 目录中查找每个 Package 实体。报告这些实体中的 spec.packageName、spec.version 和 spec.dynamicArtifact。在覆盖层检出目录中使用 git show <ref>:<path>;如果引用或元数据缺失,应报告缺失情况,不要回退到 main。阅读 references/metadata-format.md 了解实体字段。
不变要求
- 每项导出都在覆盖层仓库中配置;导出由 CI 执行。
source.json中的repo-backstage-version是上游源的实际 Backstage 版本。backstage.json中的version是 RHDH 兼容性覆盖值。两者绝不可混用。- 根据上游和生成的元数据推导软件包和引用;绝不可编造 OCI URL。
- 如果仓库惯例与本技能的示例不同,应参考当前相似工作区的结构。
- 合并前,测试确切的 PR 制品。对于已加载的插件,身份验证错误可能可以接受;安装或启动错误则不可接受。
受保护的发布流程
发布前,确认 PR 处于开放状态、不含 do-not-merge,且当前 head 没有成功的发布检查。发布评论属于外部写入:调用名为 mutation-gate 的技能,并遵循该技能负责的门禁流程,不要在此重复说明。
只陈述一项操作。其目标为
redhat-developer/rhdh-plugin-export-overlays#<number>@<head-sha>,预览正文为 /publish,前置条件为上述三项检查;如果触发错误,应报告需要手动删除的评论。只有在用户批准所述操作后,才能运行:
gh pr comment <number> --repo redhat-developer/rhdh-plugin-export-overlays --body "/publish"
报告评论和发布检查的 URL,或报告失败及所需的恢复操作。请求触发发布意味着获准读取 PR,并不代表批准此写入操作。
其他外部写入
同一门禁适用于工作流涉及的所有推送、PR 创建、通知或其他外部写入。只有在目标和内容明确后才陈述操作;未经批准的操作一律不得执行,并报告每项操作的结果,包括被跳过的操作。只读的分类和分析无需通过门禁。
调用者需提供的信息
调用者通过名称调用此技能,并说明源代码仓库、源引用(提交或标签)、软件包、上游 Backstage 版本以及目标 RHDH 版本。
此技能报告的内容
- 工作区及其中的变更:源引用、软件包、元数据文件
- CI 和本地验证的证据,以及跳过的检查及其原因
- 拉取请求 URL,或说明未创建拉取请求
- 发布状态:未请求、待处理、通过或失败
- 每项已获批准的外部写入操作的结果
- 剩余的兼容性风险
如需进行本地验证,请按名称调用 /rhdh-local,并向其提供确切的制品引用、插件配置、具名环境变量以及要运行的检查。不要加载本地技能的文件。
完成标准
只有当报告涵盖工作区和元数据变更、运行的命令和脚本、CI 和本地验证的证据、每项已获批准的写入操作的结果、发布状态以及剩余的兼容性风险时,才算完成。