在矩阵构建中使用 Build.ArtifactStagingDirectory 和 PublishPipelineArtifact
Using Build.ArtifactStagingDirectory and PublishPipelineArtifact in a Matrix Build
我的 Azure Pipelines 构建在 /home/vsts/work/1/Windows
文件夹中输出 NuGet 包,其中 Windows
是矩阵名称(我 运行 我的管道的构建部分在 Windows、Mac 和 Linux,但只想从我的 Windows 构建中发布 NuGet 包。
文档讨论了使用 $(Build.ArtifactStagingDirectory)/*.nupkg
路径传递给 NuGetCommand@2
。但是,这指向 /home/vsts/work/1/a
文件夹。
$(Build.ArtifactStagingDirectory)
变量是否错误,因为我使用的是矩阵构建?是不是因为我正在使用 PublishPipelineArtifact@0
任务来发布我的 .nupkg's?
因为您将 matrix
策略与 PublishArtifacts
一起使用,您有多个工件,所以在第二阶段(部署阶段),3 个工件不会下载到文件夹 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
我的 Azure Pipelines 构建在 /home/vsts/work/1/Windows
文件夹中输出 NuGet 包,其中 Windows
是矩阵名称(我 运行 我的管道的构建部分在 Windows、Mac 和 Linux,但只想从我的 Windows 构建中发布 NuGet 包。
文档讨论了使用 $(Build.ArtifactStagingDirectory)/*.nupkg
路径传递给 NuGetCommand@2
。但是,这指向 /home/vsts/work/1/a
文件夹。
$(Build.ArtifactStagingDirectory)
变量是否错误,因为我使用的是矩阵构建?是不是因为我正在使用 PublishPipelineArtifact@0
任务来发布我的 .nupkg's?
因为您将 matrix
策略与 PublishArtifacts
一起使用,您有多个工件,所以在第二阶段(部署阶段),3 个工件不会下载到文件夹 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