【发布时间】:2020-11-01 19:10:13
【问题描述】:
我有一个项目,我想在 Azure DevOps CI 构建中将其转换为 NuGet 包。解决方案中的相关文件如下所示:
/
RandExp.sln
/RandExp
RandExp.fsproj
/Tests
Tests.fsproj
我有一个像这样的 azure-pipelines.yml 文件:
trigger:
- ci
pool:
vmImage: "ubuntu-latest"
variables:
buildConfiguration: "Release"
steps:
- task: GitVersion@5
inputs:
runtime: 'core'
updateAssemblyInfo: true
- task: DotNetCoreCLI@2
displayName: "DotNet restore"
inputs:
command: 'restore'
- task: DotNetCoreCLI@2
displayName: "DotNet build $(buildConfiguration)"
inputs:
command: 'build'
arguments: '--configuration $(buildConfiguration) --no-restore'
- task: DotNetCoreCLI@2
displayName: "DotNet test ($(buildConfiguration))"
inputs:
command: test
arguments: '--configuration $(buildConfiguration)'
- task: DotNetCoreCLI@2
displayName: "DotNet pack"
inputs:
command: 'pack'
nobuild: true
versioningScheme: 'byBuildNumber'
- task: DotNetCoreCLI@2
displayName: "DotNet push"
inputs:
command: 'push'
packagesToPush: '$(Build.ArtifactStagingDirectory)/*.nupkg'
nuGetFeedType: 'external'
publishFeedCredentials: 'Public Nuget'
在倒数第二个任务之前一切正常:DotNet pack。 [error]No files matched the search pattern 出错:
Starting: DotNet pack
==============================================================================
Task : .NET Core
Description : Build, test, package, or publish a dotnet application, or run a custom dotnet command
Version : 2.175.0
Author : Microsoft Corporation
Help : https://docs.microsoft.com/azure/devops/pipelines/tasks/build/dotnet-core-cli
==============================================================================
##[error]No files matched the search pattern.
Info: Azure Pipelines hosted agents have been updated to contain .Net Core 3.x (3.1) SDK/Runtime along with 2.1. Unless you have locked down a SDK version for your project(s), 3.x SDK might be picked up which might have breaking behavior as compared to previous versions.
Some commonly encountered changes are:
If you're using `Publish` command with -o or --Output argument, you will see that the output folder is now being created at root directory rather than Project File's directory. To learn about more such changes and troubleshoot, refer here: https://docs.microsoft.com/en-us/azure/devops/pipelines/tasks/build/dotnet-core-cli?view=azure-devops#troubleshooting
Finishing: DotNet pack
我已经用这个把头撞在墙上好几个小时了;我已经尝试了所有我能想到的方法,但除了同样的错误之外,我无法从这项任务中得到任何东西,现在我放弃了。
值得一提的是,在我的机器上,我可以cd 进入我的解决方案的根目录并运行dotnet pack,它可以正常工作,生成我期望的 nupkg。
【问题讨论】:
-
你试过用过滤器吗?
#packagesToPack: '**/*.csproj' # Required when command == Packdocs.microsoft.com/en-us/azure/devops/pipelines/tasks/build/… -
是的,就是这样!我正在使用本指南:docs.microsoft.com/en-gb/azure/devops/pipelines/ecosystems/…,其中没有提及此命令行标志...将您的评论复制到答案中,我会标记它
标签: .net azure-devops f# nuget