Jenkins能否为构建提供TFS门控签入代码?

问题描述 投票:3回答:1

我试图让詹金斯拉TFS门控签入代码,但没有这样做。

我已经设法在TFS中添加了一个Jenkins构建步骤,这个构建步骤是在Jenkins中启动构建作业的“触发器”,这个作业从TFS获取源代码并编译它,问题是这段代码没有门控报到。

例如:

  1. 我的代码库是“A”,编译工作正常。
  2. 我正在推动新的更改(让我们称之为“B”delta)应该打破构建(无效的c#语法)。
  3. 这会在TFS中触发一个调用Jenkins作业的构建,这个作业只占用“A”代码(没有“B”delta)。
  4. Jenkins精心构建代码(仅基于“A”),然后TFS将此构建标记为succsusfully,并将坏的“B”delta代码放入其中。
  5. 现在每个更改集包括对此的修复将导致下一个构建中断,因为jenkins将采用错误的“B”代码并始终失败。

有没有办法让Jenkins使用当前的门控签名来获取代码?

我想使用Jenkins构建而不是TFS的原因是,Jenkins中.Net Core 2.0的构建过程比TFS快了大约X4,我们的源代码控制在TFS中管理。

使用:TFS - 版本15.117.26714.0

jenkins tfs build tfsbuild tfs2017
1个回答
0
投票

要避免此问题,可以在队列Jenkins作业任务之前添加VS Build任务:

enter image description here

© www.soinside.com 2019 - 2024. All rights reserved.