我已经设置了自我更新的机器人。由于linuxserver.io有不同的创建docker标签的模式,我将切换到regex。
{
"$schema": "https://docs.renovatebot.com/renovate-schema.json",
"extends": [
"config:base",
"docker:enableMajor"
],
"packageRules": [
{
"packagePatterns": ["^ghcr.io\\/linuxserver\\/"],
"versionScheme": "regex:MYFANCYREGEX"
}
]
}
但我需要你帮我把正则表达式安装好。我用unittest和example创建了一个regex 101-here
100.200.300
100.200.300.7068-ls170
v100.200.300-ls213
version-100.200.300
version-100.200.300-ls180
version-100.200.300.11111
100.200.300.7068-ls170
nigthly-100.200.300 -> not stable, no match
nightly-100.200.300.3604-ls587 -> not stable, no match
100.200.300-development -> not stable, no match
100.200.300-develop -> not stable, no match
100.200.300-nigthly -> not stable, no match
我无法排除包含->(?!或^)
我应该如何更改正则表达式以仅获取稳定版本和映像更新(ls/buildnumbers)
1条答案
按热度按时间64jmpszr1#
我会使用这个正则表达式(使用x标志以提高可读性):
在这里更新您的regex101案例研究:https://regex101.com/r/KQZykk/4
如果你不能使用x标志,那么就使用我在这里添加的未注解版本:https://regex101.com/r/KQZykk/5
PS:为了从注解的正则表达式传递到未注解的正则表达式,我创建了一个小工具,你可以在这里访问:https://codepen.io/patacra/pen/wvQBxjq