将工件依赖项的文件路径映射到系统属性

本文关键字:映射 路径 系统 属性 文件 依赖 | 更新日期: 2023-09-27 18:09:30

我使用TeamCity作为CI服务器,并具有两个构建配置的场景。构建配置A生成工件File A。构建配置BA上有一个Artifact Dependency从同一链构建。

我需要在B上配置System Property(因此它将被馈送到MSBuild),其中包含File A的完整文件路径。是否有一个参数参考,我可以使用或其他方式来获得它?

将工件依赖项的文件路径映射到系统属性

Build BBuild A之间的工件规则中,您可以指定一个相对于要将File A复制到的构建代理工作目录的目标路径。例如:

RelativePathTo/FileA => RelativePath

然后你可以在Build B中定义一个系统参数,如

system.MsBuildProperty = %teamcity.build.checkoutDir%/RelativePath/FileA

应该会给您Build B的checkout目录中File A的完整路径。这将像往常一样传递给MSBuild。如果您在Build B的结帐目录中寻找Build AFile A的完整文件路径,那么这是另一回事,因为它们可能运行在不同的代理上。

希望这能给你一些可行的东西,让我们知道它是如何进行的。