The following post series will introduce you to two approaches of CI/CD for the SAP Cloud Platform. The first (and easier) approach uses the Cloud Platform Continuous Integration and Delivery services which is part of Cloud Platform. It provides graphical configuration dialogs so there is no need to write configuration files or setup a toolchain by your one. In cooperation with with the Transport Management System (TMS) it already offers a complete CI/CD solution. The tradeoff is a more or less fixed pipeline. If a more flexible pipeline is necessary for your projects, then the second approach will show you the major steps on how to use Jenkins and SAP’s Project Piper to create a toolchain that can be adopted to your needs. We’ll illustrate the adoption by integrating Nexus Repository and Sonaqube code scanner into the pipeline.
We’ll cover this topic in multiple blogs, beginning with the the Continuous Integration and Delivery service followed by Jenkins and Piper and ending with including additional features into the pipeline.
Both approaches make use of a simple multi-target-application (MTA) project. We will use the Business Application Studio (BAS) to create it, but you can use every IDE you’re familiar with. The project will include only one UI5 module, additional modules will also work but may need additional settings.
To create the project just open Business Application Studio and create a new Terminal. First, we create a new MTA Project by running
yo and selecting
Basic Multitarget Application. After this, we change to the directory that is created for the project and run
yo again, this time to create a module. Select
Fiori Module from the prompted options, followed by “ui5” for module name and
SAPUI5 Application as template. For approuter, authentication, namespace, Karma tests, view-name, data-service just follow the proposed defaults.
Open the mta.yaml and search for the “deployer” configuration and add a path parameter like this:
- name: test_ui_deployer type: com.sap.application.content path: ui5
Add the project to a git repository, e.g. Github.
will be an introduction to the Cloud Platform Continuous Integration and Delivery service …