问题描述
我只是尝试按照 here 所述创建用于翻新的自定义预设。我的目标是禁止某些版本的依赖项。所以我像这样创建了一个 JSON 文件 my.json
:
{
"packageRules": [
{
"matchPackageNames": ["commons-logging"],"allowedVersions": "!/.*-does-not-exist$/"
}
]
}
当我们使用 bitbucket-server 时,我已将其放入一个名为 renovate-config
的存储库中,例如 XYZ
。我将一项服务的主分支上的 renovate.json
文件更改为:
{
"$schema": "https://docs.renovatebot.com/renovate-schema.json","extends": [
"config:base","local>XYZ/renovate-config//my"
]
}
不幸的是,renovate 没有解决这个问题。提供程序配置正确,renovate 与我们的 bitbucket-server 实例完全兼容,但它要么没有选择预设,要么其他任何地方出错。
欢迎任何帮助。
解决方法
好的。这是解决方案: 其实我的做法是对的。并检索并应用了预设。我只是在制定规则时犯了一个错误:
这有效:
{
"packageRules": [
{
"matchPackageNames": [".*:commons-logging"],"allowedVersions": "!/.*-does-not-exist$/"
}
]
}
请注意在包名称开头添加的 .*:
。对于 Maven 工件,这需要包含 groupId。
我还发现,在激活调试或跟踪日志记录时,很清楚会发生什么。