我的Azure Pipelines构建在/home/vsts/work/1/Windows
文件夹中输出NuGet软件包,其中Windows
是矩阵名称(我正在Windows,Mac和Linux上运行我的管道的build部分,但希望发布NuGet软件包仅来自我的Windows版本)。
文档讨论了如何使用$(Build.ArtifactStagingDirectory)/*.nupkg
路径传递给NuGetCommand@2
。但是,这指向/home/vsts/work/1/a
文件夹。
由于使用矩阵构建,$(Build.ArtifactStagingDirectory)
变量是否错误?是因为我正在使用PublishPipelineArtifact@0
任务来发布我的.nupkg文件吗?
答案 0 :(得分:1)
由于您将matrix
策略与PublishArtifacts配合使用,因此您具有多个工件,因此在第二阶段(部署阶段),这3个工件不会下载到Agnet的a
文件夹中,而是下载到根目录中构建文件夹:
home
|-- vsts
|-- work
|-- 1
|--
a
b
s
Test Results
Mac
Ubuntu
Windows
因此,您需要使用变量$(Build.BuildDirectory)
的值是home/vsts/work/1
,然后使用/Windows/.nupkg
:
$(Build.BuildDirectory)/Windows/.npukg