Build TeamCity VCS在多个VCS根连接到构建配置时触发

Build TeamCity VCS在多个VCS根连接到构建配置时触发,build,continuous-integration,teamcity,teamcity-8.0,Build,Continuous Integration,Teamcity,Teamcity 8.0,我在TeamCity(TeamCity Professional 8.1.5(Build 30240))中有一个构建配置,附带两个VCS根。VCS根指向独立的存储库 此生成配置有一个VCS触发器,配置为在每次签入时触发项目,而不指定静默期。问题是,此触发器似乎不起作用,因为生成仍处于挂起状态 已添加触发器规则:“+:root=VCSId_ProjectA:*”,以便对“ProjectB”所做的更改不会调用触发器。当只有一个VCS根连接到构建配置时,该触发器已经过测试,并且按照预期工作 触发器已经

我在TeamCity(TeamCity Professional 8.1.5(Build 30240))中有一个构建配置,附带两个VCS根。VCS根指向独立的存储库

此生成配置有一个VCS触发器,配置为在每次签入时触发项目,而不指定静默期。问题是,此触发器似乎不起作用,因为生成仍处于挂起状态

已添加触发器规则:“+:root=VCSId_ProjectA:*”,以便对“ProjectB”所做的更改不会调用触发器。当只有一个VCS根连接到构建配置时,该触发器已经过测试,并且按照预期工作

触发器已经通过轮询ProjectA存储库和ProjectA的POST钩子进行了测试。两种结果是相同的。(我甚至尝试过从ProjectA存储库发送多个POST钩子来声明ProjectA和ProjectB已经更改,毫不奇怪,这个绝望测试也不起作用)

其中一个VCS根的签出规则为:“+:.=>.ProjectB”。这是为了确保ProjectB不在ProjectA的根目录中,而是一个子目录。手动启动挂起的生成时,两个存储库都会正确地从中获取

两个VCS根都是为功能分支配置的,但是,删除分支规范也不会影响结果


以前是否有人遇到过类似的问题并能够提供一些建议?

这可能会有所不同,也可能不会,但签出规则应使用斜杠“+:.=>。/ProjectB”,如中的示例所示

另外请注意,在未触发生成的情况下,您仍将在此生成配置中看到挂起的更改。当ProjectB中有更改,但ProjectA中没有更改时,就会发生这种情况


如果上面没有回答这个问题,并且为了更好地理解这个配置,在没有相应触发规则的情况下拥有额外的VCS根的目的是什么?

我有非常相同的配置:2个VCS根。
我需要触发第一个VCS根目录的主分支并运行构建。
如果检测到签入,它将签出第二个VCS根并运行生成。

将此行添加到VSC根触发器规则有助于我:
+:root=VCS\u root\u id:*

没有
:**

TeamCity v9.1.3