TeamCity Zipped Artifact Dependency

bra*_*ogs 9 teamcity

在TeamCity中的工件页面上,有一个选项可以将所有工件下载为zip文件.

我想知道你是否可以设置依赖的构建配置来实际获取工件的压缩版本?

我意识到我可以压缩最初创建它们的项目配置中的所有工件,但我宁愿不这样做.

或者,我可以使用像Nant这样的东西,一旦它们被带过来拉链它们,但我想如果发送的文件首先被压缩,这些工件的传输可能会更快一些.

是否有人知道从其他每个项目中传输压缩文件的方法,或者TeamCity是否支持这种方法?

Chr*_*mer 17

是的.这非常简单,至少在当前版本的TeamCity(6.5.3)中.在"主"项目中,创建压缩工件:

MyProjectBuildFolder\** => mybuild-%system.build.number%.zip
Run Code Online (Sandbox Code Playgroud)

构建完成后,您将在zip工件中看到所有文件.然后创建一个新的构建配置.您将需要编辑此构建的依赖项并添加新的"工件依赖项".像这样编辑它的属性:

  1. 依赖:来自上方的主项目的构建配置.
  2. 从中获取工件:上次成功构建
  3. 工件路径:如果您只想复制zip文件,这将是*.zip.如果您希望TeamCity为您解压缩zip文件,请使用*.zip!**.
  4. 目标路径:%some.parameter.representing.your.path%

现在,当依赖构建的运行器启动时,它将从主项目中获取最新的zip存档,并将其解压缩到依赖构建的目标文件夹中.