Hi,
Is there an option to adjust or limit the number of builds that can be performed simultaneously?
Also, can I set it up by per account?
We have four build agents and experience has shown that about 13 simultaneous builds per agent can run without problems.
Then I created a resource Builds with the following settings
Node Selection = All Build Agents
Resource Count = 13
In the Master Step I ask under Node Selection
One node with specific Resource = Builds
For each build that is started, one is subtracted from the resource count.
This means that we can run a maximum of 52 simultaneous builds on 4 build agents.
Georg
My team experimented with putting checks in the Pre-Queue step but could not get a stable solution working. I would love to see an example.
We couldn't use resource pools because resources are machine-specific and we needed to limit the total number of builds across all machines (due to other resource limitations on our network).
I tried that; however, our workflow requires that the requests be queued until a resource comes available.
We tried that with a script that counted running builds, but it caused the entire queue to hang.
Would this work better?
def loopSeconds = 15; // time to wait between retries
while (system.buildEngine.getBuildRequests(null) >= vars.getValue( "maxRunningBuilds" )) sleep( loopSeconds * 1000 );
maxRunningBuilds would be a user-defined value.
This will hang the UI if request build manually. I filed a feature request to address this: