作为自定义运行的结果,是否可以永久更新TeamCity构建参数的值?

作为自定义运行的结果,是否可以永久更新TeamCity构建参数的值?,teamcity,Teamcity,是否可以作为自定义运行的结果永久更新生成参数的值 例如,考虑一个被配置为具有构建号格式的构建: %主要%。%次要%。%补丁%。%构建。计数器% 主要、次要和修补程序,并在生成配置中定义为具有特定值。举个例子,假设这给出了一个构建编号3.1.2.36 可以通过单击run旁边的“…”然后更改其中一个参数的值来更改生成编号。从1->2更改次要版本和从2->0更改补丁将使下一个版本的版本号为3.2.0.37 我并不过分担心37没有被重置为0,但问题是触发的下一个构建(不是自定义运行的结果)将具有更低的构

是否可以作为自定义运行的结果永久更新生成参数的值

例如,考虑一个被配置为具有构建号格式的构建: %主要%。%次要%。%补丁%。%构建。计数器%

主要、次要和修补程序,并在生成配置中定义为具有特定值。举个例子,假设这给出了一个构建编号3.1.2.36

可以通过单击run旁边的“…”然后更改其中一个参数的值来更改生成编号。从1->2更改次要版本和从2->0更改补丁将使下一个版本的版本号为3.2.0.37

我并不过分担心37没有被重置为0,但问题是触发的下一个构建(不是自定义运行的结果)将具有更低的构建编号3.1.2.38。在运行自定义生成并更改数字时,是否可能保留新值

我正在寻找一种方法,没有TeamCity管理员权限的用户可以根据他们所做的更改增加版本号


我们正在运行v8.1.2(build 29993)。

为了解决这个问题,我使用了TeamCity REST API。我创建了一个名为“ReleaseType”的类型为prompt的新构建参数,它可以是Patch、Minor或Major。然后,将其用于此命令行脚本中,该脚本设置为TeamCity构建步骤:

IF "%ReleaseType%"=="Major" (
set /a newVersion=%VersionMajor%+1
curl -v --request PUT -d 0 --Header "Content-Type: text/plain" http://username:password@servername:8080/httpAuth/app/rest/projects/%system.teamcity.projectName%/parameters/VersionMinor
curl -v --request PUT -d 0 --Header "Content-Type: text/plain" http://username:password@servername:8080/httpAuth/app/rest/projects/%system.teamcity.projectName%/parameters/VersionPatch
)

IF "%ReleaseType%"=="Minor" (
set /a newVersion=%VersionMinor%+1
curl -v --request PUT -d 0 --Header "Content-Type: text/plain" http://username:password@servername:8080/httpAuth/app/rest/projects/%system.teamcity.projectName%/parameters/VersionPatch
)

IF "%ReleaseType%"=="Patch" (
set /a newVersion=%VersionPatch%+1
)

curl -v --request PUT -d %%newVersion%% --Header "Content-Type: text/plain" http://username:password@servername:8080/httpAuth/app/rest/projects/%system.teamcity.projectName%/parameters/Version%ReleaseType%
curl -v --request PUT -d 0 --Header "Content-Type: text/plain" http://username:password@servername:8080/httpAuth/app/rest/buildTypes/id:%dep.Dependant_BuildName.system.teamcity.buildType.id%/settings/buildNumberCounter
这将增加指定的内部版本号,并将下游版本零件重置为0

例如,3.2.12.122上的小版本增加到3.3.0.0

注意-在我上面的特定示例中,生成计数器在从属生成上重置,而不是在运行的配置上重置。这可能是你想要的,也可能不是。替换

%dep.dependent\u BuildName.system.teamcity.buildType.id%

%system.teamcity.buildType.id%

如果要重置当前正在运行的生成配置