Docker Hub 构建分支正则表达式匹配不是主
Docker Hub builds branch regex match not master
我正在使用 Docker Hub 自动构建来创建图像。我想要的行为是将对 master
的所有提交标记为 latest
,这很容易,并且还使用分支名称标记所有分支作为标记。
我有以下构建规则配置:
------------------------------------------
|Build Rules|Source |Docker Tag |
------------------------------------------
|Branch |master |latest |
------------------------------------------
|Branch |/^(?!master$).*/|{sourceref}|
------------------------------------------
主分支构建正常,但其他分支不触发构建。有谁知道实现这个的方法吗?
不幸的是,所使用的正则表达式匹配器不支持否定前瞻 (?!)。
这里有一个关于决定在默认 Go 正则表达式引擎中不支持前瞻的帖子:https://groups.google.com/forum/#!topic/golang-nuts/7qgSDWPIh_E
不幸的是,我想不出任何解决方法,除了遵循使用像 _
这样的通用前缀的约定
正则表达式是 <prefix>.*
所以如果你最终使用 _
那么它将是 _.*
PS:复制自
虽然正则表达式匹配器不支持否定前瞻,但您只需要更冗长一点。有 1000 种方法可以用正则表达式给猫皮,俗话说,"If it can't be done in regex, it can't be done."
/^([^m].....|.[^a]....|..[^s]...|...[^t]..|....[^e].|.....[^r]|.{0,5}|.{7,})$/
您可以在这里玩正则表达式:https://regexr.com/56v52
我正在使用 Docker Hub 自动构建来创建图像。我想要的行为是将对 master
的所有提交标记为 latest
,这很容易,并且还使用分支名称标记所有分支作为标记。
我有以下构建规则配置:
------------------------------------------
|Build Rules|Source |Docker Tag |
------------------------------------------
|Branch |master |latest |
------------------------------------------
|Branch |/^(?!master$).*/|{sourceref}|
------------------------------------------
主分支构建正常,但其他分支不触发构建。有谁知道实现这个的方法吗?
不幸的是,所使用的正则表达式匹配器不支持否定前瞻 (?!)。
这里有一个关于决定在默认 Go 正则表达式引擎中不支持前瞻的帖子:https://groups.google.com/forum/#!topic/golang-nuts/7qgSDWPIh_E
不幸的是,我想不出任何解决方法,除了遵循使用像 _
正则表达式是 <prefix>.*
所以如果你最终使用 _
那么它将是 _.*
PS:复制自
虽然正则表达式匹配器不支持否定前瞻,但您只需要更冗长一点。有 1000 种方法可以用正则表达式给猫皮,俗话说,"If it can't be done in regex, it can't be done."
/^([^m].....|.[^a]....|..[^s]...|...[^t]..|....[^e].|.....[^r]|.{0,5}|.{7,})$/
您可以在这里玩正则表达式:https://regexr.com/56v52