VSO复制网站静态文件和二进制文件(不是C#文件)

时间:2016-01-06 00:59:57

标签: continuous-integration azure-devops

我正在尝试使用Visual Studio在线设置我的服务器上的持续集成。

创建了新的代理池。 安装并配置了我添加到该代理池的新构建代理。 然后我触发一个新的代码构建,以便在我的代理池中处理。

我设法构建它但是如何设置任务“复制和发布构建工件”。

我的目标是复制最终的网站文件,例如二进制文件,图像,cshtml,但不是所有文件,如c#文件。有点像视觉工作室中的“右键单击>发布”操作。

我需要在“复制根目录”字段中输入什么值? (请参见下图)

enter image description here

1 个答案:

答案 0 :(得分:1)

文档位于:https://msdn.microsoft.com/en-us/Library/vs/alm/Build/scripts/variables

这一切都归结为二进制文件的输出路径。如果您没有通过MSBuild参数覆盖它,$(Build.SourcesDirectory)的值**\bin\*可能会让您获得自己所拥有的内容。

对于Web应用程序,请确保使用适当的MSbuild参数构建(/p:OutDir=$(build.stagingDirectory) /p:DeployOnBuild=true /p:WebPublishMethod=Package /p:PackageAsSingleFile=true /p:SkipInvalidConfigurations=true的某些内容应该可以解决)。这会在_PublishedWebsites中为您提供$(Build.StagingDirectory)文件夹。

然后您需要做的就是发布$(Build.StagingDirectory)的复制根目录和**\_PublishedWebsites\*的内容

请注意,发布构建工件意味着将构建工件发布到VSTS或文件共享 ,而不是将构建工件发布到网络服务器