Skip to Content
Technical Articles
Author's profile photo Harald Stevens

Interplay of SAP Cloud Platform Transport Management, CTS+ and ChaRM in hybrid landscapes

Overview

Many customers are confused which tools to use when it comes to transporting content in hybrid (cloud and on premise) landscapes. This blog describes our recommendations when to use SAP Cloud Platform Transport Management service (TMS) and when to use enhanced Change and Transport System (CTS+). It also talks about how these tools can be combined with each other and with SAP Solution Manager Change Request Management (ChaRM) or Quality Gate Management (QGM).

 

High-level statements

Let’s start with some central statements:

  • Transport Management (TMS) handles transport of development artifacts and application content in the cloud
  • Enhanced Change and Transport System (CTS+) mainly deals with transport of non-ABAP content on premise
  • TMS and CTS+ can peacefully coexist
  • Both tools can be integrated into SAP Solution Manager Change Request Management (ChaRM) or Quality Gate Management
  • TMS and CTS+ can also be combined with Continuous Integration Pipelines for handling the (Continuous) Delivery

 

As all of you know ‘the devil is in the details’, so let’s have a closer look.

The fine print

 

SAP Cloud Platform Transport Management

SAP Cloud Platform Transport Management (TMS) is THE solution for transporting content in SAP Cloud Platform (Neo and Cloud Foundry environment) and is generally available since December 2018. It is also available in a trial environment.

TMS is a service running in the Cloud Foundry environment, but the transport targets can be subaccounts in Neo environment , spaces in the Cloud Foundry environment and even tenants of multi-tenant enabled content runtimes like SAP Data Hub. The transports can be performed across global accounts and even between different regions (aka data centers).

The architecture of TMS allows the transport of any type of content by offering APIs to the consuming SAP Cloud Platform services or applications. This means that services which want to make TMS available for their content have to implement these APIs. As of December 2019 this has already been done for:

  • SAP Cloud Platform Integration in the Neo environment
  • Workflow in the Cloud Foundry environment
  • SAP Fiori in the Neo environment
  • Business Logging in the Cloud Foundry environment
  • HTML5 repository in the Cloud Foundry environment

Besides that, TMS can transport development artifacts which can be packaged in Multi-Target Application (MTA) archives and SAP HANA delivery units if the SAP HANA database is hosted in SAP Cloud Platform.

For more details please have a look into the SAP documentation on TMS.

We will step-by-step increase the coverage of Transport Management for SAP Cloud Platform services. We also plan to use TMS for transporting application specific content of some of SAP’s SaaS solutions, for example SAP SuccessFactors.

On the other hand, we are not planning to extend the reach of TMS to on-premise systems (exceptions may apply to private cloud scenarios…).

In summary SAP Cloud Platform Transport Management will be further developed to cover a growing part of SAP Cloud Platform content and is therefore the way to go for customers planning to implement projects using SAP Cloud Platform services.

 

Enhanced Change and Transport System

The enhanced Change and Transport System (CTS+) has been available for many years to transport on premise non-ABAP content (like SAP Netweaver Development Infrastructure) via the ABAP Change and Transport System. You can model your non-ABAP systems as virtual systems in your transport landscape and connect them via transport routes.

This concept has been extended a few years ago to SAP Cloud Platform (Neo and Cloud Foundry environment). Please note that the ABAP server acting as CTS+ control system (in many cases an SAP Solution Manager) resides in your on premise data center even for the SAP Cloud Platform transports.

I have described setting up CTS+ for SAP Cloud Platform in this blog.

The basis for transporting SAP Cloud Platform content via CTS+ is the Multi-Target Application (MTA). The content to be transported is packaged into an MTA archive file and attached to the CTS+ transport request.

This in turn means that only cloud content that can be packaged into an MTA can be transported with CTS+. For a detailed list of which artifact types are covered by MTA see here for Neo and here for Cloud Foundry. Basically we are talking about development artifacts like HTML5 or NodeJS applications and some application content like SAP Cloud Platform Integration packages in the Neo environment.

We will continue to support the MTA based transport of SAP Cloud Platform content via CTS+ but we are not planning to extend the CTS+ coverage to other content types in SAP Cloud Platform or other SAP cloud based SaaS solutions.

So if you use MTA based content only in SAP Cloud Platform, CTS+ can be a valid choice.

 

Coexistence of TMS and CTS+

