【发布时间】:2019-05-17 02:13:13
【问题描述】:
我正在尝试对我的 DEV Azure 应用服务实施持续集成和持续部署。我在 Visual Studio Team Services 上使用托管代理。我的发布定义中的“将网站部署到 Azure”步骤一直失败,并出现错误“未找到具有指定模式的包”。有什么想法吗?
【问题讨论】:
标签: azure tfs azure-devops ms-release-management
我正在尝试对我的 DEV Azure 应用服务实施持续集成和持续部署。我在 Visual Studio Team Services 上使用托管代理。我的发布定义中的“将网站部署到 Azure”步骤一直失败,并出现错误“未找到具有指定模式的包”。有什么想法吗?
【问题讨论】:
标签: azure tfs azure-devops ms-release-management
“多个包与指定模式匹配。请限制搜索模式[原文如此]。”由于您在任务的“包或文件夹”设置中输入“xxx\*.zip”,因此任务发现 2 个或更多包时通常会发生错误。所以你只需要更新它来指定详细的包名。类似的问题在这里:Deploy azure website and webjobs in same sln using VSO - Error - There can be only one.
对于您的原始问题,您还可以通过在“构建”选项卡上选择“Visual Studio”和在“部署”选项卡上选择“Azure WebApp”创建一个新的构建定义来修复它。这将创建一个添加了所需参数的构建定义。
【讨论】:
几个小时前遇到了同样的问题。这就是我解决问题的方法:
确保构建解决方案步骤中的 MSBuild 参数为: /p:DeployOnBuild=true /p:WebPublishMethod=Package /p:PackageAsSingleFile=true /p:SkipInvalidConfigurations=true /p:PackageLocation="$(build.artifactstagingdirectory)\"
添加步骤 Azure 应用服务部署:ARM
$(build.artifactstagingdirectory)\**\*.zip
步骤:
Azure 应用服务部署配置:
【讨论】:
如果您使用的是默认的 azure 应用服务部署任务,请将其添加到 YAML 文件的末尾:
- task: DotNetCoreCLI@2
displayName: 'dotnet publish $(buildConfiguration)'
inputs:
command: publish
publishWebProjects: True
arguments: '--configuration $(buildConfiguration) --output $(Build.ArtifactStagingDirectory)'
zipAfterPublish: True
- task: PublishBuildArtifacts@1
displayName: 'publish artifacts'
我遇到了同样的问题,这对我有用:
# ASP.NET Core
# Build and test ASP.NET Core projects targeting .NET Core.
# Add steps that run tests, create a NuGet package, deploy, and more:
# https://docs.microsoft.com/azure/devops/pipelines/languages/dotnet-core
trigger:
- master
pool:
vmImage: 'ubuntu-latest'
variables:
buildConfiguration: 'Release'
steps:
- script: dotnet build --configuration $(buildConfiguration)
displayName: 'dotnet build $(buildConfiguration)'
- task: DotNetCoreCLI@2
displayName: 'dotnet publish $(buildConfiguration)'
inputs:
command: publish
publishWebProjects: True
arguments: '--configuration $(buildConfiguration) --output $(Build.ArtifactStagingDirectory)'
zipAfterPublish: True
- task: PublishBuildArtifacts@1
displayName: 'publish artifacts'
【讨论】:
在 azure devops 中创建构建管道时使用可视化设计器,尽管您的代码位于 azure repos 和 github,
然后选择来源
最后为您的应用选择相应的模板
【讨论】:
确保您没有勾选“跳过工件下载”
【讨论】: