VSTS Build不删除Web应用程序的所有文件

时间:2016-10-18 11:09:44

标签: tfs azure-devops azure-pipelines-release-pipeline

当我开始编写这个问题时,我的问题是在成功构建VSTS之后,我无法查看与我的Web应用程序项目相关的文件以供发布。仅存在解决方案中某些其他项目的文件。但是,我刚刚遇到this question,这有帮助。

我现在可以在更改Build中 Content 设置的配置(即该项目下Bin文件夹的内容)后,查看我的Web应用程序项目的已编译.dll文件。但我无法看到将构建的Web应用程序复制到我的服务器所需的其他文件 - 视图,脚本,CSS等。

我发现VSTS的构建和发布功能的强大功能和灵活性非常混乱,因为它对我们的要求完全矫枉过正。到目前为止,我刚刚右键单击Visual Studio中的Web应用程序项目选择了Publish并使用了文件系统发布方法。简单。现在我想要自动构建和部署应用程序,它的复杂性要高出许多倍!

那么,任何人都可以告诉我如何以这样的方式获得构建VSTS的解决方案,然后我可以使用Release Definition中的Copy Files任务将文件复制到我们的Web服务器(服务器不是&#39 ;互联网可见,所以我使用本地托管的代理商?)

2 个答案:

答案 0 :(得分:3)

在vNext构建中,使用“复制文件”或“发布构建工件”步骤发布构建工件。尝试在将任何工件复制到的代理上使用本地路径,然后再将其推送到目标位置。例如:

  1. 添加/ p:DeployOnBuild = true / p:OutDir = Visual中的“$(build.art件stagingdirectory)\”参数 Studio Build步骤;
  2. Publish Build Artifacts任务的“发布路径”更改为 $(build.artifactstagingdirectory)\_PublishedWebsites\ProjectName
  3. 详细信息请使用此问题检查构建步骤的屏幕截图:How do I get the the expected output from a TFS 2015 build (to match my XAML build)?

答案 1 :(得分:0)

根据您的评论,您已从Visual Studio发布了该Web应用程序。通常,此操作将在Project / Properties / PublishProfiles文件夹下生成发布配置文件。您用于发布Web应用程序的设置存储在配置文件中。因此,您只需确保将此发布配置文件签入源代码管理中。然后在TFS构建中,添加以下MSBuild参数:

/p:DeployOnBuild=true /p:PublishProfile="publishprofile.pubxml"