As I have written in the previous section CTS+ supports only SAP Cloud Platform artifacts which can be bundled into a Multi-Target Application. This is not the case for many service specific artifact types in SAP Cloud Platform. Therefore, there might come the time to use the cloud based Transport Management service and the on premise based enhanced Change and Transport System in parallel.

Technically this is not a problem, even when targeting the same subaccounts (or spaces) in SAP Cloud Platform. The challenge lies more on the governance level. A typical approach would be to clearly define which content types are transported with which tool. For the MTA enabled artifacts you have the choice between TMS and CTS+, whereas the rest always calls for TMS.

In the long run we recommend performing all cloud related transports via TMS and the on premise transports with CTS+.

 

Integration with SAP Solution Manager Change Request Management

In many cases an application involves several parts which run in separate systems in your landscape. A typical example would be a functionality running in a backend system (like SAP S/4HANA) running on premise which is extended by a nice frontend running on SAP Cloud Platform. These kinds of projects call for a hybrid change management covering all environments and allowing to synchronize the changes in the different systems respectively subaccounts or spaces.

We offer tools in SAP Solution Manager for this requirement, named Change Request Management (ChaRM) and Quality Gate Management (QGM). The good news is that both CTS+ and TMS can be integrated into the ChaRM or QGM processes.

The integration of CTS+ into ChaRM is available for quite a while so that MTA based CTS+ transports of SAP Cloud Platform content can be included into and managed via change documents in SAP Solution Manager. Via the central Change and Transport System (cCTS) it is even possible to make SAP Cloud Platform Neo subaccounts or Cloud Foundry spaces members of so-called system clusters which group several systems of different landscapes with the same role (development, test, production, …) into one ‘super-system’. The transports from the different source systems in the development cluster are also bundled forming so called transport collections. For more information about cCTS please check the corresponding SAP documentation.

The default configuration for this scenario would be that the SAP Solution Manager would not only run the Change Request Management functionality but would also be the central transport server for CTS+. Here it is important to know that the CTS+ integration of SAP Cloud Platform requires an SAP Netweaver release of 7.40 SP10 or above. Therefore, this setup requires an SAP Solution Manager 7.2 (but you all should have upgraded your SolMan 7.1 by now…).

The integration of SAP Cloud Platform Transport Management into ChaRM, however, is quite new. It has been released in December 2019 with SPS 10 for SAP Solution Manager 7.2. The configuration is described in this document on SAP Help Portal.

Basically, the TMS transport nodes are modeled as external services in SAP Solution Manager and then assigned to a solution. When using the integration, you can select which transport requests in TMS belong to a specific change document in Change Request Management. With this information SAP Solution Manager is able to trigger the imports into the corresponding subaccounts whenever the change document reaches the appropriate state, for example ‘To be tested’.

On the side of TMS the corresponding transport nodes are marked as being ‘controlled by SAP Solution Manager’. This prevents these nodes from performing imports directly from within TMS.

The overall architecture for using TMS and CTS+ with SAP Solution Manager looks like this:

 

Usage of TMS and CTS+ in CI pipelines

Development teams in SAP Cloud Platform very often make use of Continuous Integration processes by storing the development artifacts in a central source code repository like Git. Upon committing a change towards this source code repository a continuous integration server like Jenkins is triggered and runs a CI pipeline which involves steps like building the development artifacts, deploying them to a test environment, running automated tests and code scans, etc.

In the context of the project ‘Piper’ SAP offers pre-configured CI pipelines for typical scenarios and also a library of pipeline steps that can be used by you. These steps include the ones necessary to communicate with CTS+ and/or TMS. Built on these pipeline steps there are two template scenarios for using CTS+ or TMS in a Continuous Integration / Continuous Delivery context:

Summary

You should see enhanced Change and Transport System and SAP Cloud Platform Transport Management as two independent transport tools with different target environments. CTS+ (mainly) for on premise non-ABAP transports and TMS for transports in the cloud. In many hybrid environments both tools will be used in parallel. The overlap on Multi-Target Application based content allows for a smooth transition from CTS+ to TMS where needed.

An integration into higher level change management tools like SAP Solution Manager Change Request Management is possible for both, CTS+ and TMS. On the development side both tools can be integrated into Continuous Integration / Continuous Delivery scenarios.

I hope to have clarified the uses cases for CTS+ and TMS in the context of hybrid landscapes and look forward to your feedback and questions.

