Jenkins 2.0 Beta Available, Adds New Pipeline Build System
The beta of Jenkins 2.0 is now available, adding a new way to define build workflows and improvements to the new user experience.
While Jenkins pipeline plugins aren't new, version 2.0 will include a new core feature (named Pipeline, naturally) that allows users to define their build process with the help of a new domain-specific language (DSL). This DSL is Groovy code and allows for build definitions to be treated more like code. Now, instead of build definitions squirreled away in the product, they can be checked-in to code repositories.
Prior to the new version, other plugins sprang up to solve the same problem, but Kohsuke Kawaguchi, creator of Jenkins, told InfoQ that Pipeline is more than just a plugin:
It really consists of a series of plugins together implementing a significant subsystem in Jenkins. And a part of 2.0 story is that we want to get rid of the "you start from core and install plugins" mentality. Instead, when you get Jenkins 2.0 you should get a set of functionalities we think covers 80% of the use cases, and some of them come from core, others from plugins.
Including pipeline functionality as a core feature matches what others in the industry are doing.
Jacques Chester, a Software Engineer in New York City, thinks that developers looking at Jenkins for pipeline support should also take a look at Concourse. In an interview with InfoQ, Chester says that the the Jenkins Pipeline plugin system is really just patching an inherent flaw. It will "recreate by extension some part of what Concourse does by design. The DNA of Concourse is versioned external configuration, disposable build environments and delegating job planning to the tool instead of wiring it together by hand."
In addition, version 2.0 has a new "Getting Started" experience that presents users with suggestions on which plugins to install.
The Jenkins team expects to have a Release Candidate out in early April, with the final version to follow a few weeks later.