Skip to Content
Technical Articles
Author's profile photo Fabian Dias

Setup SAP BTP Cloud Transport Management Service(Cloud Foundry) for Cloud Platform Integration(CPI)

Scenario:

Since SAP Cloud Platform Integration(CPI) fka HCI was released back in 2012, integration developers have been exporting and importing artifacts manually between Development & Production CPI tenants and this process is well documented on help.sap.com as well as SAP OSS Note 2651907; however, we now have SAP BTP Cloud Transport Management Service to help us move CPIS integration packages between 2 tier and or 3 tier landscapes all while allowing us to track who exported/imported what and when with better logging. Feel free to look at details about What is SAP Cloud Transport Management.

In this blog, we will look at how to setup the BTP Cloud Transport Management service on Cloud Foundry for CPIS. And if you would like to discover and understand this particular SAP BTP service offering, please look at BTP Discovery Center.

Prerequisites:

  1. You must be subscribed(licensed) to SAP BTP Cloud Foundry and Cloud Transport Management Service.
  2. You have setup the appropriate BTP Subaccount & activated the required Instances & Subscriptions for Cloud TMS while creating the required entitlements for this service.

Reference blog:

On SAP BTP Cockpit

  1. Ensure that you have created a role collection for accessing and administering Cloud TMS. Note: in the screenshot below you are seeing all roles displayed/highlighted in yellow but truly if you want the full app. access, the administrator role will suffice, and the rest of the roles can be assigned based on specific authorization requirements.
  2. Assign this role collection to your user(s). Ensure that WorkspacePackagesTransport role is assigned to the role collection *This role is created during the Process Integration Runtime API instance

  3. Log into your BTP-CF Non-Production Subaccount (for this example we are provisioned in Azure, ‘DEV_AZR’)
  4. Create a Cloud Foundry Space in the Dev subaccount (for example ‘DEV_SP_AZR’). We created a generic Space that will house cloud applications and Cloud TMS. Or you could create dedicated Spaces (with appropriate quotas) for the required application(s). NOTE: Space requirements for CTMS are very low: you need 1 (extra) service, and 1 (extra) GB of memory. Same is true for CAS and the PI runtime. In total, for this CTMS scenario you should do fine with 5 services and 5 GB of memory but if you are looking to utilize multiple cloud services within 1 Development Space, then the extra allocation will be just fine for the total picture.
  5. Create and assign the appropriate Quota Plan to your newly created Space(s)
  6. Ensure that you assign members to this Space with at least Org Manager access to administer this Space
  7. Under your Development BTP Subaccount (for example DEV_AZR) > navigate to your Development Space (for example, DEV_SP_AZR) and expand Services -> Instance. Here you need to create an Instance & Service Key for the following 3 services with the Plans shown below:
    1. Content Agent Service (Service) -> standard (Plan)
    2. Process Integration Runtime (Service) -> api (Plan)
    3. Cloud Transport Management (Service) -> standard (Plan)
  8. Create Cloud TMS relevant Destinations. Here you will need to create a total of 5 BTP Destinations under your development subaccount ‘DEV_AZR’.
    Please refer to the SAP Help link for creating Destinations in Cloud Foundry and follow this link to create Transport Detsinations.

    1. CloudIntegration (*must follow this exact naming convention) **Using Process Integration Runtime (api) service key
    2. ContentAssemblyService (*must follow this exact naming convention) **Link to help doc
    3. TransportManagmentService (*must follow this exact naming convention) (NOTE: here you will need to add an additional property (sourceSystemId = DEV(*your development TMS node name) manually and not via the dropdown list **Link to help doc
    4. MTA_DEV or a name you choose – (**points to the CF Deploy Service of the Development Space) (for example, https://deploy-service.cfapps.<your DC i.e. us10>.hana.ondemand.com/slprot/<org name on DEV subaccount>/<DEV space name>/slp
    5. MTA_PRD or a name you choose – (**points to the CF Deploy Service of the Production Space) (for example, https://deploy-service.cfapps.<your DC i.e. us10>.hana.ondemand.com/slprot/<org name on PRD subaccount>/<PRD space name>/slp

On Cloud Transport Management

  1. Log into the Cloud Transport Management UI
  2. Create transport nodes in Cloud TMS (for this example, we have used DEV & PRD). Note: The name of the development (source) node has to be identical (case sensitive) with the additional property ‘sourceSystemId’ in the ‘TransportManagmentService’ destination.
    1. On the DEV node, ensure you select Content-Type = Multi-Target Application and for Destination = MTA_DEV which is the BTP Destination you created in Step 8
    2. On the PROD node, ensure you select Content-Type = Multi-Target Application and for Destination = MTA_PRD which is the BTP Destination you created in Step 8
  3. Create a transport route (for example, CPIS_TMS) in Cloud TMS and assign the appropriate Source(DEV) and Target(PRD) nodes

On SAP BTP Cloud Platform Integration (Non-PRD tenant)

  1. Log into your CPI non-production tenant as an administrator
  2. Click on Settings -> Transport and set Transport mode to ‘Transport Management Service’ and Save
  3. Click on Check Configuration button and ensure you receive a SUCCESS message
  4. Go into your CPIS package that you want to transport and click on Transport link in upper right corner > Provide a name for your transport (HINT: if you don’t see this button, you do not have ‘WorkspacePackagesTransport’ assigned to your user)

On Cloud Transport Manager UI

  1. On the main Cloud TMS page, click on Overview and then click on ‘Transports Waiting for Import’
  2. Select your object(s) to import and click on Import Selected (within 30 sec to a minute your import into PRD should be complete)
  3. Click on Transport Action Logs to check the status of your transport request

On CPIS – Production tenant

  1. Log into CPI Production tenant and click on Design. Here you should see your imported package

That is it for now. I hope this blog helps you setup and adopt the SAP BTP Cloud Transport Management Service for BTP CPI in a quicker fashion.

Thanks and feedback is always welcome.

Fabian

 

PS: A big thank you to my colleagues @abhisheknath, @jacobmoore & @mannychibeze for contributing to this content and helping with the setup!

Assigned Tags

      1 Comment
      You must be Logged on to comment or reply to a post.
      Author's profile photo Surajit Pramanick
      Surajit Pramanick

      Awesome blog, Fabian! Easy to follow and useful. Thanks for sharing.