使用Microsoft MSBuild发布目标构建管道?

时间:2013-12-09 21:53:58

标签: tfs msbuild web-deployment publish-profiles msbuild-wpp

我正在尝试创建Build Pipeline。我很好奇我是否能够利用现有的Microsoft发布msbuild目标,或者我是否需要从头开始编写自己的目标。

我有一个大型网站网站项目(不是网络应用程序)。

构建管道如下:

  1. Checkin发生
  2. CI触发了名为01 Commit Stage
  3. 的构建
  4. 01 Commit Stage会自动触发02 Prepare for deployment
  5. 02 Prepare for deployment会自动触发03 UAT
  6. 以下是我希望在每个阶段发生的事情:

    • 01提交阶段
      • 构建所有项目文件
      • 运行单元测试
      • 该网站通过AspNet_Compiler
      • 运行
    • 02准备部署
      • 使用上一版本的输出
      • 然后通过AspNet_Merge.exe运行输出,将已编译的dll合并为一个版本化的程序集。
      • 将输出工件存储为可部署
    • 03 UAT
      • 上一步中的工件将部署到QA进行测试。

    我的问题是:

    In the second build, how do I skip the build target and simply point the existing Microsoft publishing pipeline to the existing output? Or would I just be better building my own set of MSBuild targets to do exactly what I need?

    到目前为止,我对建立自己的管道感到非常高兴,但不禁觉得我错过了一些MS的善良。

1 个答案:

答案 0 :(得分:1)

如果您使用的是TFS 2013,则可以使用内置的版本管理工具来定义要部署的环境,服务器和组件。然后,您可以获得完整的可跟踪性,批准和部署安排,以便通过环境进行二进制升级。

http://www.visualstudio.com/en-us/explore/release-management-vs.aspx

如果您使用的是TFS 2012,则可能需要更多帮助,因为如果没有发布管理工具,则可能需要帮助。但是,您可以使用基于Workflow的构建系统和LabDefaultTemplate来部署和测试环境。如果您不想这样做,我建议改用OctopusDeploy。

http://nakedalm.com/release-management-with-team-foundation-server-2012/

如果你在TFS 2005/2008,那么你很困难。唯一的支持是利用MSBuild的痛苦和痛苦进行部署或转到第三方工具。说实话,在这个位置,由于产品的使用年限,我建议升级到2012年然后再使用2013年。使用最新的工具......你仍然可以使用VS.old来构建和创建,但是你得到了新的编排和工具。

相关问题