We have a nightly build procedure were 50 jobs start building at the same time. The problem is that they don’t really start running more then 5-6 at a time.
The once that are not running har hanging in the initial SCM checkout on jenkins server. Before Agents are even started to be running.
Now when the initial 5-6 are passed the SCM checkout the agents start up and the next 5-6 jobs start to actually run the SCM checkout.
We have tried with:
SSH has a default of 10 connections
SCM Polling
Max # of concurrent polling set to 30
Anyone have any idea of how to increase the number of parallel Git Plugin initial checkouts ?
Here are a few steps you could maybe take to troubleshoot this issue:
Check the Git server configuration: The Git server might have a limit on the number of concurrent connections it allows. If this limit is set to a low value, it can cause delays in Git operations when multiple jobs are running concurrently. You might need to increase this limit on the Git server.
Check the Jenkins system configuration: Jenkins has a system configuration option named Max # of concurrent builds that controls the maximum number of concurrent builds that Jenkins will perform. If this value is set to a low number, it can limit the number of jobs that can run concurrently. You might need to increase this value in the Jenkins system configuration.
Check the system resources on the Jenkins server: If the Jenkins server is running out of resources (CPU, memory, disk I/O, network bandwidth, etc.), it can slow down the execution of jobs and cause delays in Git operations. You might need to increase the resources available to the Jenkins server.
Check the Jenkins logs: The Jenkins logs can provide useful information about what’s happening when the jobs are running. Look for any error messages or warnings that might indicate what’s causing the delay in the Git checkouts.
I have tried to increase bitbucket timeout from 10 to 30. But multibranch pipelines ignores it. I have also tried with JVM arg:
-Dorg.jenkinsci.plugins.gitclient.Git.timeOut=30
Update:
I managed to configure the jenkins pod and making it used a other timeout then 10 min.
Here is my deployment.yaml config for this timeout setup: