是否有人暗示如何每周增加下面数字的第二部分(“249”)? TeamCity能够在每次构建之后增加构建计数器的数量,到目前为止一直很好。
1.0。的 249 即可。%build.counter%
此外,我需要每周增加249次。 例如:249> 250; 250> 251; 101> 102; 41> 42; ...
提前致谢。
答案 0 :(得分:6)
您可以通过在PowerShell构建步骤中以编程方式重新定义build.number
来实现此目的。
Script
:源代码 Script execution mode
:使用“文件”参数执行.ps1脚本 Script source
:Write-Host "##teamcity[buildNumber '1.0.$([Math]::Floor([DateTime]::Now.DayOfYear/7)).%build.counter%']"
所有后续构建步骤都应该能够使用新的build.number
值。
$([Math]::Floor([DateTime]::Now.DayOfYear/7))
是神奇的;它产生了当年的当前一周。您需要按摩一下以符合您现有的编号。
关于重用的说明:您需要参数化1.0
主要/次要值,以便在多个项目中重复使用此步骤。我定义了一个参数%major.minor%
,并将其值设置为1.0(或者其他。)PowerShell脚本将是这样的:
Write-Host "##teamcity[buildNumber '%major.minor%.$([Math]::Floor([DateTime]::Now.DayOfYear/7)).%build.counter%']"
编辑:切换到Jacob提到的更简单的Write-Host
实现。
答案 1 :(得分:0)
在TeamCity中搜索自定义内部版本号的方法时,我碰巧偶然发现了这个问题。 @ john-hoerr提供的答案非常完美(感谢你)。
我已经接受了约翰的回答并根据我的需要对其进行了修改。这是一个powershell脚本,它将使用构建配置设置的常规选项卡中提供的构建号格式,日期格式(任何性质)和TeamCity的构建计数器来更新构建号:
/etc/pm/sleep.d
理想情况下,构建计数器会在午夜重置为0,以便当天的第一个构建版本的构建计数器值为1.