Jenkins Pipelines for SAPUI5 and Fiori Development on SAP Cloud Platform

This will make it much easier to set up your Continuous Delivery or Continuous Integration pipelines in your Jenkins 2 environment. Our goal is to speed up your delivery significantly, and lay the foundation for foundation of “Pipeline-as-Code”; treating the continuous delivery pipeline as part of the application to be versioned and reviewed like any other code. [1]

Our offering consists of two parts:

A shared library containing steps and utilities that are required by our Jenkins pipeline

A Jenkins pipeline using the shared library to implement CD processes for SAPUI5 and SAP Fiori applications on SAP Cloud Platform

You can run the pipeline out of the box, take them as a starting point for project-specific adaptations or implement your own pipeline from scratch using the shared library.

Download and Installation of the Shared Library

Open the system configuration page (Manage Jenkins > Configure System).

Scroll down to section Global Pipeline Libraries and add a new Library by clicking the Add button.

set Library Name to piper-library-os

set Default Version to the branch or tag you want to consume (e.g. master or v0.1)

set Retrieval Method to Modern SCM

set Source Code Management to Git

set Project Repository to https://github.com/SAP/jenkins-library

Save changes

Now the library is available as piper-library-os and can be used in any Jenkinsfile by adding this line:

@Library('piper-library-os') _

Jenkins will download the library during execution of the Jenkinsfile.

Setting up Your Pipeline

There are several ways to consume the Jenkinsfilethat contains the flow of your pipeline. In this blog, we’ll only cover the simple case which requires you to store the Jenkinsfile in your project’s source code. Additionally, you need to create a new pipeline job in Jenkins that retrieves a pipeline from an SCM.

This screenshot shows an example configuration for consumption of a Jenkinsfile (change the repository URL to match your application project):

Configuration of the Pipeline

Each Jenkinsfile requires project specific configuration files in the application sources. Templates for these configuration files are available in the same folders as the respective Jenkinsfile. Links to the respective documentations can be found in the pipeline overview section.