2017-12-15 TOMMY TYNJÄ
We are happy to announce a new release of the Jenkins Delivery Pipeline plugin with major improvements for views based on Jenkins pipelines. You can find the official release notes here: https://github.com/Diabol/delivery-pipeline-plugin/releases/tag/release-1.1.0
With the Delivery Pipeline plugin 1.1.0, there is support for fine grained visualization of Jenkins pipeline stages in the delivery pipeline view with proper progress and task status visualization. For Jenkins pipelines, the Delivery Pipeline plugin provides a task pipeline step which allows the delivery pipeline view to render fine grained information about what tasks are involved within a stage, rather than just having one big block visualized for the entire stage and all the operations involved within, which is what you get if you use the default Pipeline Stage View plugin. For e.g. pipeline failures, tasks allows for better information on information radiators on what went wrong without requiring users to actively find this information through the Jenkins UI. You can see a short video example of how Jenkins pipelines can be rendered using the Delivery Pipeline plugin here: https://www.instagram.com/p/BcSLeeBgH__/?taken-by=diabolab
In Delivery Pipeline plugin 1.1.0, the task step can now take a body (also referred to as closures), which now is the recommended way to use the task step in order to render the pipeline view in the most accurate way. You can find an example pipeline here: https://github.com/Diabol/delivery-pipeline-plugin/blob/master/examples/JENKINS-45738-declarative-pipeline-with-task-closures.txt
A core feature that has been available for years for delivery pipeline views based on traditional Jenkins jobs is the ability to render multiple pipelines in the same view. This is now also possible for views based on Jenkins pipelines.
All delivery pipeline views created with a version prior to 1.1.0, where this feature was not present, will still work after upgrading to 1.1.0. The internal structure for how the pipeline configurations are stored has changed, but the Delivery Pipeline plugin is able to convert views created prior to this version to a compatible configuration when a view is edited. The configuration for a particular view (and its corresponding config.xml) are preserved until it is edited in the UI where the configuration will be migrated to use the new internal structure. With these changes, views that are created, or has been edited, when using the Delivery Pipeline 1.1.0 will not be able to be rendered with an older version of the Delivery Pipeline Plugin (for instance if rolling back to a previous version, since the internal structure of the configuration is different). In such cases, view configurations will be preserved, with the exception for the Jenkins pipeline job configuration and pipeline name visible in the view.
In order to drive future development and sustainable maintenance of this project, the minimum required Java version in order to support the Delivery Pipeline plugin has been raised from Java 7 to Java 8. Delivery Pipeline plugin 1.1.0 therefore requires you to run your Jenkins instance using Java 8.
There are a lot of great ideas (you can find them in the issue tracker on component delivery-pipeline-plugin) on how to evolve the Delivery Pipeline plugin, but development time for the current maintainers are unfortunately limited. Since this is an open source project, we welcome all new contributions! If you are a user of the project and want to give a hand back to support future development, we are more than happy to help you get started.