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.
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:
|✓||✓||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 188.8.131.52 and 184.108.40.206.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: 220.127.116.11)
- Fixed releases have a version scheme with 5 numeric parts (example: 18.104.22.168.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. 22.214.171.124 (CloudBees Jenkins XXX 126.96.36.199-rolling)
- Fixed Release -> Jenkins ver. 188.8.131.52.1 (CloudBees Jenkins XXX 184.108.40.206-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
- Identify which CloudBees Jenkins Enterprise (CJE) release line (rolling vs. fixed) you are currently running.
- Visit go.cloudbees.com to download the latest release for your release line (WARNING: You must be logged in to see available downloads).
- 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.
- Install CJP as appropriate for your environment, and start the CJP instance.
- If the instance needs additional input during upgrade, the setup wizard prompts for additional input when you first access the instance.
Related Knowledgebase Articles
- What plugins are installed on a fresh install of CJP 2.x?
- What plugins are upgraded when upgrading from CJP 1.x to 2.x?
- What do the options in Beekeeper Upgrade Assistant mean?
- What plugins are upgraded when I upgrade an instance from CJP 2.x to a newer 2.x version?
- Why are core upgrades not shown in CJP 220.127.116.11 and 18.104.22.168.1?
- Pipeline shared libraries
- Pipeline Milestone Step Plugin
- Using the new Stage/Milestone/Lock steps
- CloudBees Jenkins Operations Center User Guide
- CloudBees Assurance Program