Skip to Content
Product Information
Author's profile photo Moritz Gysler

Enabling Change & Deployment Management in SAP Cloud ALM for SAP Integration Suite – Cloud Integration

To use the transport capabilities of SAP Cloud ALM in conjunction with the SAP Cloud Transport Management Service (CTMS), you’ve to establish a connection between SAP Cloud ALM and the SAP Cloud Transport Management service.

This guide will lead you through the steps that are needed to establish the connection for the SAP Cloud Integration use case.

Note

Please note that all the steps below only refer to an exemplary setup for Cloud Integration as part of the SAP Integration Suite. For other integration solutions, the steps are similar but may differ in certain aspects. In this case, refer to the documentation of your integration solution.

Subscribe to SAP Cloud Transport Management Service

Note

For newly provisioned SAP Cloud ALM tenants the SAP Cloud Transport Management Service is already subscribed in your SAP BTP subaccount. In this case you can skip the following steps for manual subscription.

To use the SAP Cloud Transport Management Service in SAP Cloud ALM, you have to subscribe to the service in your SAP Cloud ALM subaccount in SAP BTP. Before you subscribe, check if you’re entitled to use the SAP Cloud Transport Management service.

1) Go to your SAP BTP global account and choose your SAP Cloud ALM subaccount.

2) To check your entitlements, go to Entitlements and choose Configure Entitlements.

Check%20Entitlements

 

3 ) Search for the Cloud Transport Management Service in the search bar. If no results are shown in the service list, choose Add Service Plans.

Add%20Service%20Plans

 

4) Select Cloud Transport Management, check the Standard (Application) Standard Plan checkbox and choose Add 1 Service Plan.

Add%20CTMS%20Service%20Plan

 

5) Now, the Cloud Transport Management service appears in the service list. Choose Save.

Save%20CTMS

 

6) Go to Instances and Subscriptions and choose Create.

In the New Instance or Subscription, select service Cloud Transport Management and the standard plan. Then choose Create.Select%20Service%20and%20Plan

 

7) You’re now subscribed to the SAP Cloud Transport Management service.

8) Now, you can assign members of your team to roles. Usually, the two roles you need are TMS_Viewer_RC and TMS_LandscapeOperator_RC and can be found in the Custom Roles section.

You can assign the roles in the User Management app in SAP Cloud ALM.

Assign%20Roles

 

9) You can access the Cloud Transport Management service from within your subaccount in the SAP BTP cockpit by choosing “Go to Application”.

Got%20to%20CTMS%20App

Set Up Cloud Integration

Create Service Instances

As a first step, you’ve to enable content transport in the Cloud Foundry environment by subscribing to the Content Agent (using the ContentAssemblyService) and Service Broker (using the Process Integration Runtime). Please follow the steps described in the Enabling Content Transport, Cloud Foundry Environment guide.

Note

Not every step is required in every case. For example, if you already created a space for transport management within your subaccount, you can skip certain steps.

After you’ve followed all the steps in this guide, please proceed with the next step.

Creating HTTP Destinations, Cloud Foundry Environment

In the next step, you need to create destinations in your SAP BTP subaccount where your source Cloud Integration tenant is hosted, in order to transport integration packages from a source tenant to the target tenant.

Please follow the steps described in the Creating HTTP Destinations, Cloud Foundry Environment guide.

Important

The URLs you’ve extracted in step a. and that you’ve to use in step b. are structured in the following way: 

The URL you can find in the section uaa in the JSON file relates to the token endpoint. You can identify this URL by checking if the term “authentication” is included in the URL. The URL above the uaa section of the JSON file relates to the service endpoint. (see screenshot below)

URL%20Credentials

Make sure that the following destinations are available now:

ContentAssemblyService%20destination

 

CloudIntegration%20destination

 

Set Up SAP Cloud ALM API Instance

In order to perform the following steps please make sure that your user has the role Global Account Administrator in the global account that was created when you requested SAP Cloud ALM, and is a member of the subaccount containing your SAP Cloud ALM subscription.For further information please check the SAP Help Portal page Setup and Administration for SAP Cloud ALM.Carry out the following steps to enable SAP Cloud ALM API:

