Visual studio 使用Gulp生成的文件构建VSTS

Visual studio 使用Gulp生成的文件构建VSTS,visual-studio,msbuild,gulp,azure-devops,Visual Studio,Msbuild,Gulp,Azure Devops,我目前有一个VSTS构建,它接受Visual Studio解决方案,并使用以下构建参数构建它(C#): /p:DeployOnBuild=true/p:WebPublishMethod=Package/p:PackageAsSingleFile=true/p:SkipinValidConfiguration=true/p:UseMerge=true/p:PrecompileBeforRepublich=true/p:SingleAssemblyName=AppCode“ 我还有各种吞咽任务,这些

我目前有一个VSTS构建,它接受Visual Studio解决方案,并使用以下构建参数构建它(C#):

/p:DeployOnBuild=true/p:WebPublishMethod=Package/p:PackageAsSingleFile=true/p:SkipinValidConfiguration=true/p:UseMerge=true/p:PrecompileBeforRepublich=true/p:SingleAssemblyName=AppCode“

我还有各种吞咽任务,这些任务接收前端文件并将它们(lint、minify、bundle等)作为此构建的一部分进行操作。问题是,从解决方案构建步骤创建的zip不包含这些分发文件(或解决方案中未包含的任何文件)


一般来说,签入分发文件不是一个好主意,您需要将其作为生产构建的一部分生成。有人能告诉我如何生成这些文件的正确方向吗(构建正在为这一步工作)-和-将它们作为解决方案构建的一部分生成的zip文件的一部分包含?

要将Gulp生成的文件包含到web应用程序包zip文件中,您可以将web应用程序包文件放在另一个目录中(例如
$(build.binariesdirectory)
)在执行所有Gulp任务之后,您可以将Gulp生成的文件添加到
$(build.binariesdirectory)
。然后从
$(build.binariesdirectory)
压缩文件并发布工件

详细设置如下:

  • 在VS生成任务中,将MSBuild arrguments更改为:

    /p:OutDir="$(build.binariesdirectory)\\"
    
  • 添加任务(PowerShell任务或复制文件任务等)以将Gulp生成的文件复制到
    $(build.binariesdirectory)

  • 将存档文件任务添加到zip文件,从
    $(build.binariesdirectory)
    $(build.ArtifactStagingDirectory)
    ,如下示例:


  • 现在,zip文件不仅包含web应用程序的包文件,而且还包含Gulp生成的文件。

    您可以在一个驱动器中共享您构建的项目(作为包含nodejs和Gulp的web项目)吗?您的构建定义是什么?以及“分发文件”是什么意思?Gulp生成的生产文件,即分发文件。您只会将发行版、生产就绪的文件部署到生产,而不是开发文件。在绑定到zip文件并最终发布到Azure之前,该定义有许多步骤来构建和测试所有内容。