从VisualStudioTeamServices将Gulp构建文件夹部署到Azure
我刚开始在我的一个项目中使用VSO。我已经创建了构建定义,构建是成功的。当我试图为构建的版本创建发布定义时,抛出了错误,失败了从VisualStudioTeamServices将Gulp构建文件夹部署到Azure,azure,azure-devops,release-management,azure-pipelines,Azure,Azure Devops,Release Management,Azure Pipelines,我刚开始在我的一个项目中使用VSO。我已经创建了构建定义,构建是成功的。当我试图为构建的版本创建发布定义时,抛出了错误,失败了 System.Management.Automation.RuntimeException: No files were found to deploy with search pattern C:\a\858bddd5b\**\*.zip 它需要.zip文件。因为我需要部署由gulp build创建的分布式文件夹,所以我将Web部署包路径指定为 $(System.D
System.Management.Automation.RuntimeException: No files were found to deploy with search pattern C:\a\858bddd5b\**\*.zip
它需要.zip文件。因为我需要部署由gulp build创建的分布式文件夹,所以我将Web部署包路径指定为
$(System.DefaultWorkingDirectory)/{built name}
非常感谢您的帮助您应该添加一个构建步骤,为gulp步骤的输出文件夹创建一个扩展名为.zip的存档。您的步骤应该是 VSO/VSTS build有一个任务可用于
归档文件
,以实现相同的功能
或者,如果标准存档文件步骤不适用于您,您可以使用powershell步骤。powershell命令如下所示
[io.compression.zipfile]::CreateFromDirectory($Source, $Destination)
- 源应该是您希望部署的gulp输出中的所有文件/文件夹
- 此处的目的地应与webdeploy/WebApp部署步骤的输入相对应
归档文件
,以实现相同的功能
或者,如果标准存档文件步骤不适用于您,您可以使用powershell步骤。powershell命令如下所示
[io.compression.zipfile]::CreateFromDirectory($Source, $Destination)
- 源应该是您希望部署的gulp输出中的所有文件/文件夹
- 此处的目的地应与webdeploy/WebApp部署步骤的输入相对应
您也可以使用此扩展名创建ZIP文件。我用它来处理与你类似的情况: “Azure Web App部署”任务需要Web部署zip包。您可以再添加一个任务来为构建输出创建一个zip包,如其他两个答案所示,或者在“gulpfile.js”中添加一些代码来在gulp构建期间生成一个zip包,然后将zip包发布到工件 如果不想为生成输出创建zip包,则可以使用任务通过将生成部署到Azure Web App。“Azure Web App部署”任务需要Web部署zip包。您可以再添加一个任务来为构建输出创建一个zip包,如其他两个答案所示,或者在“gulpfile.js”中添加一些代码来在gulp构建期间生成一个zip包,然后将zip包发布到工件
如果不想为生成输出创建zip包,则可以使用任务通过将生成部署到Azure Web App。您可以使用PowerShell创建zip文件,前提是您正在Windows代理上运行
命令行
任务
命令:powershell
参数:-Command“&{Add Type-assembly'system.io.compression.filesystem';[io.compression.zipfile]::CreateFromDirectory('$(Build.stagindirectory)\Zip','$(Build.stagindirectory)\$(BuildConfiguration)Deploy.Zip')}”
显然,将
$(Build.StagingDirectory)\Zip
替换为您想要压缩的任何文件夹,将$(Build.StagingDirectory)\$(BuildConfiguration)Deploy.Zip
替换为您想要命名的任何文件。您可以使用PowerShell创建一个Zip文件,假设您正在Windows代理上运行
命令行
任务
命令:powershell
参数:-Command“&{Add Type-assembly'system.io.compression.filesystem';[io.compression.zipfile]::CreateFromDirectory('$(Build.stagindirectory)\Zip','$(Build.stagindirectory)\$(BuildConfiguration)Deploy.Zip')}”
显然,将
$(Build.StagingDirectory)\Zip
替换为您想要压缩的任何文件夹,将$(Build.StagingDirectory)\$(BuildConfiguration)Deploy.Zip替换为您想要命名的任何文件。在Azure部署任务中,我已经给出了存档文件路径($(Build.ArtifactStagingDirectory)/$(Build.BuildId.Zip)作为Web部署包路径,但它不起作用。下载工件失败时引发错误:Microsoft.TeamFoundation.Release.ArtifactRepository.Definition.ArtifactDownloadException:buildIn Azure部署任务中没有可用的工件,我已将存档文件路径($(Build.artifactStaginDirectory)/$(Build.BuildId.zip)指定为Web部署包路径,但它不起作用。下载工件失败时引发错误:Microsoft.TeamFoundation.Release.ArtifactRepository.Definition.ArtifactDownloadException:生成中没有可用的工件