So I was looking at the CCNet documentation this morning because I needed to refresh my mind regarding some syntax. As I was searching I found the Parallel Task feature. This feature allows you to run several tasks at the same time as the name might indicate. Well this is all well and good and I will use the Parallel Task feature. But what was even more exciting to me (I get excited easily) was the Sequential Task feature. I know, I know. You say CCNet has always had sequential tasks. In fact, they are built sequentially automatically. Yes this is true.
But what I could never do is have CCNet move on to the next task if the first task failed. Now I can. See, the Sequential Task has an attribute associated with it called continueOnFailure. This is a boolean attribute that if set to “true” allows the set of tasks inside the sequence to build even if the previous one failed. I love it!
I love it because I am using a ccnet applet tool which I have written about in a previous post that allows me to forcebuild a CruiseControl.Net project from the command line. This comes in very handy. Well, I use this in all of our builds here at Emergent. But sometimes because of the nature of our re-usable config files I want to force a build that may not exist yet on some build machines, say, if I were just testing it on one machine. So I put these forcebuild steps inside this sequential task with the continueOnFailure set to true and I am golden.
I haven’t put this into practice yet because I just found out about it. But, I’ll let you know if it doesn’t work. I’m thinking it will.
Till next time…