Skip to Content
Technical Articles

How to integrate SAP Cloud Platform Transport Management into your CI/CD pipeline

If you wish for a standardized, enterprise-ready change management process for your applications running on SAP Cloud Platform, SAP Cloud Platform Transport Management* is the right service for you. It allows you to manage the transport of development artifacts and application-specific content (such as from SAP Cloud Platform Integration) between different SAP Cloud Platform accounts and adds transparency on the audit trail of changes – get information about who performed which changes in your production accounts and when. Also, SAP Cloud Platform Transport Management allows you to establish a separation of concerns: for example, a developer (of an application or SAP Cloud Platform content artifacts) can trigger the propagation of the latest changes, which then results in a transport handled by a central ops team. 

You can use SAP Cloud Platform Transport Management as an additional layer of control to manage your production landscape (DEV, PRE-PROD, PROD). Also, you have the option to complement a Continuous Integration (CI) approach to, firstly, apply agile principles to your DEV account and then, secondly, apply transport management to implement rules, policies and schedules to control releases to production. Thereby, you get the best out of two worlds with the right mix of agility and control. 

For this combined approach, a smooth integration from the automated CI environment into the controlled transport management environment is key. To enable this scenario, the transport management service is now also integrated into SAP’s Jenkins-based library for continuous delivery – Project “Piper”. 

With this integration, your fully qualified Multitarget Application (MTA) archive gets automatically handed over to the SAP Cloud Platform Transport Management service, along the following typical process flow:

  • First, the artefact is put into the import queue of the target node specified in the CI pipeline (e.g. Pre-PROD)
  • Then, an operator can manually trigger or schedule the import, which results in a physical deployment of the MTA archive into the corresponding sub-account
  • Once the import is executed, a transport is triggered along the defined transport route, so that the MTA archive reaches the import queue of the next node (e.g. PROD)
  • There, again, the physical import can be triggered manually or via a job scheduler

 

How to enable the SAP Cloud Platform Transport Management service in your CI/CD pipeline? 

  1. Ensure that you have access to the SAP Cloud Platform Transport Management service. For more information, see Provide Access to SAP Cloud Platform Transport Management.
  2. Make sure you have set up the SAP Cloud Platform Transport Management service and created a service key. For more information, see Set Up the Environment to Transport Content Archives directly in an Application. 
  3. Configure your SAP Cloud Platform Transport Management landscape. 
  4. Store the SAP Cloud Platform Transport Management service key in the Jenkins secure store as “secret text” credentials. 
  5. Enable the step “tmsUpload” in your Project “Piper” environment by choosing one of the following options:
    • Configure SAP Cloud Platform Transport Management within the Release Stage of the general purpose pipeline of Project “Piper” or
    • Reference the “tmsUpload” step in your existing pipeline. 

 

*) SAP Cloud Platform Transport Management introduction video

2 Comments
You must be Logged on to comment or reply to a post.
  • Thanks for the great blog! Does ABAP in cloud will also use similar concept? The reason for asking is to know the role of ABAPgit if it fits somewhere in this strategy which it should ideally

    Nabheet

    • Dear Nabheet,

      Thanks a lot for your kind feedback, really appreciated! We are working on an integration of SAP Cloud Platform ABAP environment into SAP Cloud Platform Transport Management, which would allow to trigger the import of ABAP content. We are still in progress to finalize the definition of the corresponding use cases and scenarios, please expect more information on these in the upcoming time.

      Best regards,
      Boris

      P.S.: In addition, for ABAP DevOps in general, please be aware of the corresponding statement of direction about CI in an ABAP environment (using gCTS).