One build queue for multiple build requests
My customer wants to deploy RTC Build Engine.
There is one AIX build machine which is used for team builds and personal builds. (~100 developers).
Each developer might request a personal build at any time. One JBE would be problematic as it doesn't parallel the builds. JBE for each developer would be a mass.
What will be the best way to set it up?
Thanks,
Liora
Accepted answer
If the build machine is powerful enough to support it, run multiple JBEs on the build machine. (Just make sure that things are configured so that two builds running at the same time don't interfere with each other.) Each JBE that you run would have its own build engine defined on the server (which means each JBE process running on the build machine would have a different value for the -engineId argument). Your build definition would be associated with all of the build engines, so that any of those build engines is able to run that build definition.
You don't need to create one build engine for each user. You want to create exactly as many build engines as your build machine will support. If you decide that your build machine can run six builds at the same time before performance degrades too much, then you would create six build engines and start six JBE processes. If six developers requested personal builds at the same time, all six of those builds would get started. If ten developers requested personal builds, then six of them would start, and the other four would be queued up until build engines were available.
If your build machine can run only one build at a time, then you should have only one JBE, and developers might have to wait a long time for their builds to run. In that case, you should buy more build machines.