我们有一个我认为是相当标准的构建过程:
1. 开发者: checkin 代码
2. 构建:轮询 repo,查看变化,并开始构建:
3. 构建:来自 repo 的更新,使用 MSBuild 构建,使用 nunit 运行单元测试,
4. Build:创建安装包
我们的安全团队允许我们从构建服务器拉取数据,但不允许构建服务器推送。所以我们通常 rdp in,d/l 安装程序,然后运行它们,这排除了光滑的部署服务,所以我需要生成包。我想使用 MSDeploy,除了我们有以下问题:
有什么建议么?
最佳答案
如果您的应用程序没有使用 Visual Studio 2010,那么我建议您选择以下选项之一:
让我再解释一下。
选项 1
MSDeploy 本身不依赖于 MSBuild,因此您可以在构建服务器上自行安装它来为您创建包。您可以从 here 下载它.之后,您可以使用 Exec 创建一个 MSBuild 部署脚本。使用命令调用 msdeploy.exe 来创建包的任务。
关于第二个选项
.targets 文件以及 MSDeploy 的任务不是使用 .NET 框架部署的,而是使用 Visual Studio 2010 本身部署的。因此,如果您想利用其中任何一个,您必须在构建服务器上安装 VS 2010。
您提到使用包 目标在你的帖子里。您将无法使用它,因为该目标是 .NET 4 项目的更大构建过程的一部分。您可以做的是创建一个单独的 MSBuild 文件(与您的项目文件不同),它使用 MSBuild 4 调用 任务 与 VS 2010 一起提供的 Web 部署。
在这里我专门回答你的编号列表
关于msbuild - 让 MSDeploy 在我们的构建/集成服务器上工作 - 是否需要升级 MSBuild?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2608594/