我有一个解决方案,其中包括一个NET Core 3.1
Web API 项目和其他几个作为NET Framework 4.8
类库项目的项目。
在我的构建管道中,解决方案构建没有任何问题,我有一个非常简单的构建,但是我需要此构建的输出,例如测试程序集以及配置文件,以便可用于我的发布管道。原因是我的发布管道与测试计划和测试套件相关联,并且是按需运行这些测试计划所必需的。
在我从构建管道发布工件时,不包含任何测试程序集,唯一包含的内容是来自 Web 应用程序的那些我不需要用于测试目的的文件。我在几个不同的地方读过,我可以将其他项目添加为依赖项,但这对我来说似乎不正确,因为确实需要这些依赖项。还有其他方法可以让构建管道发布那些其他程序集和文件吗?
[更新] 解决方案 1:
我在其他地方看到的一种解决方案是使用Copy files
任务将程序集复制到${Build.ArtifactStagingDirectory}
然后发布工件,但要么它不工作,要么我做错了什么。这是我对 2 个任务的 YAML 定义:
task: CopyFiles@2
inputs:
Contents: '**'
TargetFolder: '${Build.ArtifactStagingDirectory}'
task: PublishBuildArtifacts@1
inputs:
PathtoPublish: '$(Build.ArtifactStagingDirectory)'
ArtifactName: 'tests'
publishLocation: 'Container'
FWIW 在CopyFiles
日志中我确实看到文件正在被复制,例如:
将 d:\a\1\s\test\BaseTest.cs 复制到 ${Build.ArtifactStagingDirectory}\test\BaseTest.cs