【问题标题】:TeamCity failure condition compares branch build with some outdated branchTeamCity 失败条件将分支构建与一些过时的分支进行比较
【发布时间】:2016-06-16 14:20:18
【问题描述】:

我们设置了 TeamCity 的“失败条件”,如果代码覆盖率指标不好,则构建失败。确切的情况是在代码覆盖率指标下降几个百分点的情况下构建失败。

有时我们会构建一个第一次构建的分支。这些基本上是发布分支。我们只构建一次。

问题是 TeamCity 在构建新分支时失败了。它说,代码覆盖率很差。

在日志中,我看到 TeamCity 找不到我的分支以前的构建。事实上,它需要一些以前的构建来比较代码覆盖率,并且因为分支是新的而找不到它。结果它使用了一些“锚”分支进行比较

“Anchor”分支是一些旧的过时分支,具有更大的代码覆盖率。所以条件的评估是正确的。

问题是,如果我正在构建某个分支的第一个版本,我希望有以下行为之一:

  1. 禁用需要先前构建但缺少的代码覆盖率指标

  2. 使用一些有意义的“锚”构建进行比较,而不是一些我不清楚的方式选择的过时的构建。

我该如何解决?

【问题讨论】:

标签: teamcity code-coverage


【解决方案1】:

TeamCity 论坛上的人帮我解答了。

事实证明,TeamCity 正在尝试查找我们想要构建的分支的某个先前版本,以将指标与当前版本进行比较。如果找不到以前的构建它需要从默认分支进行一些构建。。在我们的例子中,它是来自另一个版本的某个分支,我们惊讶地看到指标的比较。

新分支的解决方案是将默认分支设置为具有零指标的一些测试分支,以便新构建始终具有更好的指标,或者在每次构建新分支时关闭指标。

【讨论】:

  • 您还可以创建多个具有不同默认分支和分支规范的 VCS 根
猜你喜欢
  • 2019-11-28
  • 1970-01-01
  • 1970-01-01
  • 2021-01-11
  • 2020-03-18
  • 2016-11-20
  • 2017-07-06
  • 2014-10-13
  • 1970-01-01
相关资源
最近更新 更多