我按照 MSDN 上的说明设置管道来执行 2 件事
我收到的当前错误是
未找到指定模式的包:D:\s**.zip*
但经过一些更改后,我收到了有关位置的类似错误。
这是我的 2 个 YAML 文件
`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: VSBuild@1
inputs:
solution: '$(solution)'
msbuildArgs: '/p:DeployOnBuild=true /p:WebPublishMethod=Package /p:PackageAsSingleFile=true /p:SkipInvalidConfigurations=true /p:DesktopBuildPackageLocation="$(build.artifactStagingDirectory)\WebApp.zip" /p:DeployIisAppPath="Default Web Site"'
platform: '$(buildPlatform)'
configuration: '$(buildConfiguration)'
- task: VSTest@2
inputs:
platform: '$(buildPlatform)'
configuration: '$(buildConfiguration)'
- task: PublishBuildArtifacts@1
inputs:
PathtoPublish: '$(System.DefaultWorkingDirectory)'
ArtifactName: 'drop'
publishLocation: 'Container'`
部署 YAML
`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: VSBuild@1
inputs:
solution: '$(solution)'
msbuildArgs: '/p:DeployOnBuild=true /p:WebPublishMethod=Package /p:PackageAsSingleFile=true /p:SkipInvalidConfigurations=true /p:DesktopBuildPackageLocation="$(build.artifactStagingDirectory)\WebApp.zip" /p:DeployIisAppPath="Default Web Site"'
platform: '$(buildPlatform)'
configuration: '$(buildConfiguration)'
- task: VSTest@2
inputs:
platform: '$(buildPlatform)'
configuration: '$(buildConfiguration)'
- task: AzureWebApp@1
inputs:
azureSubscription: 'NEW_SUB'
appType: 'webApp'
appName: 'Testing'
package: '$(System.DefaultWorkingDirectory)/**/*.zip'
deploymentMethod: 'auto'`
我读过的每个线程都尝试了不同的路径,但它似乎不起作用,并且出现有关找不到文件的错误。我还使用了创建管道时提供的默认配置,因此我认为这会限制错误因素。
我错过了什么?
从每个 YAML(即 Nuget 包)中删除一些重复代码是否正确?
我已经看过这些线程并尝试了大部分修复,但我不确定我是否在某个地方错过了关键步骤?
Azure DevOps 管道版本错误:未找到具有指定模式的包:D: 1 \**\*.zip
当我查看日志(在 drop 下)时,我确实在工件下看到了一个文件
您在这里发布您的构建结果:
/p:DesktopBuildPackageLocation="$(build.artifactStagingDirectory)\WebApp.zip"
默认情况下,它位于此处:
c:\agent_work\1\a
但是,您正在尝试部署此包:
package: '$(System.DefaultWorkingDirectory)/**/*.zip'
在这种情况下,构建代理会尝试检查此文件夹:
c:\agent_work\1\s
这里是文档:https://learn.microsoft.com/en-us/azure/devops/pipelines/build/variables?view=azure-devops&tabs=yaml
将最后一步更新为:
- task: AzureWebApp@1
inputs:
azureSubscription: 'NEW_SUB'
appType: 'webApp'
appName: 'Testing'
package: '$(build.artifactStagingDirectory)/WebApp.zip'
deploymentMethod: 'auto'`