目标:我尝试创建一个预先测试的提交方法(首先运行带有测试的CI构建,然后将它们推送到“绿色”存储库,如果确定)
问题:分支远程运行触发器不起作用,并且TeamCity服务器不提取更改以运行构建。我不明白为什么会这样以及如何解决它。
描述:
我在一个TC项目中有两个配置。他们两个都看同一个git存储库但是不同的分支(默认)。共有3个分支:master(未在此处使用),develop(用于工作版本和绿色测试)和artemPersonal(用于个人构建)
refs/heads/artemPersonal
我尝试了不同的变化,如refs/heads/*
。
2.2我有一个设置VCS root的默认分支:refs/heads/artemPersonal
和空分支规范。我还尝试用一些值填充branc规范,但现在它是空的。我推送到refs/heads/artemPersonal
并期望TC运行Remote-Run触发器来拉动更改并开始下一次构建。它没有。待处理的更改显示在TC的UI上,但构建无法启动。手动工作正常。
teamcity-remote-run.log文件提供以下消息:
VCS根目录中的分支'refs / heads / artemPersonal''“WebSite开发预测试的提交”与branchSpec匹配,分支将被忽略
和
第一次运行buildType的触发器'WebSite :: WebUI开发Pre-Tested提交3个与模式匹配的分支。新提交或新匹配的分支将触发个人构建。
附:我知道解决方法不使用个人构建和分支远程运行触发器并使用简单的VCS触发器并仅检查artemPersonal
分支。但我想使用个人版本。
我想你用于个人构建的分支是refs / heads / artemPersonal。它不应出现在VCS Root的Default分支或Branch规范列表中。
要运行个人构建,您需要在要使用的每个构建配置上定义触发器。 (例如,要监视的分支模式= refs / heads / *)。在您的情况下,您可以使用WebUI Develop。
确保您在Team city和Git中拥有相同的用户名。