CruiseControl.NET check output for success messages
We have a very large legacy system which is built using complicated batch files. Our CruiseControl.NET server simply calls the batch files and checks the return code, which works fine and produces a successful build.
Sometimes however the batch file doesn't seem to return properly after a successful build, an开发者_如何学God CruiseControl.NET simply hits the timeout and reports the build as failed.
Is there any way I can get CruiseControl.NET to check the output from the batch file for the string which indicates a successful build, and correctly report the status of the build?
(When I get a spare day or two I want to rewrite the build scripts using NAnt or something, but it's not been given a high priority since its so complicated, and it's currently working)
EDIT: this is the entry in ccnet.config
<project name="MyProject" queue="Q1" queuePriority="1">
<workingDirectory>D:\MyProject</workingDirectory>
<triggers />
<tasks>
<exec>
<executable>buildexe.bat</executable>
<baseDirectory>D:\MyProject</baseDirectory>
<buildArgs>V12.8 MyProject</buildArgs>
<buildTimeoutSeconds>6000</buildTimeoutSeconds>
<successExitCodes>0</successExitCodes>
</exec>
</tasks>
<publishers>
<xmllogger logDir="D:\MyProject\logs\V12.8" />
</publishers>
</project>
Did you try explicitely setting the successexitscodes?
See http://confluence.public.thoughtworks.org/display/CCNET/Executable+Task
精彩评论