我想阻止Renovate对某些依赖项进行重大升级,但仍允许对这些依赖项进行次要升级和补丁升级。使用ignoreDeps完全排除它们,这不是最佳的。我还需要在一个 Gitlab 合并请求中获得每次运行的所有建议升级,因此使用单独的matchUpdateTypes组不适合我的用例。
有没有办法实现我正在寻找的东西?
使用 Angular 14 的项目中的具体示例,Renovate 不应尝试升级到 15,但仍为我提供最新的 14.x 升级:
"@angular/router": "14.2.7", // what I have now
"@angular/router": "14.2.10", // what should be suggested
"@angular/router": "15.0.0", // what should be avoided
Run Code Online (Sandbox Code Playgroud)
我在所有存储库中的一般包规则如下所示:
"packageRules": [
{
"groupName": "all dependencies",
"groupSlug": "all",
"matchPackagePatterns": [
"*"
],
"matchUpdateTypes": [
"major",
"minor",
"patch"
]
}
],
Run Code Online (Sandbox Code Playgroud)
我在renovate.json每个存储库的文件中指定要忽略的特定依赖项,如下所示:
{
"$schema": "https://docs.renovatebot.com/renovate-schema.json"
"ignoreDeps": [
"@angular/router"
]
}
Run Code Online (Sandbox Code Playgroud)
但这会阻止所有更新。我尝试过使用该架构,但这完全忽略了配置:
// BROKEN
{
"$schema": "https://docs.renovatebot.com/renovate-schema.json"
"major": {
"ignoreDeps": [
"@angular/router"
]
}
}
Run Code Online (Sandbox Code Playgroud)
并且覆盖packageRules回购级别也没有成功。
你可以尝试这样的事情:
"packageRules": [
...
{
"matchPackageNames": ["@angular/router"],
"allowedVersions": "<15.0.0"
},
...
]
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2420 次 |
| 最近记录: |