Technology Blogs by Members
Explore a vibrant mix of technical expertise, industry insights, and tech buzz in member blogs covering SAP products, technology, and events. Get in the mix!
cancel
Showing results for 
Search instead for 
Did you mean: 
937

Overview :

The Cloud Transport Management System (cTMS) in SAP Business Technology Platform (BTP) automates software changes across different cloud environments. This tool streamlines the process of moving changes from development to testing and production environments, making it valuable for SAP customers using cloud-based development practices.

Overview of Setting Up Cloud Transport Management for SAP Build Work Zone:

SAP Build Work Zone (formerly known as SAP Launchpad service) creates personalized, role-based entry points for accessing SAP and non-SAP applications. When implementing Cloud Transport Management (cTMS) for SAP Build Work Zone, you can efficiently manage content transport—including roles, catalogs, and apps—across development, test, and production environments.

Example Transport Structure Scenario :

Loganand__Sivabalan_0-1742375502750.jpeg

In this Blog, I have taken a setup of 2 tier landscape of Transport management for SAP Build Work zone Standard edition existing in Subaccounts that belong to different global accounts.

Implementation Steps for Cloud Transport Management with SAP Build Work Zone

  • Set Up SAP Build Work Zone Instances:
  • Subscribe to Cloud Transport Management Service (cTMS)
  • Configure Destinations
  • Create Transport Nodes in cTMS
  • Define Transport Route:
  • Prepare and Transport Content
  • Import Transport Request
  • Limitations and Key Considerations
  1. Set Up SAP Build Work Zone Instances

    In both the Development (DEV) and Production (PRD) subaccounts, subscribe to and create instances of the SAP Build Work Zone, standard edition. For a three-tier landscape, include Quality Assurance (QA) as well.

     
    Loganand__Sivabalan_1-1742375503641.png

    Generate service keys for the SAP Build Work Zone instances in both DEV and PRD environments.

     
    Loganand__Sivabalan_2-1742375503228.png

    Perform the same above steps in the PRD subaccount as welll.

  2. Subscribe to Cloud Transport Management Service (cTMS)

    In the source subaccount (typically DEV), subscribe to the SAP Cloud Transport Management Service.

    Loganand__Sivabalan_3-1742375503165.png

     

    Create an instance and generate a service key for the cTMS
     
    Loganand__Sivabalan_4-1742375503232.pngThe above step is applicable only for the source subaccount as cTMS is setup in one subaccount
  3. Configure Destinations

    Set up a destination for the Cloud Transport Management Service in both the DEV and PRD subaccounts.

    Copy the service key details of the cTMS instance and create a destination named ctms_destination in both the DEV and PRD subaccounts respectively with the below config.

    Name ctms_destination
    TypeHTTP
    DescriptionDestination to Cloud Transport Management
    URLuri from the service key of cTMS
    Proxy TypeInternet
    AuthenticationOAuth2ClientCredentials
    Client IDCopy Client ID from the service key of the cTMS
    Client SecretCopy Client Secret from the service key of the cTMS
    Token Service URLcopy from the service key and append /oauth/token to the URL
    Additional Property 
    node-nameDEV

    For PRD, Just change the Additional Property node-name to PRD

    Loganand__Sivabalan_5-1742375503237.png

     

    The check connection test will return the below message and you’re good to go!

    Loganand__Sivabalan_6-1742375503156.png

     

    In the subaccount where cTMS is hosted (DEV in this case), create destinations for both the source (DEV) and target (PRD) SAP Build Work Zone applications.

     Navigate to the destinations page in the cTMS subaccount and create the destinations for DEV and PRD workzone with the below config.

    Name DEV
    TypeHTTP
    DescriptionDestination to Workzone Application DEV
    URLPortal service URL from service key of workzone and append /cdm_import_service
    Proxy TypeInternet
    AuthenticationOAuth2ClientCredentials
    Client IDCopy Client ID from the service key of workzone
    Client SecretCopy Client Secret from the service key of workzone
    Token Service URLuaa-url from the service key

     

    Loganand__Sivabalan_7-1742375502753.png

     

    Create another destination for PRD Application with the same details from the service key of PRD
     
    Loganand__Sivabalan_8-1742375503114.png

    The connection check will return the following message

    Loganand__Sivabalan_9-1742375503107.png
  4. Create Transport Nodes in cTMS:

    In the cTMS application, create two transport nodes—one for the DEV Work Zone application and another for the PRD Work Zone application.

    Navigate to the Cloud Transport Management Application and Create two nodes for DEV and PRD.

    Under Transport Nodes, Click on + and create nodes with the below settings. The name of the nodes must be same as that of what maintained in node-name property of the cTMS_destination 

    Loganand__Sivabalan_10-1742375503252.png

     

    Loganand__Sivabalan_11-1742375503260.png
  5. Define Transport Route

    Establish a transport route from the DEV node to the PRD node to enable the movement of content between the two environments.

    Navigate to the Cloud Transport Management Application and Create Transport route DEV — PRD

    Under Transport Routes tab, Click + to create a transport route.

    Loganand__Sivabalan_12-1742375503533.png

     

    Under Landscape Visualization you can see your nodes and transport routes of themLoganand__Sivabalan_13-1742375503152.png
  6. Prepare and Transport Content

    In the DEV Work Zone application, create a sample site, along with associated roles and groups.

    I have created a test application in the DEV Workzone application with an Application, Group and Role each assigned to the site.

     
    Loganand__Sivabalan_14-1742375503117.png

     



    Loganand__Sivabalan_15-1742375503244.png

     

    To Transport a site along with all it’s assigned contents, you can transport the whole site using by selecting the Transport Site option under more options on the site directory.

    Loganand__Sivabalan_16-1742375503376.png

     

    Once you click on Transport Site, the site will be pushed as transport request to the cTMS system.
     
    Loganand__Sivabalan_17-1742375503395.png

    To Transport objects individually you can select the objects in the content manager and click on the Transport Icon.

    Loganand__Sivabalan_18-1742375503172.png
  7. Import Transport Request

    In the PRD environment, access the import queue of cTMS and import the transport request to deploy the content.

    Navigate to the Landscape visualization Tab in the cTMS application and you can see the initial/Repeatable object count changed to 1 in the PRD queue.

    Loganand__Sivabalan_19-1742375503164.png

     



    Go to the import queue of PRD by selecting the node and clicking on Go to this node’s import queue.

     

    Loganand__Sivabalan_20-1742375503250.pngIn the import queue you can see the Request waiting to be imported. Select the request and click in import selected to import it into PRD.

    Loganand__Sivabalan_21-1742375503135.png

     

    Approve the Import Request and proceed to start import.

    Loganand__Sivabalan_22-1742375503506.png

     

    Loganand__Sivabalan_23-1742375503121.png

     

     

    You can see the import logs in the Transport Action Logs tab. You can see the import status there.
     
    Loganand__Sivabalan_24-1742375503631.png

     

    Now you can see the site transported with all it’s contents to the PRD workzone.

    Loganand__Sivabalan_25-1742375503178.png

     

    Loganand__Sivabalan_26-1742375503144.png

     

  8. Limitations and Key Considerations

    • Supported and Unsupported Objects:

      • Supported Objects:
        • Sites, pages, and content (e.g., widgets, apps, and catalogs).
        • Roles and groups.
        • Custom themes and layouts.
      • Unsupported Objects:
        • User-specific personalization or customizations.
        • Some dynamic content or configurations tied to specific environments.
        • Certain administrative settings or system-level configurations.
    • Environment-Specific Configurations:

      • Some configurations (e.g., URLs, API endpoints, or destination settings) may be environment-specific and need to be adjusted manually after transport.
      • Hardcoded references to environment-specific details will not work in the target system without modification.
    • Manual Adjustments in Target System:

      • After transporting objects, you may need to manually adjust certain settings in the target system (e.g., reassigning roles or updating app URLs, as some application URLs of DEV and other systems may differ).
      • This is especially true for integrations with external systems or custom configurations.
    • Data Loss Risks:

      • If the target system already has content with the same names or IDs as the transported objects, there is a risk of overwriting or losing data. Always review and resolve conflicts during the import process.
    • Transport of Large Objects:

      • Transporting large sites or complex content structures may result in performance issues or timeouts during the export or import process.
      • Break down large transports into smaller, manageable chunks if necessary.
    • Content Federation/ Content Manager

      If you’re using content federation for content from backend systems, the content provider/ package name must be identical in all the tiers.

1 Comment
Labels in this area