CloudBees Jenkins Platform: Accelerating CD in Enterprises

If you follow CloudBees and Jenkins, you must’ve heard a flurry of announcements at the Jenkins User Conferences in Washington, D.C. and London. This blog summarizes all the new goodies that CloudBees has launched at these conferences.

The Launch of the CloudBees Jenkins Platform

Organizations have matured from using Jenkins to do continuous integration to using it as a platform to bring enterprise-wide continuous delivery and they have used CloudBees products - CloudBees Jenkins Enterprise and CloudBees Jenkins Operations Center - to do so.

With the launch of the CloudBees Jenkins Platform, we bundle these in one easily consumable package with a couple of editions (Team, Enterprise) serving small teams and enterprise administrators.

Screenshot 2015-06-09 18.41.56.png

Each edition comes with features that are outlined here (refer to the CloudBees Jenkins Platform documentation for details)

Welcome to “Solution Packs”

The CloudBees Jenkins Platform allows CloudBees to serve enterprise audiences with specific needs better. We do so through the ability to deliver specific feature sets through “solution packs”. One of the first pack that we are launching today, is the Amazon Solution Pack.
 

- See more at: http://blog.cloudbees.com/2015_06_01_archive.html#sthash.v40rD7GA.dpuf

Welcome to “Solution Packs”

The CloudBees Jenkins Platform allows CloudBees to serve enterprise audiences with specific needs better. We do so through the ability to deliver specific feature sets through “solution packs”. One of the first pack that we are launching today, is the Amazon Solution Pack.
 

- See more at: http://blog.cloudbees.com/2015_06_01_archive.html#sthash.v40rD7GA.dpuf

Welcome to “Solution Packs”
The CloudBees Jenkins Platform allows CloudBees to serve enterprise audiences with specific needs better. We do so through the ability to deliver specific feature sets through solution packs. One of the first packs that we are launching today is the Amazon Solution Pack.
- See more at: http://blog.cloudbees.com/2015_06_01_archive.html#sthash.v40rD7GA.dpuf

This pack lets customers share elastic slaves hosted on AWS with all Jenkins masters managed by CloudBees Jenkins Operation Center within an organization - these masters themselves are running on-premise or in the cloud. In addition, the CloudBees Jenkins Platform lets users directly use Amazon Web Services  within a Jenkins job using AWS CLI. Thus, developers can access any service that is accessible through the CLI as part of their build and deployment jobs.

In addition, we are providing AMIs on the Amazon market place to help Amazon customers easily bootstrap the complete CloudBees Jenkins Platform - i.e. both CloudBees Jenkins Enterprise and CloudBees Jenkins Operations Center - on AWS.

CloudBees Jenkins Platform for Pivotal CF

Last November, we announced a partnership with Pivotal and the release of CloudBees Jenkins Enterprise on Pivotal CF. After a successful launch, our customers quickly came back to us and asked support for CloudBees Jenkins Operation Center as well, so that those organizations could roll out an enterprise-wide Continuous Delivery platform fully hosted on the Pivotal CF platform.

So today, we are proud to announce the extension of this partnership with the release of CloudBees Jenkins Operation Center on Pivotal CF. And since we just announced a new packaging of our offering (see above), in a few weeks, we will be providing the complete CloudBees Jenkins Platform on Pivotal CF and remove individual references to CloudBees Jenkins Enterprise and CloudBees Jenkins Operations Center.

CloudBees Jenkins Platform for Microsoft Azure

Microsoft customers have demanded CloudBees Jenkins on the Azure platform for quite a while - and I am happy to announce that Microsoft and CloudBees have signed a partnership to make Azure a prime location for your Jenkins deployments. Full support will come in several steps.

Today, we are releasing CloudBees Jenkins Operations Center/CloudBees Jenkins Enterprise for Microsoft Azure - these are Azure images that help Microsoft customers be up and running quickly with both CloudBees products. The current images are based on our November 2014 release but we will be updating them in the next few weeks with the May CloudBees Jenkins Platform release.

My crystal ball tells me that there will be a lot of interesting announcements as we take the partnership forward.

CloudBees Jenkins Platform for Microsoft Azure

New features in the CloudBees Jenkins Platform
At the Jenkins User Conference, we also announced a number of new CloudBees Jenkins Platform features:

