![](/img/trans.png)
[英]How to deploy an Azure function into a function app through a CI/CD pipeline?
[英]How to deploy a Azure Function using a CI pipeline?
大多數時候,當我部署 function 時,我是通過發布配置文件來完成的。 但是,我不知道如何通過 CI/CD 部署它。
當我嘗試通過 Azure 上的部署中心進行操作時,它不起作用。 你在哪里 go 到部署中心 -> Github -> Azure 存儲庫 -> Z999382812/bra->16EFE489 我認為這是因為我的存儲庫文件夾設置不是它所期望的。 我的設置如下
-Repo folder
--Project1
--Project1Function
---Function1.cs
---Project1Function.csproj
---host.json
--.gitignore
--Project1.sln
我認為問題在於 Azure 期望包含 host.json 文件的 Project1Function 文件夾實際上位於存儲庫的根文件夾中。 問題是 Project1Function 引用了 Project1 並且基本上只是將 Project1 中的代碼稱為 function,這就是回購結構如此的原因。 因此,鑒於這種結構,我如何通過管道使用 CI 部署它? 我真的找不到描述如何執行此操作的好資源,因此指向教程/答案的鏈接也可以。
Azure function 可以以類似的方式部署 Azure WebApp 部署。 遵循正常的構建和部署流程
pool:
name: Azure Pipelines
demands:
- msbuild
- visualstudio
steps:
- task: NuGetToolInstaller@0
displayName: 'Use NuGet 4.4.1'
inputs:
versionSpec: 4.4.1
- task: NuGetCommand@2
displayName: 'NuGet restore'
inputs:
restoreSolution: '$(Parameters.solution)'
vstsFeed: 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'
- task: VSBuild@1
displayName: 'Build solution'
inputs:
solution: '$(Parameters.solution)'
platform: '$(BuildPlatform)'
configuration: '$(BuildConfiguration)'
clean: true
- task: DotNetCoreCLI@2
displayName: 'dotnet publish'
inputs:
command: publish
publishWebProjects: false
projects: |
XXXXXX/XXXXXXXXXXX.csproj
arguments: '-o $(Build.ArtifactStagingDirectory)/XXXXXXXXX -c Release'
zipAfterPublish: false
- task: PublishBuildArtifacts@1
displayName: 'Publish Artifact'
inputs:
PathtoPublish: '$(Build.ArtifactStagingDirectory)/XXXXXXXXXX'
ArtifactName: '$(Parameters.ArtifactName)'
condition: succeededOrFailed()
steps:
- task: AzureRmWebAppDeployment@4
displayName: 'Deploy Azure App Service'
inputs:
azureSubscription: 'Subscription Name'
WebAppName: XXXXXX
VirtualApplication: /
packageForLinux: '$(System.DefaultWorkingDirectory)/_Pipelinename/drop/XXXXXX.zip'
我認為這是您正在尋找的資源Functions CI/CD
這表明文件夾結構是這里的問題。
您能否在同一解決方案中沒有兩個單獨的項目,例如一個用於 Function 應用程序(具有所需的文件夾結構),一個用於另一個應用程序並在您的另一個項目中引用 Function 應用程序項目?
這可能有助於在 Function App 項目中獲得所需的結構。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.