我正在尝试在Teamcity
中创建一个在另一个构建步骤中具有Artifact Dependency
的构建步骤。
上一个构建步骤的工件可用作.zip
文件。
构建步骤能够检索工件并将其下载到:
C:\BuildAgent\work\27f84e3eca3a33d5\artifactdir\artifacts.zip
显然.zip
文件对我没用,我需要对它们进行解压缩,以便构建步骤可以访问构建文件。
如何让TeamCity解压缩工件?
答案 0 :(得分:6)
您可以使用工件依赖项的工件规则来指定要用作依赖项的一部分的工件元素,包括从存档中提取。工件规则语法是:
[+:| - :] [!ArchivePath] SOURCEPATH [=>的DestinationPath]
档案路径是您特别感兴趣的元素。 使用您的示例,您的工件规则将类似于:
artifacts.zip!** => artifactdir
这将提取artifacts.zip工件的所有内容,并将它们放在checkout目录根目录下的artifactdir目录中
ArchivePath用于提取下载的压缩工件。压缩, 支持7-zip,jar,tar和tar.gz。 ArchivePath遵循一般性 SourcePath的规则:允许类似ant的通配符,即文件 存档中匹配的内容将放在目录中 对应于第一个通配符匹配(相对于目标 例如:release.zip!* .dll命令将提取所有.dll 驻留在release.zip工件根目录中的文件。
您可以找到完整的TeamCity工件依赖关系文档here