CloudBees Releases Jenkins EnterpriseDecember 20, 2011
by Kostis Kapelonis
CloudBees has announced Jenkins Enterprise, a commercial version of the open source continuous integration server that is aimed at companies with big Jenkins installations.
The Enterprise version focuses on:
Technical support available 24/7 on a global basis.
Extension of Long Time Support versions from 3 months (community supported in the open source version) to 12 months (in the Enterprise version).
Extra proprietary Jenkins plugins useful to companies with large scale Jenkins installations.
CloudBees employs Koshuke Kawaguchi who lead the development of the original Hudson before the split. In addition, several CloudBees employees are Jenkins committers. So while other companies may offer professional Jenkins support, CloudBees clearly has deep expertise on Jenkins internals.
Another feature of Jenkins Enterprise is less frequent updates for those companies that request it. The original Hudson had a very busy release schedule. Jenkins continues this trend and new versions might come out even weekly. While this pace shows healthy development and solid interest, it does not fit very well companies that need stable, long lasting releases. Several companies keep private branches of the Hudson/Jenkins code for stabilization efforts.
To address this issue, Jenkins introduced LTS versions (similar to Ubuntu Linux) that happen every 3 months. This service is offered by the open source version. Jenkins Enterprise extends the 3 month window to 12 months. Companies who wish to do so, can select an LTS version and keep it up to a year knowing that they will still get all the important updates (e.g. critical security fixes).
The most user visible addition to Jenkins Enterprise compared to the open source edition is a set of plugins that solve issues encountered in big Jenkins installations. At the time of writing these plugins are:
Folders plugin (large installs)
Templates plugin (large installs)
Backup scheduling plugin (large installs)
Role based access control plugin (security)
Wiki Text Descriptions plugin(security)
VMware Auto-Scaling plugin (better utilization)
Even Load Strategy plugin (better utilization)
Skip Next Build plugin (better utilization)
The Templates plugin may be useful to many companies (regardless of Jenkins installation size) because it addresses the problem of similar jobs. Several times developers create jobs which have the same settings apart from a single detail such as the branch of the source control system, the post build step, or the Maven profile used. Having to define these jobs manually is cumbersome because a later change cannot be easily applied to all jobs automatically. Creating new jobs in a copy-paste manner from existing ones is an error-prone process. Capturing “sameness” of jobs is such an important characteristic that Oracle has decided to include it as a major new feature in Hudson. Hudson recently released version 2.2.0 that supports Project Cascading (available in the open source version).
The rest of the plugins are clearly aimed at large Jenkins installations with a lot of projects/jobs which may exist outside the intranet in a public facing address.
InfoQ contacted Steven Harris (formally of Oracle, now Senior VP of Products at CloudBees) for some clarifications:
InfoQ: What type of companies should adopt Jenkins Enterprise? What is the target group?
Although Jenkins is used in both large and small organizations, we expect Jenkins Enterprise to be of most interest to organizations with large numbers of servers dedicated to Jenkins. There are two reasons. First, these organizations have more concerns and can benefit most from the additional plugins, which help address security, sprawl, and optimization. Second, these organizations often have constraints on software update processes and require committed level of support. Recent data from a survey of more than 600 Jenkins users shows that 82% of respondents consider Jenkins to be mission-critical. Almost 20% have 10 or more machines servers dedicated to Jenkins, and 13% have more than 50, so we see a growing need for these kinds of capabilities.
InfoQ: Is Jenkins Enterprise aimed only at current Jenkins users or Hudson as well? Can they both use it as a drop-in replacement for their current system or extra changes are needed (e.g. in the case of Hudson)?
Jenkins is basically a drop-in replacement for Hudson, but both our support and CloudBees plug-ins are only provided for Jenkins. So, the path for Hudson users to take advantage of Jenkins Enterprise would be to take the few hours it takes to get Jenkins in place first. Then they just open the Jenkins Update Center and have access to the Jenkins Enterprise plugins.
InfoQ: Who should run Jenkins Enterprise and who should run Jenkins in the cloud (now that CloudBees offers both)?
It is possible to use both! Our Jenkins service lets companies pay only for the resources they use to run Jenkins and extends additional one-click access to source control and partner ecosystem offerings. So, it eliminates the headache of IT ops and setting up of additional resources when your Jenkins needs to grow, and you’re not charged for resources sitting around when not in use. You can use the Jenkins Enterprise plugins and support using our hosted Jenkins service, too, of course. The integrated ability to stage running applications on our runtime service (RUN@cloud) also makes it incredibly easy for teams to share their work and adopt a continuous delivery strategy as part of their agile practice. Jenkins Enterprise is a great solution for organizations who are focused on improving their on-premises Jenkins. As mentioned earlier, Jenkins Enterprise helps address security, sprawl and optimization issues and every organization that manages its own Jenkins needs help in these areas.
InfoQ: How exactly is the 12-month LTS achieved? Are the same bug fixes going to appear in the community release at the same time as well? Are they going to appear at a later time (or at all)?
Fixes will be made using the current LTS, and back-ported to the previous three versions, effectively giving a year time window and making it so that people who want to stay on a particular LTS for longer than the normal three month Jenkins community cycle don’t have to move versions but still get fixes. We expect that almost all fixes will end up in the community release, thereby strengthening the community itself. There could be fixes that we need to deliver to a particular Jenkins Enterprise customer that we or the community feel are inappropriate for LTS, which is aimed at stability, but we expect these to be exceptional cases.
InfoQ: What other Enterprise plugins will be developed in the future apart from those already announced?
We expect to continue to raise the bar on the three initial themes of security, large installations, and optimized execution. We also expect to address themes like reporting and failover. Also, because the community is such an incredible strength of Jenkins, we will continue to work diligently within the community simply to make Jenkins better overall, thereby raising the bar against which our Enterprise plugins have to add value.
InfoQ: Any thoughts on Hudson vs. Jenkins now that the dust has settled? How is Enterprise Jenkins different by Sonatype supported Hudson? What are the advantages over the competition?
We captured our position on this in a white paper we called Jenkins—The Safe and Sensible Choice For Your Continuous Integration (CI) Investment. We expect Hudson to emerge from incubator status at Eclipse shortly, but the former Hudson community has pretty much voted with its feet and their commitment is to Jenkins. We will have to see if Hudson’s visibility in the Eclipse community changes things. Sonatype appears to have focused their energy around their Insight product at this point, not Hudson.
InfoQ: Can you give us an indication of pricing?
Our pricing is based on the actual numbers of executors running within an organization. This pricing means that organizations pay only for resources used, say as opposed to per user based pricing. Also, as expected of any enterprise class support offering there are multiple tiers. Organizations looking to buy can contact us at this link. Meanwhile, we recommend organizations to try Jenkins Enterprise as it has a 30-day trial period. Our public cloud offering pricing is available here.
Jenkins Enterprise is available in a trial version (1 month) as a direct download. The installation is similar the open source version and this is the easiest way to evaluate the extra plugins in a running instance.