在TFS中构建管道

时间:2012-05-18 17:04:41

标签: tfs continuous-integration jenkins

2009年,有SO question on the same topic

我想知道Team Foundation Server的更高版本是否更适合更长的构建管道。参考Jenkins,TeamCity,ThoughtWorks和#39;的功能。去(我的雇主)。

构建管道的可视化对我来说很重要,以及有关各个阶段通过或失败的通知。那就是说' trunk'的显着克隆能力。当分支跳跃成为一个发布分支的管道。

其次,个人的圣杯是CI服务器将其配置存储在SCM中,该配置包含可构建的东西本身,甚至可以默默地创建分支以提供新的管道;是否可以将TFS配置为在其SCM端存储CI定义/脚本而不是其随附的SqlServer?

2 个答案:

答案 0 :(得分:3)

TFS构建包含三个组件:

  1. 构建定义 - 存储在SQL Server数据层上。
  2. 构建工作流程 - 存储在源代码管理中的XAML文件。
  3. 支持MSBuild脚本 - 通常包含用户定义的操作,也存储在源代码管理中。
  4. 随着构建的进行,您可以看到构建步骤的可视化,并且您还可以获得主构建和MSBuild输出的不同日志。

    TFS中的构建定义仅仅是构建设置的集合,类似于CC.Net的配置文件和TeamCity的构建配置选项卡,它们也存储在文件系统中。假设数据库上有备份计划,您实际上不需要在源代码控制上存储构建定义,但是如果必须通过导出tbl_BuildDefinition表来实现它。

    TFS Power Tools为构建定义添加了克隆功能。

    虽然使用TFS-API相当可行,但是没有OOTB支持从新分支配置构建定义。

答案 1 :(得分:0)

派对迟到了,但如果你想要高级构建管道自动化,就不要打扰TFS。它根本不会削减它。

我广泛使用过Jenkins和TFS。 Tfs就是这样。纯。废话。这就是原因。

没有下行/上行版本。 没有piepline / orchestraion构建。 (像詹金斯) 添加构建步骤的模糊方法又回落到使用MsBuild。 慢,仍然轮询源控件。 把你和MsTest绑在一起。

请不要指我“哦,如果你写自定义活动,你可以做任何事情”。我不是在为一个封闭的源,低于标准的平台进行开发浪费时间。如果我要贡献一些东西,那就免费了。 OPEN SOURCE平台。