[英]How do you direct Azure DevOps to place your output in a specific location on the target App Service?
我正在嘗試創建一個也可以作為 Service Worker 工作的 WebApi。 web 上有幾個示例,但我一直遇到的問題是部署要么作為 WebApi,要么作為 ServiceWorker,但不能同時作為兩者。
就我所能弄清楚的問題而言,WebApi 似乎需要部署到目錄中:app_data\Jobs\Continuous\WorkerService。 但是,我似乎無法強制 Azure App Service 部署將文件放到該目錄中。 這是我到目前為止所擁有的:
管道:
trigger:
- master
pool:
vmImage: windows-latest
variables:
solution: '**/*.sln'
buildPlatform: Any CPU
buildConfiguration: Release
steps:
- task: NuGetToolInstaller@1
- task: NuGetCommand@2
inputs:
restoreSolution: $(solution)
- task: DotNetCoreCLI@2
displayName: Build Solution
inputs:
command: build
- task: DotNetCoreCLI@2
displayName: Publish Artifact
inputs:
command: 'publish'
publishWebProjects: no
arguments: --configuration $(BuildConfiguration) --output $(Build.ArtifactStagingDirectory)\app_data\Jobs\Continuous\WorkerService
- task: PublishBuildArtifacts@1
displayName: Upload Artifacts
和發布:
steps:
- task: AzureRmWebAppDeployment@4
displayName: 'Azure App Service Deploy: thetarex-worker-service'
inputs:
azureSubscription: 'Theta Rex Subscription'
WebAppName: 'thetarex-worker-service'
當我運行它時,我得到了 wwwroot 中的所有文件——沒有保留目錄結構。 WebApi 部分工作,但沒有工作人員服務運行,也沒有創建 WebJob。
在 App Service 配置 - 路徑映射中,創建具有物理路徑目標 site\wwwroot\App_Data\Jobs\Continuous\WorkerService 的虛擬應用程序,並像這樣設置管道:
steps:
- task: AzureRmWebAppDeployment@4
displayName: 'Azure App Service Deploy: thetarex-worker-service'
inputs:
azureSubscription: 'Theta Rex Subscription'
WebAppName: 'thetarex-worker-service'
VirtualApplication: your_virtual_application
這應該將您的所有文件放入您使用虛擬應用程序配置的物理路徑。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.