我如何能实现与TFS构建管道(How can I implement a build pipelin

2019-07-30 13:40发布

我尝试实现使用TFS构建管道。

我们已经有TFS建设我们的项目每次提交后。 但构建花费太长时间,所以我们想构建分为两个阶段。 持续集成的文献表明这种技术。

所以,我在找的是什么做到以下几点。

  • 在他的源代码开发人员的检查。
  • TFS会自动触发生成以编译代码并运行一些基本的测试(我们已经有了)。 开发商得到快速反馈自己的改变并没有碰坏明显。
  • 接下来,如果构建成功一个新的TFS任务/编译被触发,从前一阶段采取的文物,并运行一些比较耗时的测试。

任何想法如何实现这一点?

Answer 1:

1)编写侦听BuildCompleted事件的服务。 IIS web服务的示例代码 。 自托管的WCF示例代码 。 在事件处理程序,要么调用TFS生成API揭开序幕定义额外的任务单独生成类型,或者干脆从这里直接执行自定义代码。

2) 注册您的服务与TFS,增加了成功的构建服务器端过滤器 。



Answer 2:

目前,我们正在做这个使用<AfterEndToEndIteration>目标的MSBuild,和<Exec>荷兰国际集团TfsBuild.exe。

<Target Name="AfterEndToEndIteration">
  <PropertyGroup>
    <TfsBuildExecutable>C:\Program Files (x86)\Microsoft Visual Studio 9.0\Common7\IDE\TfsBuild.exe</TfsBuildExecutable>
    <CommandToTriggerNextStage>&quot;$(TfsBuildExecutable)&quot; start /server:$(TeamFoundationServerUrl) /buildDefinition:&quot;Project\Next Stage&quot; /queue</CommandToTriggerNextStage>
  </PropertyGroup>

  <Exec Condition=" '$(Status)'!='Failed' "
        Command="$(CommandToTriggerNextStage)" />    
</Target>


Answer 3:

你可以有你的中介,或轻微建立办理登机手续所产生的组件到源代码控制。 这样,你可以有其他的构建使用已编译的DLL的打包和构建系统的第二部分。

你可以有“做大”组装构建听签到从库构建和组装的建立依赖于一个。

确保你办理登机手续的二进制代码,但除非你在做一些奇怪的事情,你应该有足够的硬盘空间。



文章来源: How can I implement a build pipeline with TFS