I have a requirement to not to trigger the build when the other project is in progress:
<cb:config-template xmlns:cb="urn:ccnet.config.builder">
<project name="prj1" queue="Q1" queuePriority="1">
</project>
<project name="prj2" queue="Q1" queuePriority="2">
</project>
<project name="prj3" queue="Q1" queuePriority="3">
</project>
<project name="prj4" queue="Q1" queuePriority="4">
</project>
</cb:config-template>
Consider build for prj4 is inProgress, when I force the build for the prj1. It shouldn't proceed. Need to show popup and ask for confirmation. Can anyone know how to approach on this?
I am building scripts using nant commands. Thanks.
If project 1 and 2 must run one at a time, put them in a queue that only allows 1 build at a time. You've got part of this done, since your build items are in a single queue (which I somehow missed before).
Im not sure how you'd tell CC.Net where a prompt should appear. While testing, it might appear on your machine if that's where you're testing, but as soon as you deploy - that prompt (in whatever form) is going to appear somewhere else, if you see it at all. CC.Net may be running as a service, so no prompt is going to appear.
If you mean prompt on the web dashboard - I dont know of a way to make this happen. Getting the code to CCTray and modifying it to look for this situation is one choice.
I prefer to have the CCNet servers on autopilot, so I set up the queues and queue depth (ie: # of active builds that can run simultaneously in a particular queue) to manage all of this. Because the docs have moved so much, it can be tough to chase down this info. I see that CC.Net has now moved to github. https://github.com/ccnet/CruiseControl.NET
BTW, I noticed that there is a queue locking feature that I hadnt seen before. That might help at some level, but it doesnt provide a prompt.