我需要构建、测试和部署一个 .net core web api 应用程序。我希望这篇题为“构建、测试和部署 .NET Core 应用程序”的文章能够帮助我构建、测试和部署应用程序,但由于某种原因我没有得到它。
我有一个简单的 .net core 3.1 web api 应用程序。
我想在 Azure AppService 上构建并发布到一个名为“api”的虚拟目录。我更喜欢使用 webdeploy 发布,但如果不可能,我会使用任何可行的方法。
我在 AzureRmWebAppDeployment 任务中遇到的错误是:
No package found with specified pattern: D:\a\1\s***.zip
检查任务中提到的包是否在构建或上一阶段作为工件发布并在当前作业中下载。
我在这里错过了什么或做错了什么?
trigger:
- master
pool:
vmImage: 'windows-latest'
variables:
solution: '**/*.sln'
buildPlatform: 'Any CPU'
buildConfiguration: 'Release'
steps:
- task: NuGetToolInstaller@1
- task: NuGetCommand@2
inputs:
restoreSolution: '$(solution)'
feedsToUse: 'select'
vstsFeed: 'Project/Feed'
includeNuGetOrg: true
- task: VSBuild@1
inputs:
solution: '$(solution)'
msbuildArgs: '/p:DeployOnBuild=true /p:WebPublishMethod=Package /p:PackageAsSingleFile=true /p:SkipInvalidConfigurations=true /p:PackageLocation="$(build.artifactstagingdirectory)\\" /p:UseWPP_CopyWebApplication=true /p:OutDir="$(build.artifactstagingdirectory)"'
platform: '$(buildPlatform)'
configuration: '$(buildConfiguration)'
- task: VSTest@2
inputs:
platform: '$(buildPlatform)'
configuration: '$(buildConfiguration)'
- task: DotNetCoreCLI@2
inputs:
command: publish
publishWebProjects: True
arguments: '--configuration $(BuildConfiguration) --output $(Build.ArtifactStagingDirectory)'
zipAfterPublish: True
- task: AzureRmWebAppDeployment@4
inputs:
ConnectionType: 'AzureRM'
azureSubscription: 'SubscriptionName'
appType: 'apiApp'
WebAppName: 'MyWebAppName'
VirtualApplication: 'api'
UseWebDeploy: true