3

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

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

构建管道如下:

  1. 签到发生
  2. CI触发构建调用01 Commit Stage
  3. 01 Commit Stage自动触发02 Prepare for deployment
  4. 02 Prepare for deployment自动触发03 UAT

这是我希望在每个阶段发生的事情:

  • 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 的优点。

4

1 回答 1

1

如果您使用的是 TFS 2013,您可以使用内置的发布管理工具来定义要部署的环境、服务器和组件。然后,您可以获得完整的可追溯性、批准和部署计划,以便通过环境进行二进制推广。

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

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

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

如果您在 TFS 2005/2008 中,那么您将陷入困境。唯一的支持是使用 MSBuild 的痛苦和痛苦来进行部署或使用第三方工具。老实说,在这个职位上,由于产品的年龄,我建议升级到 2012 年,然后是 2013 年。使用最新的工具......你仍然可以使用 VS.old 来构建和创建,但你会得到新的编排和工具。

于 2013-12-11T11:36:48.617 回答