Create a Space

1) Open the SAP BTP cockpit.

2) Select the global account that contains your SAP Cloud ALM entitlement, which was created when you requested SAP Cloud ALM.

3) Under Subaccounts, select the subaccount that contains your SAP Cloud ALM subscription.

4) Choose Cloud Foundry > Spaces.

5) Choose Create Space in case no space available yet.

Create%20Space

6) Enter a space name, such as sap_cloud_alm_space, and select the roles that you want to assign to your user for this space. To perform the following steps, your user needs at least Space Developer.

7) Choose Create.

Configure Entitlements

An entitlement is your right to provision and consume a resource.

1) Choose Entitlements and check for Service SAP Cloud ALM API. In case you are already entitled to that service you can move to Create a New Instance.

Note: You can increase your global quota, that is, your maximum allowed consumption of this service plan, in the control center.

2) If the service is missing you can click Configure Entitlements.

Configure%20Entitlement

3) Choose Add Service Plans.

4) Add the required service plan as follows:

  • Select the entitlement SAP Cloud ALM API.
  • Under Available Plans, check the option standard.
  • Choose Add 1 Service Plan.

Add%20Service%20Plan

4) Choose Save.

Create a New Instance

1) Choose Cloud Foundry > Spaces.

2) Select the created or already existing space. You now see the application list of your created space.

3) Choose Services > Instances.

Choose%20Services%20-%20Instances

4) Choose the Create dropdown and click on Service Instance.

Create%20Service%20Instance

5) Under Basic Info provide the following details:

  • Service: SAP Cloud ALM API
  • Plan: standard
  • Instance Name: Enter a meaningful name, e.g. CALMFeatureDeployment

Instance%20Creation

6) Choose Next.

7) When creating a service instance for feature deployment, the following configuration in json format is needed in order to assign the required scopes to the service instance.

  • Paste the following json code into the text editor:
{
    "xs-security": {
        "xsappname": "<Your Instance Name>",
        "authorities": [
			"$XSMASTERAPPNAME.imp-cdm-feature-display-ui",
			"$XSMASTERAPPNAME.imp-cdm-feature-manage-ui"
        ]
    }
}
  • Replace <YourInstanceName> with your actual instance name. Make sure it’s not already used in another service instance and doesn’t contain spaces or special characters.
  • Authorities: Make sure to use exactly the string provided above.

8) Choose Create.

9) When your instance has been created, it’s added to the instance list. To show the details of the instance click on the newly created instance.

Create a Service Key

The service key allows you to configure the transport management in the managed system so that it can connect to an SAP Cloud ALM API service instance.

1) Choose the Actions icon and select Create Service Key.

Create%20Service%20Key

2) Enter a name for your service key, such as sap_cloud_alm_key.

3) Choose Create.

4) Next to your newly created service key, choose the Actions icon and select View.

View%20Service%20Key

5) You can now see your service key in JSON format.

  • The service key is structured in the following way:
    • Endpoints: e.g., alm.cloud.sap
    • OAuth URL: Service Key parameter
    • Client ID: Service key parameter clientid
    • Client secret: Service key parameter clientsecret

Copy this newly created service key in JSON format to the clipboard because it’s needed later in the Maintain HTTP Destination section of this guide.

Caution

Outside of the SAP BTP cockpit, service keys must be stored securely. If you need a service key, create the service key directly in the SAP BTP cockpit, and access it from there whenever you need it.

Set Up HTTP Destinations and Transport Routes with SAP Cloud ALM Pass-through

In the SAP BTP subaccount where your source Cloud Integration tenant is hosted, create a destination targeted at the Cloud Transport Management service.

In the Destination Configuration section, enter values in fields based on the description provided in the following table.

Field

Description

Name

TransportManagementService (this value is case-sensitive)

Type

HTTP

Description (optional)

You can provide a description for your reference.

URL

