TFS构建定义 - 仅部署运行此应用程序所需的文件

时间:2016-09-02 15:22:23

标签: tfs msbuild web-deployment msdeploy release-management

我正在为构建和部署设置TFS 2015。我的工作正如我所期望的那样但是我开始注意到在TFS中发布的文件看起来与我在Visual Studio中右键单击并公开项目时发布的文件不同(即在VS中我的出版物不是包含.cs文件等。)。

在TFS中,我有构建步骤:

  • Visual Studio Build enter image description here

  • 复制文件(将构建文件复制到临时目录) enter image description here

  • 发布构建工件(转到文件共享位置,然后我将从中部署) enter image description here

我非常希望在构建步骤列表中看到Web-Deploy / MSDeploy(在Deploy下)。

有没有人遇到这个并弄清楚发生了什么?如果您需要有关我当前配置的更多详细信息,请与我们联系。

由于

****编辑****

好的,我一直在学习更多关于我期待看到的东西,似乎我需要我的构建来完成PreCompile。从我所看到的,我目前正在工作的项目是WAP,因此预编译为每个出版物的一部分。这会将代码(.cs文件)移动到相应的DLL中。

因此,我开始关注应用批处理脚本以启动ASP.NETs aspnet_compiler.exe以执行预编译的路线 - 但是我收到了与web.config有关的各种错误。

对于我可能期望TFS Build非常简单的事情,这开始变得非常痛苦。!!这是微软的事后!

1 个答案:

答案 0 :(得分:0)

在vNext构建中,使用“复制文件和发布构建工件”步骤发布构建工件。在推送到目标之前,尝试使用代理上的本地路径来复制任何工件。例如:

  1. 添加/ p:DeployOnBuild = true /p:OutDir="$(build.artifactstagingdirectory)\" Visual中的参数 Studio Build步骤;
  2. 更改"发布路径" Publish Build Artifacts任务的任务 $(build.artifactstagingdirectory)\_PublishedWebsites\ProjectName