ARTICLE DETAIL

资讯详情

深耕编程入门与网站建设的一线实战洞察。

Renovate 怎么配置 prCreation 让测试通过后再创建 PR

Renovate 怎么配置 prCreation 让测试通过后再创建 PR Renovate 怎么配置 prCreation 让测试通过后再创建 PR【免费下载链接】renovateHome of the Renovate CLI: Cross-platform Dependency Automation by Mend.io项目地址: https://gitcode.com/GitHub_Trending/re/renovateRenovate 自动更新仓库依赖时默认的prCreationimmediate会在分支创建后立即开出 PR你得自己等 CI 结果出来才能判断是否合并。如果希望测试通过之后才出现 PR可以把配置项prCreation设为status-success。本文说明这个配置的写法以及如何验证配置生效并给出测试未全部通过时not-pending的替代行为。选择 prCreation 的取值prCreation决定 Renovate 何时创建 PR共有四个取值见 configuration-options.md取值行为immediate默认分支创建后立即创建 PRstatus-success所有测试通过后才创建 PRnot-pending等所有 status check 出结果通过或失败后创建 PRapproval分支立即创建PR 等 Dependency Dashboard 批准后创建对应测试通过后再创建 PR这个目标FAQ 给出两种选法只要测试全部通过才想要 PR设prCreation为status-success。测试失败的分支会留在 Git 里、按需更新Renovate 只在测试通过后创建 PR。测试跑完无论成败就想要 PR、拿到通知时能直接看到完整测试结果设prCreation为not-pending。在哪里配置Renovate 会从配置文件如renovate.json以及每个package.json中查找配置选项。在仓库的renovate.json中加入prCreation字段{ prCreation: status-success }如果你接受测试出结果含失败后再开 PR则改为{ prCreation: not-pending }验证配置所有 Renovate 发行版都包含独立的校验程序renovate-config-validator运行方式见 config-validation.md$ npx --yes --package renovate -- renovate-config-validator校验通过时文档给出的示例输出为INFO: Validating renovate.json INFO: Config validated successfully测试结束后的实际行为对所有非immediate的 PR 创建模式Renovate 并不会在测试完成的瞬间立刻动作而是在相关测试完成后的下一次运行时创建 PR因此存在一定的延迟。如果status-success模式下某个分支的测试失败该分支不会关联 PR但会保留在 Git 中并在需要时更新。你要把修复推送到该分支时操作路径是从 Dependency Dashboard 选中对应的 PR然后把修复推送到分支。这条路径依赖 Dependency Dashboard若未开启可配置启用见 dashboard.md{ dependencyDashboard: true }边界与已知限制not-pending可能一直不创建 PR没有任何外部 status check 的分支会一直被报告为pending于是not-pending永远等不到检查完成只能回退到prNotPendingHours默认 25 小时。该计时从分支的最新 commit起算rebase、重新锁定等操作都会重置计时如果仓库的分支被 rebase 或 re-lock 的频率高于这个阈值PR 会被无限推迟。这在 CI 只在pull_request事件上运行时尤其常见因为裸 Renovate 分支上根本没有检查。文档给出的应对如果你依赖minimumReleaseAge/internalChecksFilter来实现等待行为设internalChecksAsSuccesstrue让绿色的内部稳定性检查也算作成功否则改用prCreationimmediate。minimumReleaseAge非零时prNotPendingHours功能会被禁用。避免同时设置rebaseWhennever和prCreationnot-pending文档指出该组合可能导致 PR 无法创建。若使用prCreationapproval必须不要同时使用dependencyDashboardApprovaltrue。相关文档prCreation选项说明Minimum Release Age说明internalChecksFilter与prCreation的配合Dependency Dashboard【免费下载链接】renovateHome of the Renovate CLI: Cross-platform Dependency Automation by Mend.io项目地址: https://gitcode.com/GitHub_Trending/re/renovate创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
返回列表