Enter the URL (“Api”) of the service key of your SAP Cloud ALM API instance and append /imp-cdm-transport-management-api/v1. That follows a pattern like this: https://eu10.alm.cloud.sap/api/imp-cdm-transport-management-api/v1

Proxy Type

Internet

Authentication

OAuth2ClientCredentials

Client ID

clientid from the service key of your SAP Cloud ALM API instance.

Client Secret

clientsecret from the service key of your SAP Cloud ALM API instance.

Token Service URL

Enter the value of url (uaa section) from the service key of your SAP Cloud ALM API instance. Append /oauth/token at the end of URL fetched from the service key.

Additional Properties

Choose New Property.

Enter sourceSystemId (this value is case-sensitive) as the key and provide a value of your choice. Reuse the same value as the name of the source transport node in a later step.

 

In your SAP BTP Cloud Foundry subaccount (where you’ve subscribed to Cloud Transport Management service), create a new destination to create a destination targeted at the SAP BTP  subaccount where your target Cloud Integration tenant is hosted.

In the Destination Configuration section, enter values in fields based on the description provided in the following table.

Field

Description

Name

Provide a name for the destination.

Type

HTTP

Description (optional)

You can provide a description for your reference.

URL

To address the Cloud Deployment service, you have the following options:

Using the name of your org and space

https://deploy-service.cfapps.<default-domain>/slprot/<myorg>/<myspace>/slp

Note: You need to escape special characters in your org and space name
with a proper URL encoding. For example, replace space characters
with %20, and commas with %2C.

Example: https://deploy-service.cfapps.eu10.hana.ondemand.com/slprot/myorg/myspace/slp

Using the GUID of your space

https://deploy-service.cfapps.<default-domain>/slprot/<my-space-guid>/slp

Note: To retrieve the GUID of your space, use the Cloud Foundry Command Line Interface (cf CLI). Log on to your org, and execute the following command: cf space <my-space-name> –guid. For more information, see Working with the Cloud Foundry Command Line Interface.

Example: https://deploy-service.cfapps.eu10.hana.ondemand.com/slprot/977a24d6-2eaf-432d-a3e1-5294451551a3/slp

The Cloud Deployment service is available on the default domain of your subaccount. Usually, the default domain is the first shared domain that is listed by the command cf domains of the cf CLI. If multiple shared domains are listed, validate the URL by issuing a GET request for the listed shared domains. The response for the correct (default) domain is 200.

Example: Request: GET https://deploy-service.cfapps.eu10.hana.ondemand.com/public/ping
Response: 200 OK.

Proxy Type

Internet

Authentication

Basic Authenticaton

User

Specify the name of the platform user that is used for the deployment.

Note: The user used for the destination must be a valid user on Cloud Foundry environment, and it must have the role SpaceDeveloper in the target space. The user used for the destination isn’t subject to any Data Protection and Privacy requirements.

Password

Specify the password of the platform user.

You’ve created the necessary destinations. The next steps are to create transport nodes and routes.

  1. In Cloud Transport Management service, create the source node. The name for the source node must be the same as the value of the additional property SourceSystemId you defined in your TransportManagementService destination.

  2. Then create the target transport node and select the destination you created for your target tenant / subaccount before. (CPI_PROD_CF in screenshot above)

  3. In a last step you define your transport routes in your Cloud Transport Management.

Important

  • You have to configure auto forward mode for the transport nodes in order to make use of Cloud ALM in conjunction with Cloud Transport Management.
  • SAP Cloud ALM currently only supports linear landscapes.

It could look like this:

 

Find more information about the destination and transport routes creation in the Creating HTTP Destinations and Transport Route guide. When you open the guide, choose the blue box called Cloud Transport Management to see the information relevant to you

Wrap-Up

To check whether your scenario works you can do a configuration check for the “Transport Mode: Transport Management Service” in your “Settings” area in Cloud Integration.

Configuration%20Check

Looking forward to receiving feedback. For latest updates and notifications you can follow me by clicking Moritz Gysler.

Assigned Tags

      Be the first to leave a comment
      You must be Logged on to comment or reply to a post.