找不到带有Azure DevOps路径的ASP.NET Core App Service部署

时间:2019-06-28 06:24:54

标签: azure asp.net-core azure-devops

我有一个简单的构建管道,可以在git commit上触发,并且运行良好。

以下是该过程的.yaml:

trigger:
- master

pool:
  vmImage: 'ubuntu-latest'

variables:
  buildConfiguration: 'Release'

steps:
  - script: dotnet build --configuration $(buildConfiguration)
  - task: ArchiveFiles@2
inputs:
  rootFolderOrFile: '$(Build.BinariesDirectory)'
  includeRootFolder: true
  archiveType: 'zip'
  archiveFile: '$(Build.ArtifactStagingDirectory)/$(Build.BuildId).zip'
  replaceExistingArchive: true
  displayName: 'dotnet build $(buildConfiguration)'

然后,我尝试构建一个Release版本,但是无法将zip文件传递到我的部署步骤。我遵循的步骤是:

  1. 发布构建工件
  2. 下载构建工件
  3. 部署Web服务

这是我的设置-总体发布渠道:

enter image description here

工件阶段设置如下:

enter image description here

这是我在第1阶段(部署阶段)的3个任务:

enter image description here

然后这3个任务的属性:

enter image description here enter image description here enter image description here

这是我遇到的错误,与人工制品发布目录有关:

enter image description here

1 个答案:

答案 0 :(得分:2)

您应使用 dotnet发布创建二进制文件。该步骤还将创建一个zip文件。然后要发布人工制品,请使用PublishBuildArtifacts@1任务。这些步骤应全部在构建中完成,而不是发布。

这里有个例子:

steps:
- script: dotnet build --configuration $(buildConfiguration)
  displayName: 'dotnet build $(buildConfiguration)'

- task: DotNetCoreCLI@2
  inputs:
    command: 'publish'
    publishWebProjects: false
    projects: '**/*.csproj'
    arguments: '-o /app'

- task: PublishBuildArtifacts@1
  inputs:
    PathtoPublish: '/app'
    ArtifactName: 'drop'
    publishLocation: 'Container'

在此发行版中,您不需要“发布和下载构建构件”步骤,因为构件已经存在(_ISOF)。运行第一个版本后,您只需在“包或文件夹”下拉列表中选择zip文件。