首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Teamcity 8-将构建参数视为长或整数

Teamcity 8-将构建参数视为长或整数
EN

Stack Overflow用户
提问于 2014-04-29 17:12:36
回答 1查看 497关注 0票数 0

使用teamCity 8.0.5。作为我的构建清理工作的一部分,我希望自动删除任何比当前5个版本更老的构建。例如,如果我的build.number = 12,请尝试删除build 6。不幸的是,您似乎不能转换%build。

使用Teamcity,如何对构建参数执行数学?

我已经尝试过%build.number% -1,并将它封装在()中。

代码语言:javascript
复制
%system.PreviousBuild% =  \\server\path\Build%build.number%-6

我实际使用这个命令行post构建事件:

代码语言:javascript
复制
echo trying to remove directory %system.PreviousBuild%
IF EXIST %system.PreviousBuild% RD %system.PreviousBuild% /Q /S

结果:

09:19:09尝试移除导演\server\path\Build11 11-6

下面的答案告诉我以下的解决方案:

注意:这里的重要部分是将build.number转换为整数。使用powershell源代码构建步骤

对整个命令使用powershell对我来说是有效的:

代码语言:javascript
复制
Set-Variable -Name previousBuild -Value  (([int]%build.number%)-6).ToString()
Write-Output $previousBuild
Write-Output $env:PreviousBuildPath
Set-Variable -Name path -Value $env:PreviousBuildPath$previousBuild
Write-Output $path
if((Test-Path -path $path))
{
Remove-Item -Recurse -Force $path
}
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-04-30 08:22:39

代码语言:javascript
复制
set /a newBuildNumber=%build.number%-6

然后在路径之后在TC构建脚本中使用%%newBuildNumber%。

代码语言:javascript
复制
\\server\path\Build%%newBuildNumber%%
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/23371093

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档