What is a Build Storm?
Welcome to the unending storm – the build storm. If you've worked with Jenkins®, you're likely familiar with this phenomenon. It's the virtual tempest that engulfs your controller during the initial indexing of a Multibranch Pipeline/Organization Folder where there may be numerous branches, pull requests, and tags that result in the creation of corresponding pipelines. These pipelines are scheduled to build simultaneously, creating a massive load on the Jenkins instance. It's a flurry of activity and this, friends, is a build storm.
When Build Storms Typically Occur
Build storms often occur when:
Provisioning new environments
Onboarding new team repos to a controller
Updating branch discovery criteria
Changing discovery markerfile
This issue is particularly troublesome for teams with large repositories containing numerous branches. At scale, this problem is magnified and presents a significant challenge to large organizations that regularly provision controllers from code.
Build with a better build strategy
Enter CloudBees Continuous Integration (CloudBees CI). It's the lighthouse in the build storm, providing a build strategy that prevents such storms by establishing a repository baseline without causing any builds. This build strategy lets you take stock on creation and then trigger builds as normal.
The plugin that solves the build storm problem is called CloudBees Build Strategies - nice and easy to remember. The build strategies plugin adds a build strategy named: 'initial index build prevention.' What does it do, you ask? Well, it alters the indexing behavior so that any branch, PR, or tag discovered during initial indexing will create a pipeline, but it won't build it. This pipeline remains inactive until an SCM event has been made to its corresponding branch, PR, or tag.
Targeted at Jenkins or CloudBees CI admins, this new build strategy allows admins to configure each multi-branch project or organization folder to prevent Jenkins from automatically running the build after the corresponding project is created. Only an SCM event or a manual trigger after that will build the job for the first time.
For enterprises weathering this storm, CloudBees CI provides a practical solution to the build storm problem. With its 'initial index build prevention' strategy, it brings a sense of calm and control to the wild seas of builds, enabling organizations to efficiently manage builds and prevent controller gridlocks. So, brace yourself, Jenkins admins. With CloudBees CI, you can weather any build storm that comes your way.