First Rolling Release Improves Pipeline in CloudBees Jenkins Platform 2.7.20

Bhavani Rao's picture

We are excited to announce the availability of release 2.7.20, which includes significant improvements to pipeline functionality, as well as important bug fixes. This is also the first “rolling” release, as we transition to a more frequent release model to deliver our newest functionality to users as soon as possible. In conjunction with Jenkins 2.x, this release is the first available in two channels, rolling and fixed:

  • Rolling releases are issued monthly
  • Fixed releases are issued semiannually, although key fixes will also be applied throughout each six-month period as needed.

Release Highlights

Shared Pipeline Libraries Make Scripts Easier to Reuse

When you have multiple Pipeline jobs, you often want to share some parts of the Pipeline scripts between jobs to keep from repeating yourself. The new Pipeline shared libraries plugin adds re-use functionality by allowing you to create “shared library script” in SCM repositories, so that Pipeline snippets can be created once and called upon in multiple projects. Centrally managed shared Pipeline libraries reduce coding and save time.

Improved Pipeline Control with New Stage, Lock and Milestone Steps

The stage step has been used for all functionality related to the flow and visualization of builds through the Pipeline: grouping build steps into visualized stages, limiting concurrent builds, and discarding stale builds. To improve upon each of these areas, we decided to break this functionality into discrete steps rather than push more and more features into an already packed stage step.

  • Stage - the stage step controls segmentation of a Pipeline, grouping steps to provide clear, predictable boundaries for each section.
  • Lock - the lock step controls the number concurrent builds a Pipeline can run within a defined section of the Pipeline.
  • Milestone - the milestone step controls the order that concurrent builds of a Pipeline will finish, discarding older builds that will not finish before more recent builds.

As before, Stage groups steps, so they can be visually displayed in the Pipeline stage view. Lock and milestone increase control of builds, so that there is only one build in a Pipeline section and pipeline integrity is protected because older builds are automatically stopped when superseded by a newer build.

Improvements & Fixes

Rolling Release Fixed Release Features & Improvements
  Jenkins Core upgraded to 2.7.20 (release note)
  Improved management of Pipeline Shared libraries, including the @Library annotation and hosting shared libraries in external SCMs.
  New block syntax for the stage step
  Fixes and performance improvements in the Pipeline Stage View, including support for the new stage step syntax.
  More deterministic rules for the use of @NonCPS and additional features available in Pipeline Groovy Scripts, in the use of environment variables and build parameters.
  Improvements in the handling of resumed jobs
  Better handling of parallel branches.
  New milestone step
  Checkpoint integration with the new shared library features
  Inclusion of the Operation Center Analytics Reporter in the Setup Wizard selection of plugins.
Rolling Release Fixed Release Fixes
Fixes to RBAC group membership propagation from CJOC to client masters.

Fixes to the Beekeeper plugin, including:

  • No filtering is performed in the Plugin Manager when Beekeeper is enabled but the Update Center configuration is enforced by CJOC.
  • When changing Beekeeper configuration, update center is automatically refreshed.
Additional fixes related to Move / Copy / Promote operations.
A fix to the issue that caused Manage Jenkins page shows an error when a core upgrade was available. To avoid that current users of CJE and CJOC 2.7.19.1 and 2.7.19.0.1 are affected by this issue, no core upgrades will be offered for that specific version through CloudBees Update Centers.
Improved documentation about CloudBees Assurance Program (CAP) and the Beekeeper plugin (link)

Upgrading to the New Release

What Release Am I On?

You can tell which release line you are running by checking the footer of your Jenkins instance:

  • Rolling releases have a version scheme with 4 numeric parts (example: 2.7.19.1)
  • Fixed releases have a version scheme with 5 numeric parts (example: 2.7.19.0.1)
  • Legacy releases have a version scheme with 2 numeric parts (example: 15.11 or 16.06)

Here are some example footers:

  • Rolling Release - > Jenkins ver. 2.7.19.1 (CloudBees Jenkins XXX 2.7.19.1-rolling)
  • Fixed Release -> Jenkins ver. 2.7.19.0.1 (CloudBees Jenkins XXX 2.7.19.1-fixed)
  • Legacy Release -> Jenkins ver. 1.651 (CloudBees Jenkins XXX 16.06)
  • Legacy Release -> Jenkins ver. 1.625 (CloudBees Jenkins XXX 15.11)

How to Upgrade

Review the CloudBees Jenkins Enterprise Installation guide and the CloudBees Jenkins Operations Center (CJOC) User Guide for details about upgrading, but here are the basics:

  1. Identify which CloudBees Jenkins Enterprise (CJE) release line (rolling vs. fixed) you are currently running.
  2. Visit go.cloudbees.com to download the latest release for your release line (WARNING: You must be logged in to see available downloads).
  3. If you are running CloudBees Jenkins Operations Center (CJOC), you must upgrade CJOC first, because you cannot connect a new CJE instance to an older version of CJOC.
  4. Install CJP as appropriate for your environment, and start the CJP instance.
  5. If the instance needs additional input during upgrade, the setup wizard prompts for additional input when you first access the instance.

Related Knowledgebase Articles

Related Documentation

Technical Release Notes

Add new comment