Yesterday was the first day of the Jenkins User Conference in Santa Clara, and so far, it’s been a pretty great show! Kohsuke Kawaguchi, who created Hudson and later Jenkins, kicked everything off with his keynote address focusing on the growth of Jenkins to date and what’s next for the tool.
Jenkins recently celebrated its 100,000th install, and total installs have increased 30% year over year. Jobs created in Jenkins have been increasing 67% year over year, and according to a June 2014 survey from Eclipse, 38.4% of their users use Jenkins. What really surprised me is that Jenkins currently has about 350,000 build slaves. Amazon has about 450,000. Outside of CloudBees, companies like IBM, RedGate, Facebook, Ericsson, and Salesforce are all building new processes and tools around Jenkins. Everyone’s favorite butler has definitely proven itself to be a major player across the industry.
Kohsuke also gave us a peek at a few things to come. The first is the start of official worldwide Jenkins meetups, starting with the San Francisco Bay Area on September 23rd and expanding from there. The second was the announcement of a Jenkins certification program for users and administrators, which is coming soon.
On the technical side, we delved a bit more into the Jenkins workflow plugin and Docker. Right now, the main benefits of the Workflow plugin are to make complex tasks easier to perform, make Jenkins easier to use, and to scale job management. However, there is no configuration UI, which introduces some pain points with an otherwise powerful tool, especially when lots of builds are being executed at the same time. One problem they’re working on is reducing the touch necessary to create a build in Jenkins. Right now, users need to create a “jenkinsfile,” create a job in Jenkins, and specify the SCM URL. Their goal is to reduce this pipeline to the first step and have everything else be automated.
CloudBees uses Docker to manage Jenkins' infrastructure, but there have been problems with too many images. Images change all the time, which means there is a lot of work that goes into making sure new versions point to the correct image. To solve the problem, they took a page out of UPS’s playbook, and have adopted their own “tracking number” system for containers, called the Docker Traceability Plugin.
To close the keynote, Kohsuke made two things very clear. First, his goal and CloudBees’ goal is to make Jenkins as widely adopted and accepted as a tool like Git, to be seen as an indispensible part of the development process. Second, they want to know what will it take to make Jenkins useful in the next ten years, and what will it take from continuous integration to continuous delivery. Now, more than ever, they’re looking to the community to help solve their issues and improve.