多功能应用未部署

时间:2020-09-08 15:56:44

标签: azure-functions

我的解决方案中有三个功能应用程序,如下所示:

image

我创建了构建和发布步骤,以将这3个功能应用程序部署到同一应用程序服务计划。在运行构建时,它使用zip中的以下功能应用程序解决方案创建了工件:

image

我看到正在部署这些功能应用程序:

image

单击功能应用程序后,我会在其中一个功能应用程序中看到一个功能,而在其他两个功能应用程序中却看不到。

image

我想念什么?如果您需要更多详细信息,请告诉我。谢谢!

更新:

构建步骤:

# Function xxx
    - task: DotNetCoreCLI@2
      displayName: 'dotnet publish xxx Function'
      inputs:
        command: publish
        arguments: '--configuration Release --output publish_output'
        projects: 'Service/WebApi/Service/Hosts.xxxFunction/*.csproj'
        publishWebProjects: false
        modifyOutputPath: false
        zipAfterPublish: false

    - task: ArchiveFiles@2
      displayName: 'archive xxx Function files'
      inputs:
        rootFolderOrFile: "$(System.DefaultWorkingDirectory)/publish_output"
        includeRootFolder: false
        archiveFile: "$(System.DefaultWorkingDirectory)/Hosts.xxxFunction.zip"

    - task: PublishBuildArtifacts@1
      displayName: 'publish xxx Function files'
      inputs:
        PathtoPublish: '$(System.DefaultWorkingDirectory)/Hosts.xxxFunction.zip'
        ArtifactName: '$(Build.BuildNumber)'
# End xxx Function

发布步骤:

- task: AzureFunctionApp@1
  displayName: 'Deploy ${{ parameters.name }} function app'  
  inputs:
    appType: 'functionapp'
    azureSubscription: ${{parameters.serviceConnection}}
    appName: '${{ parameters.solutionAbbreviation }}-compute-fa-${{ parameters.environmentAbbreviation }}-${{ parameters.name }}'
    Package: '$(Pipeline.Workspace)/$(Build.BuildNumber)/Hosts.${{ parameters.name }}.zip'
    deploymentMethod: 'auto'
    resourceGroupName: '${{ parameters.solutionAbbreviation }}-${{ parameters.environmentAbbreviation }}'

1 个答案:

答案 0 :(得分:0)

部署天蓝色函数有两个步骤:

1,在azure上创建azure功能应用。

完成此步骤后,您可以在Azure上看到功能应用程序,但这并不意味着您已经部署了功能。只是意味着已经准备好相应功能的应用程序容器。

2,将功能应用程序的内容上传到功能应用程序容器。

您可以使用诸如zip deploy之类的一些部署方法来部署功能应用程序:

az functionapp deployment source config-zip -g yourresourcegroupname -n yourfunctionappnameonazure --src <zip_file_path>

这是文档:

https://docs.microsoft.com/en-us/azure/azure-functions/deployment-zip-push#cli

还要注意的另一件事是,有时azure门户不显示该功能并不表示该功能尚未部署。您可以转到https://yourfunctionappnameonazure.scm.azurewebsites.net/,然后转到D:\home\site\wwwroot>。(这是azure功能应用的物理目录,如果该位置没有功能文件,则说明部署失败。有时azure门户没有显示任何东西,但功能已经部署。)