Tri*_*enT 5 cruisecontrol.net continuous-integration ccnet-config
在我的项目的构建日志中,我可以看到这些属性:
<integrationProperties>
<CCNetProject>Gdet_T</CCNetProject>
...
<LastModificationDate>4/6/2010 1:29:04 PM</LastModificationDate>
<LastChangeNumber>10841</LastChangeNumber>
</integrationProperties>
Run Code Online (Sandbox Code Playgroud)
我想通过财产CCNetProject
和LastChangeNumber
批处理文件.它可以很好地使用CCNetProject
,因为它可以在批处理中用作环境变量%CCNetProject%
.
但它不适用于其他属性(那些不是以CCnet
前缀开头)为LastChangeNumber
或LastModificationDate
.
我试图将它作为参数传递,但它失败了!
<exec>
<executable>$(WorkingFolderBase)\MyBatch.bat</executable>
<baseDirectory>$(WorkingFolderBase)\</baseDirectory>
<buildArgs>$(LastModificationDate)</buildArgs>
</exec>
Run Code Online (Sandbox Code Playgroud)
我试图将其作为环境变量传递,但它失败了:
<exec>
<executable>$(WorkingFolderBase)\MyBatch.bat</executable>
<baseDirectory>$(WorkingFolderBase)\</baseDirectory>
<environment>
<variable>
<name>svn_label</name>
<value>"${LastModificationDate}"</value>
</variable>
</environment>
</exec>
Run Code Online (Sandbox Code Playgroud)
当我显示参数或变量时,结果总是相同的:空字符串或变量名称 $(svn_label)
我确信这很简单,但是......我找不到了!任何的想法 ?
CCNET将以下参数传递给外部程序:
CCNetArtifactDirectory
CCNetBuildCondition
CCNetBuildDate
CCNetBuildTime
CCNetFailureUsers
CCNetIntegrationStatus
CCNetLabel
CCNetLastIntegrationStatus
CCNetListenerFile
CCNetModifyingUsers
CCNetNumericLabel
CCNetProject
CCNetProjectUrl
CCNetRequestSource
CCNetUser
CCNetWorkingDirectory
Run Code Online (Sandbox Code Playgroud)
正如您所看到的那样,LastIntegrationStatus
例如可以通过,CCNetLastIntegrationStatus
但是LastModificationDate
没有等价物.
您可以通过CCNET配置<buildArgs>
或在 CCNET配置内部传递其他参数,<environment>
但您无法访问上述集成属性.大多数以CCNET(包括我自己)开头的人尝试类似的东西并且失败了.<buildArgs>$(CCNetProject)</buildArgs>
看看我对类似问题的回答.
对不起,我无法提供更好的解决方案.
更新(关于思想家的建议):
使用$[$CCNetLabel]
内部CCNET配置似乎不起作用.
坦率地说,如果有的话,我会感到很惊讶.配置是静态的,CCNetLabel
而是动态的,可能随每个集成构建而变化.假设您可以在配置中访问这些动态属性,则配置可能会随每次构建而更改.由于更改配置意味着自动重新启动CCNET服务器,因此每次构建都会导致服务器重新启动.实际上并不是一个理想的行为,是吗?
好的,找到了解决方案。需要使用名为SvnRevisionLabeller的特定标签来检索 svn 修订版本。然后可以通过CCNetLabel
环境变量使用它。
http://code.google.com/p/svnrevisionlabeller/
<labeller type="svnRevisionLabeller">
<url>http://mysvnrootproject/trunk</url>
</labeller>
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
4275 次 |
最近记录: |