2013-07-17 129 views

回答

9

我相信AutoIncrementer插件应该做的伎俩。它允许您在配置之间共享内部版本号。 http://confluence.jetbrains.com/display/TW/Autoincrementer

+0

它与最新版本的TeamCity寿? – Eatdoku

+0

我们使用它到v7.0,尚未与v8.0一起使用它。 –

+1

我成功地将它与TeamCity 8.0.2一起使用。只需下载该软件包的v7。 –

35

如果构建配置之一的,对构建配置B快照或工件的依赖,那么你就可以从B在A中获得的内部版本号与依赖参数的帮助:

%dep.<B id>.build.number%

凡<乙ID >是构建配置B的id(请参阅URL中的buildTypeId参数)。

+1

谢谢,以及如何获得配置B的最后一次成功构建版本号? – adnako

2

AutoIncrementer是好的,但现在有一个新的插件,试图做一些用户表示,他们无法与AutoIncrementer做:

http://java.nicholaswilliams.net/TeamCityPlugins/introduction#SharedBuildNumber

它,当你将它添加到UI TeamCity,并且还可以使用您可能想要使用的格式来处理日期。

+1

此链接不起作用。 http://java.nicholaswilliams.net/TeamCityPlugins/introduction#SharedBuildNumber – koerbcm

+0

你是对的。看起来网站已关闭。好不容易才找到https://webcache.googleusercontent.com/search?q=cache:OILQTnM_gfIJ:https://java.nicholaswilliams.net/TeamCityPlugins/introduction+&cd=1&hl=en&ct=clnk&gl=uk – John

4

你可以让一个团队城项目使用的版本号从另一个项目按照以下步骤:为要导入的版本号配置

  1. 打开TeamCity的项目配置的属性。

  2. 转到“依赖项”部分。

  3. 添加一个“工件相关性”,然后选择您想从中获取工程编号的工程配置作为相关项目。

  4. 在“离文物”字段选择

  5. 下一页“建号”输入框中有一个按钮,你可以点击选择从哪里得到的内部版本号“与指定的版本号生成” 。在这个列表中,您应该看到一个选项,例如“dep.bt2.build.number”(对于您的配置,该数字可能不是2)。

+0

任何缓存版本想法如何获得最新的分行名称? –

+0

这对我来说就是“获取工件”:“上次成功构建”。 –

11

该解决方案适用于我:

  1. 创建构建配置。假设说“GenerateBuildNumber”,不要附加模板。不要指定任何生成步骤。点击保存。
  2. 编辑您项目的配置。转到“构建配置设置 - >依赖项”。点击“添加新的快照依赖”。
  3. 在“依赖”部分选择先前创建的“GenerateBuildNumber”。取消选中“如果有合适的人不要运行新版本”选项。点击保存。
  4. 转到“常规设置”,清除“内部编号格式:”,点击左边的按钮3行。选择“%dep.YouProjName_GenerateBuildNumber.env.BUILD_NUMBER%”。点击保存。

运行您的项目构建。首先它应该启动“GenerateBuildNumber”项目,然后使用生成的数字开始项目。 为每个想要生成唯一生成号码的项目执行步骤2-4。 利润!

+0

虽然这是一个有点尴尬必须使用专用的构建配置,这个解决方案确实工作得很好。如果我不需要,我宁愿不采取插件依赖关系。 –

相关问题