在巡航控制配置文件中,我使用一组并行任务来调用某些NAnt目标。我注意到CC系统参数(如CCNetBuildDate)没有被推送到NAnt脚本,而当我删除并行标志时它们被推送了。如何将CCNetBuildDate信息推送到并行任务中?

最佳答案

当我测试此(1.5)时,CCNetBuildDate的值为0001-01-01。

在修复此错误之前,您可以在执行并行任务之前保存正确的设置。由于您无法覆盖在命令行中传递的属性,因此必须更改其名称或使用<exec>直接调用nant:

    <nant>
        <buildFile>SaveCCNetParameters.build</buildFile>
     </nant>
     <parallel>
       <tasks>
         <exec>
            <executable>$(NAntExePath)</executable>
            <buildArgs>-buildfile:Build1.build @CCNetBuildParameters</buildArgs>
         </exec>
         <exec>
            <executable>$(NAntExePath)</executable>
            <buildArgs>-buildfile:Build2.build @CCNetBuildParameters</buildArgs>
         </exec>
       </tasks>
     </parallel>


CCNetBuildParameters是一个类似于以下内容的文件:

-DCCNetBuildDate=2012-11-10
-DCCNetBuildTime=12:12:12
-DCCNetLabel=123
[...]

关于cruisecontrol.net - 在NAnt并行任务中获取CCNetBuildDate,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/12394652/

10-13 07:07