Assigned Tags

      17 Comments
      You must be Logged on to comment or reply to a post.
      Author's profile photo Shaji Narayanan
      Shaji Narayanan

      Hi Harald,

      Thank you for the post, it gives a very good overview of possible integrations between ChaRM and SCP Transport Mgmt.

      Can you please share more details on the following:

      1. SAP Cloud Products that could be connected to SCP Transport Management.
      2. License implications for using SCP Transport Management.  Is it included in SCP license or does it need to be brought separately?
      3. Will SAP deliver functionality in Solution Manager to create and release SCP transport requests via ChaRM Change Documents?  [Per my understanding, ChaRM can currently only import SCP transport requests].

       

      Thanks and best regards,

      Shaji

       

      Author's profile photo Harald Stevens
      Harald Stevens
      Blog Post Author

      Hi Shaji,

      thank you very much for your feedback. Let me try to answer your questions:

      1. Let me point you to our Transport Management roadmap. In the last row you can find information on the currently supported and planned SCP services and SAP cloud products: https://blogs.sap.com/2020/06/19/sap-cloud-platform-transport-management-roadmap-as-of-june-2020/
      2. SCP Transport Management is a paid service which can be used with cunsumption-based pricing within a CPEA contract. It can also be subscribed to from the SAP store. Please see this blog (section Pricing) with links to the corresponding offerings.
        The pricing in both cases is based on the data volume uploaded to TMS (imports are not charged separately). The cost is 18 EUR / month per 1 GB upload volume. Depending on the size of your artifacts this should be sufficient for dozens to hundreds of transports (and unlimited number of imports) per month.
      3. We are currently not planning to implement the functionality described by you. In fact there is no explicit releasing of TMS transports (in contrast to CTS or CTS+ transports). In TMS the first step is to upload a file and receiving a file ID. With this file ID a new transport is created and immediately released.
        One important scenario in our eyes is to use CI/CD for development and do a handover to TMS at the end of the pipeline and create a transport in this step. Here we are thinking of an automatic assignment of the transport request to the change document.

      Kind regards
      Harald

       

      Author's profile photo Shaji Narayanan
      Shaji Narayanan

      Hi Harald,

      Thank you for the detailed reply; I will go through the links you have provided.

       

      Best regards,

      Shaji

      Author's profile photo Nishant Kathuria
      Nishant Kathuria

      Hello Herald,

      Thanks for the informative blog.

      I have a couple of questions

      1. How do we keep track of the BTP services that offer native integration with Transport management service? You did have a few mentioned but that list, I assume, will grow.
      2. Kindly share links/documents that explain, how the Transport management service can be used to automatically transport changes for the following BTP services mentioned in your blog.
        1. SAP BTP CF Workflow
        2. SAP BTP CF HTML5 Application repository.

      Thanks

      Nishant Kathuria

      C : +1 919 917 6873

      Author's profile photo Vinod Patil
      Vinod Patil

      Hello Harold,

      Thank you for nice blog.

      How does Transport Management in C/4HANA (Hybris/Cloud for customer) fit in this puzzle? As per my understanding its completely different and is not integrated with CHARM or other services. Please guide.

       

      Regards,

      Vinod

       

      Author's profile photo Harald Stevens
      Harald Stevens
      Blog Post Author

      Hello Vinod,

      you are correct. In some of our SaaS solutions (C/4HANA being one of them) we find legacy transport tools which are more or less stand-alone. It is our ambition to unify all cloud transports using SAP Cloud Transport Management (and thus being available in ChaRM), but this will take some years (according to current plans...).

      In our cTMS roadmap you can find the first SaaS solutions (SAP SuccessFactors solutions, SAP CPQ, SAP Ariba solutions) being planned for the second half of 2021. I am afraid C/4HANA will come not before 2022...

       

      Kind regards
      Harald

       

      Author's profile photo Vinod Patil
      Vinod Patil

      Thank you for your quick response. It helps.

      Author's profile photo Mohammed Farooq
      Mohammed Farooq

      Hello Harald,

      Thank you so much for the wonderful blog,

      As you mentioned, Cloud TMS supports SaaS solutions like (SAP SuccessFactors solutions, SAP CPQ, SAP Ariba solutions) but when we checked the supported solutions of cTMS do not find these solutions.  Could you please confirm if we can still utilize Cloud TMS service for SAP SuccessFactors and SAP Ariba Solutions and similarly would integrate with ChaRM?

      Best Regards,

      Farooq

      Author's profile photo Harald Stevens
      Harald Stevens
      Blog Post Author

      Hello Farooq,

      unfortunately the integration of Cloud Transport Management with SAP's SaaS solutions (like SuccessFactors or Ariba) is still not available. The long-term plan still is to implement it, but there is no concrete timeline I can provide.

      You can find the currently supported applications here:

      https://help.sap.com/docs/cloud-transport-management/sap-cloud-transport-management/integrating-service

      Sorry and kind regards
      Harald

       

      Author's profile photo Abe Letkeman
      Abe Letkeman

      Hi Harold.

      Thank you for this blog - it answered many of my questions, but I have some related to this topic and the BTP account model setup.  I hope you or someone here can offer suggestions.

      Since a cloud foundry space has a 1:1 relationship to a virtual system in solution manager, we have to take into consideration availability of SIDs in the landscape.  Also, in cloud foundry, we must specify a space in which to deploy application and service instances.  Taking this into consideration, I think there are a few options..

      Option 1 - Use one space for everything. When activating Work Zone, Mobile Services, Process Integration etc., specify the same space for everything.  This requires only one SID, would be easier to manage, but provides the least control of entitlements and less granular reporting.

      Option 2 - Specify separate spaces for each instance.  For example, Work Zone in space "workzone", Mobile Services in space "mobile", Process Integration in space "PI", ABAP in space "customer", etc.  This provides better control of entitlements, and reporting, but requires many new SIDs.

      Option 3 - something between option 1 and option 2.

      Are there other, more important factors that need to be taken into consideration?

      Does it make sense to have something like option 2 in the development subaccount, and option 1 in QA and PROD... or vice versa?

      Looking forward to hearing everyone's thoughts on this.  Kind regards.

      Author's profile photo Manikandan Balakrishnan
      Manikandan Balakrishnan

      Hi Herald,

      Thanks for this great blog. We have configured CTS+ direct method for transporting packages/artifact's from CPI on CF. Is it possible to integrate charm with CTS+ direct method.

      Thanks,

      Mani

      Author's profile photo Leena Nissila
      Leena Nissila

      Hello,

       

      If I have Cloud platforms with TMS and S/4 Hana on premise systems. Also Charm in use. Could I put those systems to same cycle which has cCTS activated?

       

      I meant that does cCTS support Cloud Platform with TMS? I can see from the blod that If we have configured Cloud platform with CTS+ then cCTS could be used. But how about if Cloud platform use TMS?

       

      Br Leena

      Author's profile photo Harald Stevens
      Harald Stevens
      Blog Post Author

      Hi Leena,

      when adding cTMS nodes to a solution landscape in ChaRM, it is unfortunately not possible to use central Change and Transport System (cCTS) for this landscape. This is only possible when using CTS+ for cloud transports, but then you are limited to MTA based content.

      Kind regards
      Harald

       

      Author's profile photo Fabricio Pereira
      Fabricio Pereira

      Thanks for bringing this scenario Leena.

      I am starting the change management design for our S/4 journey and took for granted that cTMS would support cCTS.
      Harald Stevens, is cTMS support of cCTS in the roadmap? If yes, when should we expect it?

       

      Thanks, Fabricio

      Author's profile photo Alejandro Garuti
      Alejandro Garuti

      Hi team,

      is there any update on this for SFSF? is there a release date?

      thanks a lot

      Author's profile photo Harald Stevens
      Harald Stevens
      Blog Post Author

      Hi Alejandro,

      unfortunately there are no news concerning this topic.

      Please check our roadmap regularly. If there is a concrete implementation project we will publish it there.

      Sorry and kind regards
      Harald Stevens

       

      Author's profile photo Maria Cobo-Gutierrez
      Maria Cobo-Gutierrez

      Hello Harald

      Non-ABAP On-Premise landscapes (java based, like SAP portals, using NWDI) were set up with ChaRM through CTS+  (Therefore transports).

      Currently I'm looking for a basic CHaRM handling of SW changes  for those SAP non-ABAP OnPremise landscapes (ChaRM end-user oriented -developers, change management controller, etc), but not found, which is weird..

      do you know if there is a basic document (CHaRM related) ??

      Thanks in advance for helping.
      María Cobo