2012-02-14 162 views
7

我最近注意到我需要重用许多项目中的构建步骤。所以我创建了一个模板,我只定义了构建步骤,并且需要与该模板关联的项目。这工作完美。团队城市模板和工件

但后来我意识到没有任何受影响的项目正在生成它们的工件,尽管它们都是成功构建的。当我去查看常规设置时,工件路径框变灰,Team City告诉我,我只能在模板内改变它!

我希望我的构建具有不同的构件路径(有些甚至不会生成构件),但我不想重复构建步骤。有没有解决方法?

团队市版本:6.5.6(建18130)

回答

14

这是我如何解决该问题:

  • 创建模板的构建参数部分配置参数。我只是叫它文物

Artifact template parameter

  • 然后路径框引用属性的伪影在模板,例如%工件%

Artifact paths image

  • 然后,对于每个配置,其继承可覆盖的模板使用相关的路径来确定工件配置参数。

Artifact override parameter

HTH

+0

很聪明!虽然我在一些项目中有不止一件神器。我会在模板中定义它们并覆盖它们,但仍然感觉有点粗略。如果我们只是将工件路径添加到继承的工件路径中,则会更好...... – 2012-02-15 12:21:36

+1

@dario_ramos只是对属性中的每个工件路径使用新行。是的,我同意它会更干净,你可以在[YouTrack]上创建一个功能请求(http://youtrack.jetbrains.net/dashboard) - 你会得到我的投票。 – 2012-02-15 15:54:06

+0

[Here's](http://youtrack.jetbrains.net/issue/TW-20277?projectKey=TW&query=by%3A+me)我的功能请求 – 2012-02-15 17:29:01

1

这是一个老问题,显然只影响与TeamCity的版本低于8.1的用户(如意见接受的答案指出)。

按照offical documentation

由于TeamCity的8。1,下面的设置,现在可以在从模板继承了构建配置覆盖:

  • 版本号格式
  • 工件路径
  • 生成选项(吊建立检测,状态插件,同时数运行构建)
  • VCS结账模式
  • 检出目录
  • 清理所有文件之前建立
  • 变化显示,从快照依赖
  • 执行超时
  • 所有常见的构建失败条件,包括执行超时