Content Transport using CTS – Cloud Integration – Part 1
This blog discusses the steps and configurations to transport Integration Packages using CTS+ based system between multiple tenants by exporting it from one tenant and importing it in another.
Customers using the SAP’s Change and Transport (CTS+) On-Premise system and having two test and Production Cloud Integration tenants have the option to use the feature to transport an Integration Package from the Test to the production landscape using the CTS+ system.
This is a two-part blog series,
- Part 1 focuses on setting up the Cloud Integration for CTS.
- Part 2 focuses on transport Integration packages across test and Production Cloud Integration tenants.
In this part, we will do the necessary configurations to set up the SAP Cloud Integration for CTS.
1.1. Roles and Transport Setting:
- As the Tenant Admin, you will need to enable the Transport Settings to CTS+ in the Test tenant. You can do this by accessing the Settings tab and choosing the Transport Mode to CTS+ Direct.
Note: Ensure that all Integration developers who would be transporting content and used for authentication have the Role IntegrationContent.Transport and is a Member of the tenant Account.
2. Enable the service, Solutions Lifecycle Management in your account.
3. Ensure that you perform this step in all the accounts (Test and Production) where you want to use content transport using CTS+. This is a one-time activity. You can do that by performing the following steps:
- In the account cockpit in the SAP Cloud Platform, Choose Services -> Solutions Lifecycle Management -> Enable.
4. Create a new HTTP destination by selecting Configure Destinations.
- Ensure that the Name of the destination is CloudIntegration (case-sensitive).
- Enter the URL of the tenant management node from which you want to transport content.
- The user credentials that you have used in the destination should be a member of the tenant management node account from which you want to transport content.
Note: The destination ‘CloudIntegration’ created for the Production/target account must have the corresponding tenant Management URL of the Production/target account.
Note: The Tenant Management URL can be obtained from the accounts cockpit which lists the applications that are subscribed.
5. You have activated and configured the CTS+ Export Web Service as described in Activating and Configuring CTS Export Web Service.
6. You have installed and configured the Cloud Connector, which is used to connect on-premise systems with the SAP Cloud Platform. For more information, see Cloud Connector
For more information on Content Transport, please refer Content Transport
2.1. Configuring Cloud Integration for CTS+ Direct
- To configure the target system, go to SOAMANAGER transaction in CTS system.
- Navigate to Web service configuration and search for EXPORT_CTS_WS. Click on the service.
- Click on service WSDL generation.
- Copy this URL and launch in browser, you will receive wsdl-definition in response. At the bottom of response, it contains wsdl-service as shown below:
- location of <soap-address> needs to be exposed as service.
For more information on WSDL Document Display, see Displaying a WSDL Document.
- This URL needs to be configured in Cloud connector, Enter the hostname and port per your requirement.
- Create a Destination in your account by selecting Configure Destinations, navigate to Login to your account in the SAP Cloud Integration.
- Ensure that the Name of the destination is TransportSystemCTS (case-sensitive).
- URL that was exposed as web service (for eg ) from which you want to transport content needs to be configured.
For more information, please refer Setting Up Direct Upload
2.2. Basic Configuration in CTS
- Import SSL Certificate
The root certificate of the certificate authority that was used to sign the SAP Cloud Integration server certificate needs to be imported in the CTS system.
This is the certification path for your domain:
- Logon to the Tenant WebUI URL and in the browser, click on the lock symbol.
- Navigate to the Certification path tab.
- Import this is CTS system. Start Internet Explorer and navigate to Tools -> Internet options.
- Go to Content -> Certificates -> Trusted Root Certification Authorities. Select “Baltimore Cyber Trust” and export it as Base-64 encoded .509 (.CER).
- In the CTS system open transaction “STRUST”.
- Select the certificate list on the left that you have specified above.
- Click the “Import Certificate” button on the bottom
- In the dialog enter the file name of the certificate file which has been exported in step 6.
- Click “Add to Certificate List”.
2.3. Configuring the HTTP destination:
You must create an HTTP destination on the CTS system for every target account (every system where you would like to execute imports).
- Go to transaction SM59 and create a Destination as shown.
- Enter a name in the field RFC Destination. Later, you must enter the name of the destination when you define the target system in STMS transaction.
- On the Technical Settings tab, enter the details of the target system:
- target Host: Enter the data center specific host name of the SL Service.
- Service No: <empty>
- Path Prefix: /slservice/slp/basic/<tenant-account-name>/slp
- Configure the proxy settings per your network configuration.
- Go to the Logon & Security tab, enter the logon details for the target system and Make sure to check the “Active” checkbox for SSL.
- The connection test for the connection should be successful.
For more information on configuring an HTTP Destination in ABAP system, see Establishing a connection using Destination
2.4. Configure Cloud Platform as Application type:
To use CTS with Cloud Integration, you need to define an application type for Cloud Integration in CTS. The application type will then be used as a unique identifier for Cloud Integration content in CTS.
The application type is created in CTS as below:
- Logon to the CTS system and open transaction STMS.
- Go to the System Overview.
- To create a new Application Type, go to Extras -> Application Types -> Configure.
- You can see the list of application types already created in your system. Choose New Entries.
- On the next screen, you can enter your application type as “HCP” and a Description.
- Save your entry and click Yes to distribute the new application type through your landscape. Click Back to return to the list of application types.
2.5. Configuring the Transport Landscape in CTS:
In this section, we will set up a landscape of two systems, Test (CI1) and Production (CI2), and Transport Routes.
- Configuring the Test system:
- Go to transaction STMS in the CTS system and Choose System Overview.
- Choose SAP System -> Create -> Non-ABAP System
- Enter the SID of the Test system as “CI1” in the field System and enter a Description.
- Choose Activate Transport Organizer and click Save.
Note: All users that should be allowed to attach SAP Cloud Integration content to transport requests must have a corresponding user in the client of the CTS system that you are using for transports.
2. Configuring the Production System:
- Similarly add another system, Enter the SID of the Production system as “CI2” and configure as shown:
- Click yes to distribute the configuration.
- When saving the non-ABAP system, you are asked to define the deployment method for your system. Choose New Entries.
- On the next screen, configure as shown:
- Save your entries and choose Yes to distribute the new application type through your landscape.
- Click back to return to the list. Click Back to return to the system overview.
Note: Create any other target system that you might need.
3. Configuring the Transport Landscape: Defining Transport Routes
With the Transport routes, we connect the representations of different systems we created above.
- Go to transaction STMS and open Transport routes.
- The systems created CI1 and CI2 are shown in upper row of systems. The systems in here are not yet connected by transport routes.
- Switch to Edit Mode. Go to Edit -> Transport Layer -> Create.
- Enter a name for the Transport Layer, e.g. ZCPI.
- Click on system CI1 in the upper row and drag and drop it in the area where the transport routes are shown.
- Repeat the previous step for CI2.
- Choose Add Transport Route.
- Your mouse pointer is now a pencil. Draw a line from CI1 to CI2.
- A dialog box opens. Make sure that Consolidation is selected. A consolidation route is needed to connect a test system to e.g. a Production system (from a system where you do an export to a system where you would like to import the transport request). Enter the Production system as CI2.
- Choose ZCPI as the transport layer and choose Transfer.
- A transport route has been added connecting CI1 with CI2.
- Confirm that you would like to Distribute and Activate the configuration.
For more details on the setting in the CTS+ system, refer: Change Management with CTS+
We have learnt how to configure the Cloud Integration for CTS. We have also done the necessary settings to perform the Transport of Integration packages using the CTS system.
In the next part of this blog series, I would extend this set up to perform the Transport of Integration packages across the Test and Production Tenant Accounts.
I am trying to transport SAP CPI package using CTS+. I have followed the documentation & I am able to see the MTAR file attached in the transport request generated using CTS system. However when I import this transport request in the target CPI tenant, the transport ends up in return code 4(warnings are not shown) & the integration package does not appear in the target CPI tenant.
The connection test is also successful in SM59. Please advise.
I also got the same problem.
Do you find any solution?
Hi A D, Young Hwan Kim,
In section 2.4, bullet point 5, where you were asked to set application type, please set it as HCP instead of CPI. And use the same Application type as ApplicationID in section 2.5.2 Configuring the Production System.
Our tenant is on Cloud Foundry and we are using the deployment space url and SCP_CF application type as recommended by SAP. But it is still showing return code 4 when we import the transport. Any suggestions what else might need to be done. As suggested by Balanzs down a new destination needs to be setup on target tenant. Please let us know of any suggestions to get this working.
I don't have any idea what is code 4. Also, there is really good SAP Help documentation available for setting up transport. I would recommend to follow those and later come to check out blogs if you face any issue.
Also as Balanzs mentioned, CloudIntegration destination is necessary in both, source and target, tenant.
Thanks a lot for your response. Since this blog is dedicated for neo setup and ours is on cloud foundry, the connection setup is a little different for sm59 in our case but it is inline with the cts+ guide from sap for CF. We have cross verified everything with the steps mentioned in the guide and everything seems be setup fine except the target subaccount destination setup which isn't mentioned on the doc as well. Return code 4 is just a general warning error we get on our solution manager system on transport import with nothing reflecting on our target tenant. It gives little to no error information regarding what went wrong in the transport which it makes it very hard for us to understand what exactly is missing. I have posted this question separately as well https://answers.sap.com/questions/13683301/cts-transport-import-issue-for-cpi.html with all inputs from our side. At the moment maybe we can try going for the CloudIntegration destination setup on target tenant to see it it works or not.
hello, we also had the same issue, at the end it turned out that we needed to add "CloudIntegration" destination on the target tenant as well. In the blog this was not clearly mentioned, at least for us it was it seemed that it only needs to be added on the source tenant.
Did u set this up on neo or CF? We are facing the same issue however we don't have this destination on target tenant yet.
Hi A D,
I also got the same problem.
did it got fixed ?
Any updates if you were able to fix this issue ? We are facing the same error in this case as well.
Hi, thanks for the documentation . Have a few questions though
really good blog!
Unfortunately I get the error in SLG1 “Invalid or unknown system CI1, client 100”. Although the system is defined in STMS and the transport routes etc.. Any idea why the system is not recognized accordingly?
In addition to that in the when I'm in the solution lifecycle managent -> Go to Service and then try to export I get the following error:
I know quite some time has passed here -but also 'for future reference': SAP note 2286312 should be checked here...
hello Amrita, this is a very nice detailed post thank you, however as i mentioned above, could you please maybe mention in clearly that in point 1.1.4 , the "CloudIntegration" destination should also be created in the target tenant? Otherwise the import will not happen properly to the target and the objects will not appear there. Thank you!
Thank you for the feedback. I will update the blog.
Under Step1, point 5. You have activated and configured the CTS+ Export Web Service as described in Activating and Configuring CTS Export Web Service.
I don't see any services to activate for Export Web Service EXPORT_CTS_WS
Kindly suggest how to perform this step.