.NET Core Azure功能部署失败

时间:2019-02-04 02:42:35

标签: azure azure-functions azure-pipelines-release-pipeline

我尝试为Azure功能设置发布管道。这是一个v2 (.NET Core)项目。它在本地运行正常,因此我想通过DevOps将其部署到Azure。

我使用标准步骤(dotnet还原,dotnet构建等)创建了构建管道,它可以顺利进行并创建工件。

但是我很难正确设置部署。管道有3个任务:

  1. 停止Azure应用服务
  2. 部署Azure App Service(我选择了 Subscription Function App作为 App type 和目标 App service )。 / li>
  3. 启动Azure应用服务

第二步失败,我收到以下错误消息:

  

无法将Web包部署到App Service。

如果我单击更详细的日志,则会得到以下信息:

  

2019-02-04T02:25:43.4893738Z ## [错误]无法将Web包部署到App Service。
  2019-02-04T02:25:43.4905786Z ## [错误]错误:(2/4/2019 2:25:42 AM)在远程计算机上处​​理请求时发生错误。

azure-ci.yaml的内容:

resources:
- repo: self
queue:
  name: Hosted VS2017

steps:
- task: DotNetCoreCLI@2
  displayName: Restore
  inputs:
    command: restore

    projects: '$(Parameters.RestoreBuildProjects)'


- task: DotNetCoreCLI@2
  displayName: Build
  inputs:
    projects: '$(Parameters.RestoreBuildProjects)'

    arguments: '--configuration $(BuildConfiguration)'


- task: DotNetCoreCLI@2
  displayName: Test
  inputs:
    command: test

    projects: '$(Parameters.TestProjects)'

    arguments: '--configuration $(BuildConfiguration)'


- task: DotNetCoreCLI@2
  displayName: Publish
  inputs:
    command: publish

    publishWebProjects: false

    projects: '$(Parameters.RestoreBuildProjects)'

    arguments: '--configuration $(BuildConfiguration) --output $(build.artifactstagingdirectory)'


- task: PublishBuildArtifacts@1
  displayName: 'Publish Artifact'
  inputs:
    PathtoPublish: '$(build.artifactstagingdirectory)'

我的问题是:

  • 我会错过什么部署任务?
  • 构建管道有可能吗?因此构建工件“格式不正确”,当前为zip
  • 我是否需要单独的停止/启动任务,或者它们已包含在部署中?

1 个答案:

答案 0 :(得分:0)

尝试执行最新的4.x Azure App Service Deploy任务,默认情况下使用Run From Package,这可以强制部署在Azure上的项目具有原子性,并且可以避免很多麻烦。