Stabilize production masters and eliminate downtime to teams caused by jobs that aren’t stable: The ability to promote jobs from masters used for testing to masters used for production:

  1. Some of the most sophisticated IT departments, use CloudBees Jenkins Operations Center to manage Jenkins and create new jobs on a test master and then job is stable they want to promote it to production. We have made this process easy and seamless. Features include:
    1. Validate if the job will run successfully on the target master before promoting. Examples include checks mentioned in the next bullet.
    2. Implicitly perform validation before promoting aka “pre-flight checks”. These checks include.
      1. Validate that the core versions of Jenkins on the test and production masters are compatible.
      2. Validate that plugins that are used on the test master are available on the production master.
    3. A job is re-promoted perhaps after a few fixes, then the ability to preserve the history of the job on the target master.

2. Build cross organizational and cross master pipelines: Trigger jobs across masters

  1. This feature helps organizations build CD pipelines that span across masters. Thus, enabling scenarios such as, jobs on Dev teams master tickle jobs on QA teams master. Some of the features are:
    1. Integrated with CloudBees Role-based Access Control: thus jobs can only be triggered by employees with the right permission
    2. Ease of use features such as a quick path browser to easily navigate to the downstream jobs if it is on a different master within a cluster.

3. Improved UX, especially regarding the getting started experience:

  1.  A very common ask is to make the Jenkins UI more modern; we have taken first steps to address it in our product. If you have opinions, both positive or negative, we want to hear them.

New features in CJP but delivered in OSS
At CloudBees, we wear two hats both: Open Source and Proprietary product :-). So some of the biggest features that we have delivered this semester actually landed in OSS (hence are available both in open source and as part of the CloudBees Jenkins Platform).

Workflow Improvements
At the end of last year, CloudBees with the Jenkins community delivered a substantial new sub-system in Jenkins: Jenkins Workflow. Jenkins Workflow helps build real world pipelines programmatically. We have been busy since since and have released multiple new versions (8 to be specific). Workflow 1.8 brings in notable new features including increased support for third-party plugins such as Copy Artifact, Credentials Binding, etc. They are now all supported as first class citizen as part of a workflow definition. You can refer to the compatibility matrix for up-to-date information.

The following table captures most plugin update changes (Refer to the release notes for details):




Plugin Support Improved Workflow DSL Features Improved DSL Features
Copy Artifact buildStep: get downstream build properties Load script from SCM: CI as source code
Credentials Binding waitUntil: wait for external event before starting Safe Restart: restart Jenkins if WF isn’t running
Mercurial Sleep: sleep for sometime before proceeding  
Rebuild: rebuild jobs with initial parameters fileExists: check if a file exists before proceeding  
Build Token Root: securely trigger builds withEnv: attach env variables before proceeding  
Parallel Test Executor    
Mail: support for mail within a workflow step    
Perforce    

The most interesting (well at-least to me :-)) is the ability to do CI-as-code with the “load script from SCM” feature. With this feature, developers can check in their build script into the source code repository, point their Jenkins job to the repository and Jenkins uses the script as its job configuration.

The CloudBees and Jenkins community will continue to add support in Workflow for Jenkins plugins - so watch this space.

Continuous Delivery with Docker

I saved the best for the last: a big effort from CloudBees - in conjunction with the community - has been providing first class support for Docker to build continuous delivery pipelines. I have written a separate blog to call this feature set out.

Parting thoughts:
I am pleased to see the breadth of solutions that we bring to the market today. It isn’t often that a release includes partnerships and solutions offered in the variety of domains as we did today. I am excited that we have pushed the boundaries by enabling modern, sophisticated pipelines with Jenkins and Docker.

What gets me most excited is the potential product and open source opportunities across CloudBees and Jenkins as we go ahead.

I would like to quote Robert Frost on behalf of CloudBees and Jenkins:

The woods are lovely, dark and deep,   
But I have promises to keep,   
And miles to go before I sleep,   
And miles to go before I sleep.

Links

 

  1. The Docker and Jenkins White Paper 
  2. Workflow Compatibility Support

- See more at: http://blog.cloudbees.com/2015_06_01_archive.html#sthash.v40rD7GA.dpuf

Links

  1. The Docker and Jenkins White Paper
  2. Jenkins and Docker Blog
  3. CJP Documentation
  4. Workflow Release Notes
  5. Workflow Compatibility Support

Harpreet Singh
Vice President of Product Management
CloudBees

Harpreet is vice president of product management at CloudBees and is based out of San Jose, CA. 

Follow Harpreet on Twitter. 

 

 

Add new comment