【问题标题】:Branch Remote Run Trigger doesn't run on Teamcity分支远程运行触发器不在 Teamcity 上运行
【发布时间】:2014-09-17 12:16:52
【问题描述】:

目标:我尝试创建一个 Pre-Tested Commits 方法(首先运行带有测试的 CI 构建,如果可以,然后将它们推送到“绿色”存储库)

问题:分支远程运行触发器不起作用,TeamCity 服务器不会拉取更改来运行构建。我不明白为什么会这样以及如何解决它。

说明:

我在一个 TC 项目中有两种配置。他们都监视相同的 git 存储库但不同的分支(默认情况下)。总共有 3 个分支:master(此处未使用)、develop(用于工作构建和绿色测试)和 artemPersonal(用于个人构建)

  1. WebUI 开发。仅将 refs/heads/develop 分支用于绿色存储库。成功的个人构建后,新的提交从 TC 来到这个分支。
  2. WebUI 开发预测试提交。用途 refs/heads/artemPersonal 作为默认分支

    2.1 我有一个带有分支路径的分支远程运行触发器:refs/heads/artemPersonal 我尝试了不同的变体,例如 refs/heads/*.

    2.2 我有一个带有默认分支的 VCS 根:refs/heads/artemPersonal 和空的分支规范。我也尝试用一些值填充 branc 规范,但现在它是空的。

我推送到refs/heads/artemPersonal 并希望 TC 运行远程运行触发器来拉取更改并开始下一个构建。它没有。待处理的更改出现在 TC 的 UI 上,但构建没有开始。手动工作正常。

teamcity-remote-run.log 文件给出这样的消息:

在 VCS 根目录“网站开发”中的分支 'refs/heads/artemPersonal' Pre-tested Commits" 被 branchSpec 匹配,分支将被忽略

第一次运行 buildType 'WebSite :: WebUI develop 的触发器 预测试提交 3 个与模式匹配的分支。新提交或 新匹配的分支将触发个人构建

P.S. 我知道不使用个人构建和分支远程运行触发器并使用简单的 VCS 触发器并仅检查 artemPersonal 分支的解决方法。但我想使用个人版本。

【问题讨论】:

  • 你有没有让这个工作?我运行 TeamCity 8,但无法获取构建配置来检测我创建的任何分支(我按照文档中的简单步骤使用了默认的 'refs/heads/remote-run/*') .
  • 不,我没有。太长了,我不记得解决方法了。
  • 你不应该把它留在'refs/heads/remote-run/*',除非你的分支名称确实在那里。例如,我们要求分支名称为users/userName/BranchName,因此触发器中的值为:''refs/heads/users/*'。

标签: .net git testing continuous-integration teamcity


【解决方案1】:

我想您用于个人构建的分支是 refs/heads/artemPersonal。 它不应出现在 VCS 根目录的默认分支或分支规范列表中。

为了运行个人构建,您需要在要使用的每个构建配置上定义一个触发器。 (例如,要监控的分支模式 = refs/heads/*)。在您的情况下,您可以使用 WebUI Develop。

确保您在 Team city 和 Git 中使用相同的用户名。

【讨论】:

    猜你喜欢
    • 2018-09-09
    • 1970-01-01
    • 1970-01-01
    • 2023-03-18
    • 2016-05-19
    • 2016-10-29
    • 1970-01-01
    • 2013-07-25
    • 2019-01-17
    相关资源
    最近更新 更多