Visual Studio Team Services Release/Deploy fails -

2020-06-07 06:42发布

问题:

I'm trying to implement continuous integration and continuous deployment to my DEV Azure App Service. I'm using the hosted agent on Visual Studio Team Services. The "Deploy Website to Azure" step on my Release definition keeps failing with the error "No package found with specified pattern". Any ideas?

回答1:

"More than one package matched with specified pattern. Please restrain the search patern [sic]." error usually occurs when 2 or more packages were found by the task since you entered "xxx\*.zip" in "Package or Folder" setting of the task. So you just need to update it to specify the detailed package name. Similar question here: Deploy azure website and webjobs in same sln using VSO - Error - There can be only one.

And for you original issue, you can also fix it by creating a new build definition with "Visual Studio" selected on "Build" tab and "Azure WebApp" selected on "Deployment" tab. This will create a build definition with required arugments added.



回答2:

Had the same problem few hours ago. This how I was able to resolve the issue:

  1. Ensure MSBuild arguments in Build solution step are: /p:DeployOnBuild=true /p:WebPublishMethod=Package /p:PackageAsSingleFile=true /p:SkipInvalidConfigurations=true /p:PackageLocation="$(build.artifactstagingdirectory)\"

  2. Add step Azure App Service Deployment: ARM

  3. Configure subscription and App Service Name
  4. Package or Folder should be $(build.artifactstagingdirectory)\**\*.zip

Steps:

Azure App Service Deployment Configuration:



回答3:

if you are using the default azure app service deployment task, add this to end of YAML file:

- 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'

I had the same issue and this worked for me:

# 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'


回答4:

use the visual designer while creating build pipeline in azure devops,though your code sits at azure repos and github,

then select source

finally pick respective templates to your application



回答5:

Make sure you didn't tick "Skip artifacts download"